mx667Avatar border
TS
mx667
7 Hal Gak Enak Saat Jadi Programmer
Saya udah pernah cerita mengenai enaknya jadi programmer itu seperti apa, cuma saya masih belum ceritain banyak mengenai gak enaknya jadi programmer atau bekerja sebagai programmer. Harapannya dengan adanya konten ini teman - teman bisa dapat gambaran juga mengenai hal - hal apasih yang bikin ngoding itu gak enak, dan jadi programmer itu gak enak. Jadi saya gak mau cerita mengenai enak - enaknya saja, tapi saya akan coba apa adanya mengenai hal - hal yang gak enaknya juga yah.


Buku dan laptop - unsplash.com




1. Malas ngerjain fitur yang rumit

Mungkin ini yang paling sering dialami yah. Sebagai programmer saya pengennya ngerjain hal - hal yang gampang - gampang saja gitu, walaupun sebenarnya profesi sebagai programmer ini termasuk profesi yang paling sering ngulikdan belajar hal - hal baru. Kalau dilihat dari sisi positif memang ini bikin kita ada tantangan baru atau belajar hal baru, tapi jujur saja kadang saya merasa malas kalau sebuah fitur itu ribet dan rumit.



2. Error yang gak nemu - nemu solusinya

Error harusnya jadi hal yang biasa bagi seorang programmer. Setiap hari kerjaan kita ya menghadapi error. Masalahnya hal yang bikin sedih itu kadang kalau pas deployment atau ada bug yang gak nemu - nemu solusinya, yang bikin kita terpaksa lembur untuk menyelesaikannya itu yang melelahkan. Walau lembur ini sejauh ini masih terbilang jarang terjadi sih di pengalaman saya.

Kalau pak Sandhika Galih sering bilang bahwa: "Error itu biasanya bukan cuma kita yang ngalamin, tapi udah ada orang lain yang ngalamin."

Masalahnya kadang error yang saya hadapi itu seolah - olah belum pernah ada sebelumnya. Di Stackoverflow gak nemu, atau kadang di Stackoverflow ada, tapi gak ada yang jawab. Mungkin juga issue-nya baru dibikin di Github tapi belum ada solusi. Intinya kalau kita menemui error yang belum pernah ada sebelumnya dan kita bingung cara mengatasinya, itu yang jadi PR.



3. Lembur

Lembur atau kerja di hari libur. Seperti yang ada di poin nomor 2 tadi saya sudah jelaskan, sejauh ini sih lembur gak terlalu sering di pengalaman kerja saya. Semoga kedepannya juga gak sering dan gak sampai tengah malam.

Saya pernah lembur di hari Sabtu dan Minggu dan itu bikin suntuk sih pas hari Senin masuk kerja, rasanya waktu hari Senin itu malas banget untuk kerja. Kalau ada duit lembur itu mungkin bisa meringankan beban pikiran yah, yang sedih kalau ada teman atau kamu mungkin yang udah lembur tapi gak ada duit lembur. Biasanya lembur itu terjadi kalau ada masalah urgent / dadakan. Seperti masalah pada deployment, aplikasi yang udah masuk ke production, mau presentasi ke client ada masalah yang tiba - tiba muncul dan sejenis itu.



4. Gaji Mundur

Gaji yang biasanya dibayar tanggal sekian, akhir bulan, atau awal bulan, eh tiba - tiba mundur atau gak sesuai biasanya. Masalah gaji dibayar tanggal berapa ini tergantung perjanjian tempat kerja masing - masing sepertinya. Nah pastinya ini bikin sedih dan gelisah ya, karena gak nentu gitu. Padahal mungkin sebagian dari kita perlu gaji itu untuk berbagai macam keperluan. Saya gak tahu di tempat kerja yang lain apakah kadang juga bisa telat atau enggak, tapi beberapa kali saya sempat mengalaminya.

Gaji yang mundur ini kalau dari komunikasi atasan ada penyebabnya. Misalnya client yang telat bayar, client yang gak tahu kenapa gak bayar - bayar, ditagih susah, dan sebagainya. Makanya kalau udah kaya gini saya harus jaga - jaga ada uang tabungan, gaji biasanya gak langsung saya habiskan untuk kebutuhan, investasi dan macam - macam. Saya sebisanya ada nabung dana darurat juga. Dana darurat saya rasa gak cuma untuk mengatasi hal semacam ini tapi juga untuk jaga - jaga kalau misalkan suatu saat kita kena PHK, harus ganti pekerjaan, bencana alam, maupun bencana yang lainnya.

Saya gak tahu buat teman - teman yang kerja freelance, apakah bisa mundur atau enggak bayarannya. Setahu saya freelance juga gak menentu bayarannya dan dapetin client-nya juga gak menentu. Tapi saya yang bukan freelance, yang kerja di kantor pernah beberapa kali mengalami gaji mundur ini.



5. Pakai API third-party yang susah

Kadang sebagai programmer kita mengerjakan project yang butuh bantuan dari aplikasi lain atau API dari pihak ketiga. Kadang ini bisa jadi tantangan kalau dokumentasi dari API third-party ini membingungkan bahkan gak lengkap.

Saya pernah menghadapi ini, ada kebutuhan aplikasi yang mengharuskan pakai API atau library third-party seperti ini, tapi permintaan atasan dan client cukup rumit yang gak ada di API-nya. Ini yang jadi tantangan, kita harus cari cara untuk ngakalin atau oprek - oprek supaya request client bisa terpenuhi atau setidaknya kita negosiasi dengan atasan atau client supaya request-nya bisa dikondisikan lagi, diubah, atau semacamnya.



6. Rekan kerja yang kolot

Pernahkah kamu ketemu rekan kerja yang keras kepala yang susah untuk diajak kerjasama? Ini pernah dialami oleh teman kerja saya.

Saya itu ada satu orang sahabat yang jadi teman kerja saya, nah dia itu pernah kerja sama orang dari kantor yang sama juga. Orangnya itu kolot banget. Sebut saja orang kolot ini namanya Mawar, tapi dia laki - laki. Sedangkan sahabat saya, kita sebut saja Melati, tapi dia juga laki - laki. Jadinya Mawar dan Melati.

Melati ini sejak saya kenal dari awal orangnya selalu sabar, gak pernah marah, hari - harinya hanya diisi dengan ketawa - tawa dan bahagia. Berbeda dengan saya yang masih normal lah, kadang bisa sedih, senang, dan marah. Tapi kadang saya juga ada momen - momen gak normalnya ketika marah - marah sendiri gak jelas tanpa penyebab (biasanya karena mood, hehe).

Nah Melati yang terkenal sabar ini, buat saya terkejut karena dia bisa kesal juga sampai ke ubun - ubun gara - gara seseorang, dan orang itu adalah Mawar. Melati merasa kesal dengan Mawar karena si Mawar ini keras kepala, hobinya ngeluh, gak ngasih solusi, suka memotong pembicaraan, pokoknya begitu. Melati merasa sedih dan kesal karena harus bekerja dengan orang seperti itu. Kebetulan banyak masalah yang terjadi ketika project itu dikerjakan, dan dengan adanya kehadiran Mawar, Melati jadi semakin sulit untuk bekerja.

Mawar sering memaksa Melati mengerjakan sesuatu. Pokoknya kerjanya harus sesuai yang diinginkan Mawar. Waktu itu si Melati ini bikin UI untuk website yang mau didevelop di Wordpress, padahal Melati gak ada pengalaman di Wordpress, otomatis Melati kesusahan karena dia diminta suruh bikin class - class yang seperti class di Wordpress. Si Mawar ini bukannya ngasih solusi malah ngeluh mulu kerjaannya.

Pada akhirnya si Mawar ini cabut dari project secara semena - mena. Ya memang dari awal orangnya sudah seenaknya sendiri, jadi mungkin itu yang bikin dia keluar dari project seenaknya. Project jadi kacau, anggota tim lain yang harus menanggung akibatnya. Tapi lucunya si Melati senang karena gak harus berurusan dengan si Mawar lagi.

Itu dia salah satu pengalaman gak enak kerja sama orang yang kolot.



7. Ngelanjutin project orang

Nah ini yang paling ultimate mungkin yah, bisa dibilang yang paling gak enak gitulah. Ada beberapa faktor kenapa ngelanjutin project orang itu gak enak, saya akan coba jelaskan.

a. Versi framework yang digunakan udah terlalu lama. Ini bakalan repot kalau yang kita kenal ternyata framework atau teknologi yang versi terbaru. Disuruh memperbaiki atau melanjutkan project lama yang udah dibuat bertahun - tahun lalu pernah saya rasakan. Apalagi pada saat itu pegang React Native. Untuk kamu yang gak tahu, versi Android itu kan berubah - ubah, seiring berjalannya waktu, versi akan naik juga. Sedangkan kalau kita pakai React Native versi lama, pasti bakalan kesulitan untuk build atau mengikuti versi Android terkini.

Banyak library yang deprecated karena fungsi - fungsi native dari Android versi lama udah gak bisa dipakai lagi.

Makanya untuk pemrograman mobile hybrid, tercipta solusi baru yaitu Flutter. Solusi kedua ya pakai pemrograman mobile native dengan Android Studio dan Xcode (untuk develop aplikasi iOS). Untuk pemrograman mobile native tentunya bakalan memakan biaya development yang lebih banyak karena kemungkinan harus hire 2 atau lebih developer untuk mengerjakan 2 platform yang berbeda.

b. Library yang digunakan adalah library asing yang kita gak kenal, mungkin dokumentasinya gak jelas, mungkin juga kita gak suka dengan library tertentu.

c. Codingan yang asing dan gak dikenal. Ini sudah pasti dialami oleh orang yang ngelanjutin project orang lain. Pengetahuan orang berbeda - beda mengenai bahasa pemrograman tertentu, framework, atau teknologi tertentu. Makanya codingan orang juga berbeda - beda. Kita bebas ngoding dengan cara apapun untuk menyelesaikan sebuah fitur. Karena codingan-nya asing, tentu kita harus pelajari alurnya, mempelajari codingan orang lain.

d. Gaya ngoding orang berbeda. Misalnya ES Lint dan Prettier pada JavaScript. Selama saya ngelanjutin project orang, sebagai programmer JavaScript, saya selalu melihat orang dengan settingan ES Lint yang berbeda - beda. Bahkan ada yang gak pakai ES Lint dan Prettier. Mungkin karena dianggap berat atau gak suka aja dengan ES Lint dan Prettier. Mungkin punya alasan tersendiri. Atau mungkin gak ngerti kegunaan dari ES Lint dan Prettier.

Buat kamu yang gak tahu, ES Lint dan Prettier singkatnya adalah extension di VSCODE (Visual Studio Code) untuk merapikan code secara otomatis, khususnya untuk programmer JavaScript. Kalau bahasa yang lain bisa atau enggaknya, saya belum pernah cari tahu.

Mungkin buat teman - teman yang memutuskan untuk gak pakai ES Lint dan Prettier, bisa dibagikan alasannya. Mungkin buat kamu yang punya settingan ES Lint dan Prettier yang berbeda bisa dibagikan juga alasannya.

Terus kalau misalnya di Vue JS itu ada yang namanya composition API. Gak semua developer Vue ngerti dan terbiasa menggunakan composition API. Makanya kalau ada tim yang pakai composition API pasti bakalan berbeda gaya ngodingnya dengan yang gak biasa pakai composition API.

e. Ketemu sistem kerja tim lain yang gak enak. Saya pernah ngerjain project yang di dalamnya berisi berbagai tim. Jadi ada beberapa tim di project itu. Sebagian tim udah keluar atau gak di project itu lagi. Posisinya saat ini ngelanjutin project yang udah jalan lama. Gak enaknya itu, kita disuruh ngerjain beberapa pekerjaan yang awalnya sedikit lama - lama jadi banyak dan menggunung. Kalau kata atasan, ini bisa terjadi kalau dari awal tugas atau tasklist gak di-breakdown atau dicatat sampai akar terkecil.

Maksudnya dicatat sampai akar terkecil itu dibagi - bagi sampai ke poin yang paling kecil. Misalnya ada tugas bikin Management Post. Tasklist Management Post ini jangan ditulis gitu aja. Tapi diterangkan apa aja isinya. Create, read list, read detail, delete, update, misalnya. Dengan begini kita bisa tentukan timeline atau waktu pengerjaan supaya waktunya ini gak molor dan lebih jelas perkiraannya.

Kalau kelamaan kerjanya kan tim kita yang dicap jelek, padahal emang tasklist-nya aja yang semakin menggunung atau membludak.

Nah selanjutnya yang gak enaknya dari poin ini adalah, tadi udah saya jelaskan mengenai beberapa tim yang out dan gak pegang project ini lagi. Karena sebagian tim udah out, otomatis codingan tim lama yang mau diubah atau dimodifikasi jadi sulit. Orangnya udah gak ada mau tanya ke siapa? Kalau menurut saya sih, satu tim ngerjain project dari awal sampai akhir udah. Cuma mungkin ini bakalan sulit diterapkan oleh perusahaan besar, yang product-nya sudah masuk ke production.

Kalau sudah begini barangkali bisa dibuatkan dokumentasinya dari code yang ada. Mungkin kamu punya solusi lain supaya code yang udah ada bisa di-maintain atau dirawat sekalipun yang nulis udah out.



Penutup

Itu dia mengenai gak enaknya jadi programmer atau hal - hal gak enak yang saya alami selama jadi programmer. Mungkin teman - teman yang lain punya pendapat lain, solusi dari masalah - masalah ini, sehingga bisa dibagikan untuk jadi manfaat buat yang lain juga.



Terimakasih sudah mau membaca. Jangan sungkan untuk bertanya dan ngobrol dengan saya lewat PM Kaskus atau sosmed lain seperti Instagram saya:
https://www.instagram.com/anggakswr

Baca juga:

Diubah oleh mx667 28-10-2021 09:37
gta007Avatar border
afton12345Avatar border
rieedAvatar border
rieed dan 3 lainnya memberi reputasi
4
2.6K
17
GuestAvatar border
Guest
Tulis komentar menarik atau mention replykgpt untuk ngobrol seru
Urutan
Terbaru
Terlama
GuestAvatar border
Guest
Tulis komentar menarik atau mention replykgpt untuk ngobrol seru
Komunitas Pilihan