Coding di Dunia Kerja: Panduan Backend Developer Pemula
Kiat-kiat penting yang perlu diperhatikan saat ngoding backend di dunia kerja—from pattern design sampai debugging.
Kira-kira code-code seperti apa ya yang perlu diperhatikan ketika ngoding di dunia kerja? Khususnya dari sisi backend—frontend nggak jago-jago amat sih xixixi.
Backend = Scalability
Ngomongin soal backend, backend itu cenderung ngomongin soal scalability. How the code works and being scalable? Performa codenya bagus ngga? Query ke databasenya penting ngga? Nah ini perlu banget dipikirin as a backend dev.
Banyak yang berpikir backend it’s all about CRUD. Salah ngga? Ngga, jawabannya bener. Semua yang ada di backend emang CRUD, tapi CRUD-nya CRUD seperti apa? Simple CRUD atau anak cicit CRUD?
Backend adalah gerbang terakhir sebelum menuju database. Kalo ada kesalahan di data, ya pasti backend. Frontend? Ngga bisa disalahin. Even kalo frontend ngga ngirim data yang bener, backend harus bisa cegah itu.
Berpikir Dua Arah
Backend banyak bermain sama otak kiri—full logic. Berpikirnya harus dua arah:
Dari Sisi User
- Kira-kira kalo endpoint API gue buat gini, ada kemungkinan user ngirim gini ngga?
- Kalo ada hacker iseng nembak JSON gini, security-nya gimana? Jebol ngga?
Dari Sisi Developer
- Si frontend bakalan nerima apa aja ya?
- Harus key JSON apa yang gue parsing ke integer atau string?
- Harus sesimple apa frontend ngirim biar dia ngga banyak ngelakuin sesuatu di depan?
Backend yang baik itu yang bisa manjain frontend. Kasarnya frontend tinggal terima bodoh aja—kaga tau ada kalkulasi apa di belakang. Tiba-tiba di frontend jadi aja hasilnya.
Tapi bukannya frontend ngga tau diri ya. Kerjaan mereka kan dari dua sisi juga: scalability platform, refactoring, dan implementasiin tampilan dari UI Design. Itu bukan hal yang mudah loh, apalagi udah berurusan sama UI Design—gue aja paling sebel.
Kiat-Kiat Ngoding Backend
1. Perhatikan Pattern Design
Biasanya senior engineer kamu udah nentuin pattern design yang dipake: MVC, HMVC, MVVM, atau bahkan CQRS. Ikutin aja karena dia tentu punya alasan yang kuat.
Baca baik-baik pattern design yang udah ditulis. Kalian akan ngelakuin reverse engineering—baca kode dari depan ke belakang. Perhatikan:
- Cara nulis senior kamu
- Ada constant variable ngga?
- Variable-nya camel atau snake_case?
Penting: Tanya dan pastikan. Jangan kamu pake snake_case, dia pake camel—kamu yang ngalah sbg junior.
Ketika ngelakuin reverse engineering, pasti kepala kalian meledak sebagai junior. Ya gapapa, coba paksa sepemahaman kamu. Mulai dari yang mudah dulu—contohnya alur Login/Register. Pahamin dulu gimana caranya user bisa login dari code yang ditulis seniormu.
2. Pahami Logic Flow Business
Setelah paham pattern-nya, kamu perlu banget pahamin logic flow business. Sebagai backend, kamu bakalan berhubungan sama logic-logic transaksi yang bisa mempengaruhi keseluruhan code.
Ya meskipun sebagai junior kamu mungkin belum diizinkan nyentuh business logic, tapi at least penting untuk kamu paham flownya. Makanya salah satu modal backend adalah paham debugging.
Gunakan VS Code debugger:
- Kasih breakpoint di bagian yang “masalah”
- Liat gimana program berjalan
- Cek data apa yang dilempar, tipenya apa
Kenapa gitu? Karena kelemahan paling banyak orang adalah malas baca. Banyak backend yang kalo ngoding error malah tebak-tebak kulit manggis errornya dimana—instead of baca errornya yang terpampang jelas + liat flow code.
Padahal error itu serba keliatan, tinggal mau baca apa engga.
3. Mulai Tiru Kode Senior
Abis baca pattern dan flow, silahkan coba buat hal yang sama persis. Boleh dengan kasus beda (bagi yang experienced) atau sama persis bagi yang newbie.
Tujuannya: membiasakan diri untuk ngoding seperti yang seniormu tulis, dan kamu hafal flownya.
Catatan: Kalo saya di tahun 2018 sih karena emang anaknya songong ngga mau nulis 2x hal yang sama. Cuma modal ngintip, terus coding. Tapi bagi kamu yang ngga biasa, ya ada baiknya coba buat Controller baru dan lakukan seperti yang senior kamu lakukan.
Cara saya jangan diikutin, sesat wkwkwk. Saya emang anaknya sok jago, ya maklum, emang songong xixixi.
Perdebatan Backend vs Frontend
Backend enaknya adalah tektokan sama frontend doang. Paling yang didebatin adalah posisi data JSON. Si frontend maunya gini, si backend ngga mau—ini perdebatan yang sering banget terjadi. Terus siapa yang harus ngalah?
Tentu aja backend. Backend harus rela muter otak lagi biar frontend nerimanya enak. Tapi ada beberapa case yang ngolahnya ya emang harus di frontend—contohnya Web Socket.
Dengan bantuan backend, frontend jadi bisa serba lebih mudah, efektif, enak. Semakin backend dianggap jago adalah backend yang bisa sinergi dan tau frontend bakalan ngirim apa, kaya gimana, apa yang harus diterima.
Makanya penting kalo mau jadi backend, harus belajar frontend. Kenapa? Biar lo tau rasanya dikirimin data asal-asalan, jadi lo akan belajar lebih baik dan sopan lagi untuk ngirimin data dalam bentuk JSON-nya.
Kesimpulan
Backend itu nggak cuma soal CRUD. Ini soal:
- Scalability — Code yang bisa berkembang
- Security — Melindungi data dari input jahat
- Collaboration — Bekerja sama dengan frontend
- Debugging — Memahami flow dan memperbaiki error
Jadi backend developer yang baik itu yang nggak cuma jago ngoding, tapi juga paham gimana caranya membuat kerjaan orang lain (frontend) jadi lebih mudah.
Oh iya, bentar ya guys gue laper makan takoyaki dulu yah soalnya mo ngoding jg. 🍡