Caraku Memahami & Menentukan Bagian Kode yang Harus Diubah

Kalau kerja freelance, sering banget aku dapat project yang udah jadi. Kadang kodenya rapi, kadang juga bikin garuk-garuk kepala. Nah, tiap kali dapat kerjaan kayak gini, aku punya cara sendiri biar gak bingung harus mulai dari mana.
Pertama yang biasa aku lakuin ya ngejalanin project-nya dulu. Kalau aplikasinya bisa langsung jalan di lokal tuh rasanya lega banget. Tapi ya gak jarang juga mesti ada drama dulu, entah gara-gara versi beda, file .env
gak ada, atau konfigurasi yang aneh-aneh. Dari situ biasanya aku udah bisa nebak fitur mana yang dimaksud klien dan bagian kode mana yang kira-kira bakal aku otak-atik.
Kalau gagal jalan? Biasanya sih masalahnya ada di dependency atau config. Nah kalau udah muncul error, aku beresin satu-satu aja dulu sampe ilang. Tapi kalau errornya kecil dan gak ngaruh kayak ada JS yang gagal load tapi webnya tetep jalan biasanya aku tinggal aja sih hehe, yang penting fungsi utamanya masih aman.
Setelah itu biasanya aku langsung lihat struktur project. Misalnya ada folder controllers
, models
, atau views
. Dari situ udah mulai kebayang alurnya: request masuk → diproses → ditampilkan. Kalau gak ada dokumentasi ya udah, biasanya aku cuma ngandelin feeling sama baca-baca kodenya aja, gak pernah nyatet juga sih wkwk (jangan ditiru kalau bisa baiknya dicatat hehe).
Selanjutnya aku telusuri fitur yang mau diubah. Contohnya, kalau klien bilang “tambahin nomor HP di halaman profil”, aku buka halaman itu lalu cari kata kunci seperti name
atau email
di kode sampai nemu file yang ngatur tampilan. Dari situ kuhubungkan ke controller, terus ke model atau database kalau perlu. Intinya, ikuti alurnya pelan-pelan pakai fitur search di IDE biar nggak buka file satu-satu (mata keburu panas 😅).
Setelah tahu titik masuknya, aku mulai ubah satu bagian kecil dulu. Misalnya cuma nambah field di tampilan. Kalau berhasil, baru lanjut ke controller, validasi, sampai database. Jadi gak langsung ubah banyak bagian sekaligus.
Satu hal lagi: aku selalu komunikasi sama klien. Kadang mereka bilang “cuma tampilan doang”, tapi ternyata butuh ubah database juga. Jadi lebih aman kalau ditanya dulu, biar gak kerja dua kali.
Terakhir, setiap perubahan biasanya aku simpan di commit kecil-kecil. Jadi kalau ada yang salah, gampang banget buat mundur lagi. Tapi kalau kebetulan gak pakai git, biasanya aku duplikat dulu aja filenya. Intinya, usahain selalu ada backup, biar aman kalau tiba-tiba ada yang berantakan.
Itu sih cara sederhana aku. Intinya jangan buru-buru, pahami alurnya dulu, terus kerjain bagian kecil step by step. Lama-lama jadi kebiasaaan, dan tiap dapet project baru rasanya gak seseram dulu.