27
resep menjadi Rockstar Developer Rendra Toro Intel Innovator Software Developer BlackBerry Elite Developer Application Development Manger OLX Indonesia [email protected] [email protected] 1

Resep jadi rockstar developer

Embed Size (px)

Citation preview

Page 1: Resep jadi rockstar developer

resep menjadi Rockstar DeveloperRendra Toro Intel Innovator Software DeveloperBlackBerry Elite DeveloperApplication Development Manger OLX Indonesia

[email protected]@olx.com

1

Page 2: Resep jadi rockstar developer

2

Pendidikan Formal

• SMA 5 Bogor, jurusan IPA, lulus 1997

• Politeknik Universitas Indonesia Jurusan Teknik Mesin, konsentrasi Mechatronic

lulus 2002

• STMIK SWADHARMA Jakarta, Jurusan Teknik Informatika, lulus 2011

Page 3: Resep jadi rockstar developer

3

Pendidikan Non Formal

• Mulai Belajar Coding kelas 5 SD menggunakan QBasic

• Training FESTO DIDACTIC Mechatronic 1999

• Training BlackBerry Enterprise Server Essential and Comprehensive 2010

Page 4: Resep jadi rockstar developer

4

Definisi RockStar menurut Wikipedia

• Seorang anggota dari band rock, atau artis solo di genre, terutama satu

orang dengan status selebriti.

• (Kiasan, kadang-kadang digunakan sebagai atributif) Seseorang yang

terkenal atau dihormati di bidang prestasinya.

Page 5: Resep jadi rockstar developer

5

RockStar Developer

Seseorang yang terkenal dan di hormati atas keahliannya di bidang

pembuatan aplikasi.

Page 6: Resep jadi rockstar developer

6

Coder VS Developer

! Semua orang bisa coding.! Sebagian dari kita bahkan brilliant coder.! Sebagian dari kita itu GEEKS.! Sebagian dari kita mampu memecahkan masalah komputer yang sulit.! Tapi tidak semua dari kita adalah developers.

Coders code Developers Deliver

Page 7: Resep jadi rockstar developer

7

Delivery Matters! Berapa orang dari kita yang membuat project tapi tidak menyelesaikannya ?! Berapa pula yang mengerjakan project tapi tak pernah di deploy atau di

publish ?! Berapa pula yang project nya sudah di deploy atau publish namun tak

pernah di gunakan oleh user atau orang yang membutuhkannya ?

You will never learn to deliver until you join the industryBUT

You may not learn to deliver even after joining

Page 8: Resep jadi rockstar developer

8

A Software is delivered when it! Works under worst case scenario! Provides user a comforting User eXperience (Ux)! Solves the actual business problem! Can handle scalability! Has proper and detailed documentation! Can be iteratively improved! Can be changed with less cost! Can be modified and maintained by a person who did not originally

developed it

Page 9: Resep jadi rockstar developer

But may not look like this

A RockStar Developer deliver with Style

Page 10: Resep jadi rockstar developer

HOW !!

Page 11: Resep jadi rockstar developer

11

RockStar Triangle

Analytical ability

Knowledge

Best practice

Page 12: Resep jadi rockstar developer

12

Train your brain! Learn algorithms as many as you can. Implement a

few.! Can you run a multiple recursion in your brain?! Sit and think before writing code! Read complex stuff, make an habit to digest things

that are hard to swallow.

Page 13: Resep jadi rockstar developer

13

OOP and Design Pattern! Industry runs on OOP.! Learn to think in objects not in methods! SOLID principal, get a strong hold on it. SOLID is Single

responsibility, Open-closed, Liskov substitution, Interface segregation and Dependency inversion.

! Read GoF (God of Four) “Design Patterns: Elements of Reusable Object-Oriented Software"(Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides). Build a pattern vocabulary.

Page 14: Resep jadi rockstar developer

14

Refactoring and Code Smell! Love coding, not the code. Code rots. Code smells.! Refactor codes to get rid of code smell! Refactoring is a technique, it’s a skill. You have to

learn it by practicing it. ! Its vocabulary, learn to talk in the language of patterns

and refactoring.

Page 15: Resep jadi rockstar developer

15

Maintainable Code! Use coding standard. Use IDE plug-in that enforce

standard. ! Use understandable descriptive naming.! Write less comment, explain “why” not “what”.! Follow one of style code for your platform.

Page 16: Resep jadi rockstar developer

16

Source Control! Never, ever work without a source control. Not even

when you are working alone. ! Learn to merge.! Use a distributed version control such as Git or

Mercurial.

Page 17: Resep jadi rockstar developer

17

Unit Testing and Continuous Integration! This is a decisive line, Rockstars writes tests. ! Use a CI system, let the compiler do the hard work

every time you commit.

Page 18: Resep jadi rockstar developer

18

Pick a side and dig deep! Choose a technology platform, become an expert on

that. ! Know very deeply how that platform works, how it was

built, how it works internally.! If you work on Tizen, go deep and proof yourself as a

master on Tizen

Page 19: Resep jadi rockstar developer

19

Learn SDLC! Practice Agile methodology. ! Use SCRUM or KANBAN.

Page 20: Resep jadi rockstar developer

20

User Experience! Accept the fact that you cannot do the UI yourself.! Learn about Ux and usability ! Read About Face 3: The Essentials of Interaction

Design

Page 21: Resep jadi rockstar developer

21

Read Daily and Adopt early! At least follow 5 blogs! Know all the famous people in your platform, follow

them, read them.! Adopt any new technology in your platform as soon as

it is released as alpha or preview.

Page 22: Resep jadi rockstar developer

22

Kenyataan di lapangan! Belajar menjadi RockStar tidak bisa dirumah saja! Bekerja pada sebuah perusahaan yang ada RockStar

nya! Banyak RockStar yang susah diajak kopi darat

Page 23: Resep jadi rockstar developer

23

It’s a mine field out there! MOST of the Companies does not give a damn about your

! Career! Knowledge! Personal Growth! Social Life! Family

They just want you to get their job done.Period.

Page 24: Resep jadi rockstar developer

24

You are on your own! You have to keep learning

! New technology! New practices! New standards! New language

Page 25: Resep jadi rockstar developer

25

7 questions to ask before you join a company (other than how much salary they pay you)

! Do you use source control? Which one? ! Do you use any methods such as Scrum to develop?! Do you have a CI system?! Do you have senior developers who will work as my mentor?! Do I work alone or in a team?! Do you have Quality Assurance team?! Do I have to work over hours? In weekends?

Page 26: Resep jadi rockstar developer

26

Freelancing damage your career! Do not decide to freelance only. Becoming a

Rockstar developer is all about working with other Rockstars .

! Freelancing does not have commitments, does not allow you to execute best practices.

Page 27: Resep jadi rockstar developer

27