Dilemma “Mau jadi programmer apa?”

Firmansyah Yanuar
4 min readMar 25, 2021

--

Sudah empat tahun aku jadi programmer dan inilah pengalamanku menentukan “Mau jadi programmer apa?”. Kenapa pertanyaan ini penting untuk dijawab, karena sejauh ini yang aku tahu perusahaan lebih cenderung cari orang yang jago di satu bidang daripada orang yang bisa banyak bidang tapi gak ada yang jago. Inilah perjalanan ku menemukan jalan ninja programmer ku.

Web Development dengan Laravel

Laravel Website (laravel.com)

Ini adalah pengalaman serius aku di real project. Pengalaman pertama itu aku buat sistem informasi, isinya cuman bisa liat profil orang lain dengan sistem autentikasi. Aku buat pake Laravel karena awalnya aku kira web cuman bisa dibuat pake bahasa PHP, yang mana framework paling populernya adalah Laravel. Tapi ternyata enggak, ternyata dalam bahasa apapun kita bisa buat web.

Laravel ini sangat banyak peluang kerjanya di Indonesia, tapi lebih jarang digunain di luar negeri karena orang barat benci sama bahasa PHP. Aku sendiri melihat Laravel adalah framework yang bagus karena kalo mau bikin web bahasa PHP adalah yang termudah. Cuman kalo melihat dari skalabilitas buat project kompleks aku kurang menyarankan.

Tapi bentar, pandangan orang terkait kompleksitas suatu project itu beda-beda, ada yg bilang sistem informasi dengan autentikasi itu udah kompleks, ada yang bilang itu simpel. Nah yang dimaksud kompleks menurut aku tadi adalah misalnya mau bikin duplikasi dari Instagram, Google Docs, atau Whatsapp (web). Kalo cuman web portofolio atau standar sistem informasi yang gak ribet, Laravel ini sangat rekomendasi kok.

Backend Development dengan Java

Spring Framework Website (spring.io)

Setelah itu di pengalaman internship pertama, aku menjadi Backend Developer dengan bahasa Java. Selama dua bulan aku ngoding dengan bahasa Java, aku cukup suka dengan bahasa Java yang strict sehingga membuat kodingan kita rapih. Ketika internship ini pun aku belajar membuat website dengan bahasa Java yang mana menggunakan framework Vaadin.

Impresiku menggunakan framework Vaadin adalah ribet! Aku sangat stress ketika diharuskan membuat web dengan bahasa Java. Pertanyaan terbesar di benakku adalah “Kenapa harus pake bahasa Java sih?”. Mentor-ku sewaktu internship menjawab karena di perusahaan mayoritas menggunakan bahasa Java sehingga kalo diharuskan pake bahasa lain, programmernya harus belajar lagi dan akhirnya perlu waktu lagi. Salah satu poin yang bagus aku dapatkan ketika internship.

Mobile Apps (Hybrid) Development dengan React Native

React Native Website (reactnative.dev)

Kalo ditanya sekarang paling jago dimana, ini lah jawabannya. Dari awal aku sangat penasaran dengan teknologi React ini di web development. Cuman sayang, pada saat penasarannya banget aku dikasih project mobile. Jadi untuk mempersingkat waktu untuk kembali ke web development dengan React aku menggunakan React Native karena konsep nya sama.

Ketika menggunakan React Native aku sangat enjoy karena aku melihat komunitasnya yang rame dan banyak yang bisa di explore. Hasilnya juga bagus gak jauh beda dengan Native Java Android. Satu hal yang aku khawatirin adalah Flutter. Aku merasa sepertinya Flutter punya sebuah keunggulan yang dipunyai dibandingkan React Native yaitu performa yang katanya lebih kenceng. Cuman setelah beberapa research kesimpulan aku adalah gimana yang ngoding. Gausah mengadu-dombakan framework, kalo ngodingnya jelek ya jelek aplikasinya.

Web Development dengan React

React Website (reactjs.org)

Setelah lama tidak bertemu dengan project web development akhirnya aku bisa menggunakan React pada kasus real-project. Walaupun sebenernya project nya itu udah ada cuman aku meminta izin untuk membuat ulang websitenya pake React karena aku bener-bener pengen belajar React lagi.

Dibandingkan dengan PHP website dengan Javascript itu lebih scalable. Contohnya 5 Big Tech Company FAANG (Facebook, Amazon, Apple, Netflix Google) kecuali Apple pake Javascript buat ngembangin webnya. Belom lagi ngebahas fitur-fitur yang disediain oleh React. Hal simpel yang ga bisa dilakuin oleh PHP adalah gausah reload buat ganti page.

Kesimpulan

Secara pribadi aku memilih React/React Native sebagai profesiku. Kenapa React/React Native? Bukan sih, tapi Javascript. Javascript merupakan bahasa “PALUGADA” (Apa Lu Mau, Gua Ada). Mau web? Pilih React, Vue, Angular. Mau mobile? Pilih React Native/Ionic. Mau backend? NodeJS Express bisa. Mau aplikasi desktop? Electron. Komplit banget sumpah Javascript. Aku yang orangnya suka pengen buat ini itu Javascript bisa banget buat kebutuhanku. Kebetulan aku sangat tertarik di dunia frontend baik web atau pun mobile makanya kedua senjata itu yang aku andalkan.

Balik lagi ke pernyatan “Gausah mengadu-dombakan framework, kalo ngodingnya jelek ya jelek aplikasinya”. Semua framework punya kelebihan dan kekurangannya masing-masing. Gak cuman performa dari frameworknya yang dipertimbangin tapi bisa jadi faktor eksternal seperti background developernya, waktu pengerjaan, kompleksitas project perlu jadi pertimbangkan.

Tambahan :
Pengalaman yang menyakitkan baru tau React ketika semester 2 (tahun 2018) dan baru bisa nyobain ketika semester 4 (tahun 2019). Banyak sekali pertanyaan yang aku ingin tanyakan tapi gak tau nanya siapa. My purpose to write this is make sure you have not felt like me before. If you need a mentor or just wanna ask some questions kindly contact me at fyfirman.tech.

--

--

Firmansyah Yanuar

katanya sih developer, tapi suka greget sama desain dan pengen jualan...