Sabtu, 19 Mac 2022

what to expect when u become a web developer

assalamualaikum


setiap pekerjaan mesti ada susah payah dia. usahkan engineering, menjadi janitor juga susah kerana kena layan kerenah orang2 yang suka tampal pampers dekat dinding dinding toilet. tapi disebabkan aku bekerja dalam bidang information technology, takkanlah aku nak kupas pasal kesusahan berkerja sebagai public defender walaupun aku rasa macam dah hebat sangat tahu terms2 lawyer lepas tengok better call saul kekeke. so aku kena la buat entry psl kesusahan kerja sebagai programmer. kalau kau nak tahu kesusahan jadi cikgu, kau search la blog cikgu hahaha. sungguh tak membantu intro entry kali ini.


okay so aku nak kupas sikit la apa yang aku selalu hadapi bersama teman teman aku sepanjang bekerja sebagai programmer ni. aku taknak classifykan semua ni sebagai kesusahan, lebih kepada apa yang korang kena expect kalau ada antara korang yang berminat nak jadi programmer, tak kisalah web ke mobile developer mahupun software atau application developer. apa apa je bila coding okay. kenapa? sebab expectations aku masa aku kat uni lain dengan reality bila berkerja dalam industry. maka jom...?


ada banyak releases dan deadlines





kalau anda pernah fikir yang buat website ni macam sekali buat terus siap, anda silap. kerja programming ni selalunya bukan one-off. even simple website pun kena sentiasa dimaintainkan supaya ia selari dengan arus zaman.


contohnya la simple website apa ek aku nak kasi contoh? contoh macam website artis artis yang just show info je kan, paling2 koman pun feature CTA (call-to-action) dia untuk beli ticket concert or show dia kan, pada tahun 2000s website hanya perlu nampak cantik dekat screen sizes desktop atau laptop je. tapi sekarang, orang surf website guna phone. adakah anda fikir website itu akan mengecil sendiri apabila tiba era smartphone? tidak, programmers yang kena code ia supaya menjadi mobile friendly. mobile friendly bukan setakat dia muat kat screen phone je, ia termasuk korang tak perlu scroll horizontally untuk view semua element page tu as well as korang tak perlu zoom untuk baca information kat website tu.


itu baru static sites. kalau web application macam website nak register vaccine astrazeneca haritu atau apa apa e-commerce web apps pula, imagine akan ada berapa kali reiteration untuk tambah feature baru, improve performance kasi laju sikit. upgrade sana upgrade sini. selagi sesuatu website atau web application itu tak decommissioned, selagi itulah programmers akan keep working on it and supporting it.



lifestyle menjadi sedentary



kerja programming ni banyak duduk atas kerusi menghadap multiple screens, sama macam most kerja office lain. dan disebabkan ini, lifestyle kita akan mula jadi sedentary, less and lesser movements or exercise per week. sebolehnya kita nak ada masa untuk lead a healthy lifestyle by being active. dah la masa belajar pun dah sedentary sebab sejenis berat bontot taknak join sports club, pastu kerja another 20 years pun nak duduk atas kerusi je juga. bila la nak kurus sihat?



banyak strain mata dan kacau posture badan





berkait dengan reality kat atas, dah nama pun programmer, kami tak ada code kat atas kertas kajang. for our 9-5 job, we mostly spend staring at laptop screens. kadang kadang membongkok sebab tengah nak baca code yang semantically atau logically wrong. sometimes squinting mata untuk tengok kenapa element A dengan element B ni tak sama tinggi walaupun code size sama. tak tahulah apa kesan jangka panjangnya. lawyers pun mungkin sama banyak membongkok untuk baca dan squinting mata untuk hadam huruf kecil kecil dalam documents setebal kamus dewan! last last duit habis beli glasses je sebab power naik every 2 months lol ya tohan jauhkanlah!



kemana duit? ke extra monitor la ia





mostly mata programmers ni akan bukan melilau dekat lines of lines of codes saja, mata dia nak ke screen untuk tengok UI la nak tengok documentation la dan nak tengok stackoverflow la kekeke. pastu nak masuk meeting zoom pulak! maka sebab itu la korang akan selalu nampak orang kerja programmer ni ada multiple screens. sometimes second screen tu sebesar tv la, sometimes vertical la, adjustable la dan sebagainya. so kalau kena ada extra monitor, mesti la meja kena besar atau adjustable dan apa apa jelah. banyak kan investment duit kat situ!



coding conventions





seperti kerja kerja lain juga, nak coding ni bukan main taram je walaupun kita dah master certain certain language atau framework tu. kita kerja kan collaborative, in team, so usually kita follow coding conventions supaya bila kita handover kerja kita ke next person, mereka boleh faham code kita dengan senang. 


version control




bersambung dengan issue yang kerja coding ni most of the time adalah collaborative, pernah terfikir tak macam mana 3 orang programmers coding dekat satu project yang sama? takkan la tunggu si A siap dulu baru pass ke si B dan si C. kalau tak tunggu nanti tak latest la pulak code tu. kalau tunggu alamatnya 40 tahun pun tak siap project tu. no way!

haaa sebab itulah kalau selalu dengar programmers ni akan sebut sebut psl git. git inilah yang bolehkan 1 project dicode oleh multiple programmers. konsepnya kalau A, B dan C coding dalam waktu yang sama, mereka boleh upload semua latest code tu dan merge menggunakan git untuk satukan semua codes itu. so sesiapa berminat nak jadi programmer, kena lah ambil tahu tentang git. walaupun kerja seorang, git juga boleh track banyak version project kita so andai kata la version 2 ni banyak error, senang nak fallback ke version 1.


task list datang daripada user, product owner dan designer





pernah wonder tak macam mana programmers dapat task list?

boss: saya nak website macam grab tapi warna pink.
programmer: onz
dan terus mula coding.


wah simple kan. sebenarnya tak macam ni. sama macam kerja kerja lain, selalunya bila user minta apa apa product, idea tu kita akan pecah pecahkan into small chunks. maca mana rupa dia, apa platform nak guna, apa feature yang ada, button apa nak letak dekat mana, siapa target user, bila target live date dan sebagainya. ha kau, pernah terfikir tak yang position of a button pun penting? bukan cantik semata mata. kalau letak button kat belah atas kiri nanti korang complain pulak cakap app dina buat ni susah nak tekan! kena break down dari sebesar besar ke sekecil kecil request client tu.


selalunya dia akan bermula dengan user requirement akan request apa yang mereka nak dalam product diorang. kemudian product owner kita akan brainstorm idea detail tentang idea tu. kemudian kita ada designer yang akan create wireframe, prototype dan design system. lepas itu barulah developers akan tengok and discuss and negotiate mana yang kita boleh buat atau tak boleh buat ikut timeline kita. haa so kerja programmer ni bukanlah kerja sorang sorang. 


technological advancement





rasanya semua orang at this point kena mengakui yang technology ni progress dengan sangat laju. so kerja sebagai programmer ni kena sentiasa keep up dengan the latest technology. contohnya, suatu ketika dulu nak buat website ni guna HTML, CSS dan jQuery je. tiba tiba je orang dah pakai ASP.Net, lepas tu orang dah mula buat website guna PHP. kemudian sekarang technology stack yang famous menggunakan Node.js. pastu front-end pun bukan setakat HTML and CSS kat notepad je tapi dah guna Angular. mcm table kat atas tu la. bukan saja saja nak tukar technology stack tapi untuk adapt dengan current development trends.


vision yang luarbiasa




haa rasanya ini semua orang tak terlepas. banyak orang rasa mereka ada million dollar idea, cari software house dan pitch that idea.


sometimes tu idea buat kami jadi pening kepala. akibat tengok banyak sangat black mirror, tiba tiba nak buat delivery app tapi rider boleh update status delivery pakai voice recognition la, pakai niat la, pakai kelip kelip mata la. vision tu tinggi sangat!


ada sesetengah programmer atau company memang ada capabilities untuk buat benda benda high tech ni, tapi adakah client bagi budget yang masuk akal? atau nak minta app hebat hebat ni dengan budget rm10k je? adakah dia bagi timeline yang logical atau kalau boleh nak siap bulan depan je? ha gitu kami nak kena melayannya.



tapi apa apa pun, satu benda je yang rasanya most programmer atau developer ni akan bersatu padu bersetuju ialah...


tak tahu nak shutdown laptop ke tak


aku selalu menghadapi masalah ni. dah code code code sedap sedap 8 jam, tiba tiba pukul 12am tu mengantuk sangat dah takleh pike dah nak selesaikan macam mana bug ni. dah ngantuk sangat tahap menguap 3 saat sekali. tapi kalau shutdown kan nanti nak kena bookmark satu satu la atau cari balik 150 tabs stackoverflow kat google chrome ni. pastu nak kena kill running services pulak. pastu nanti nak kena reload pulak project. aduh pening a!


last last aku shutdown laptop seminggu sekali je, hari jumaat petang kekeke.



so aku harap entry ni dapat shine a light sikit pada sesiapa yang curious dengan profession web developer ke, programmer ke ni. tapi semua ini adalah dari pandangan aku saja, ada masalah yang lebih serious atau kurang serious kat mata orang lain. tapi entry ni tak ada nak claim yang kerja aku je paling susah ke apa ke, sekadar sharing.




meet the team :D



macam mana pula dengan profession korang? 😀



Thank you for reading this entry :D


stock photos from unsplash and pexels

Tiada ulasan:

Catat Ulasan