Yang Saya Lakukan Sebagai Junior Developer — Fundamental yang Membentuk Segalanya
Nol pengalaman production. GitHub penuh repo tutorial. Satu aset: kemampuan belajar cepat dan nol ketakutan merusak sesuatu. Ini yang benar-benar saya bangun sebagai junior engineer — situs WordPress, sistem universitas PHP, dan kesalahan hardcoded credentials yang mengajarkan saya keamanan selamanya.

- Yang Saya Lakukan Sebagai Junior Developer
- Di Mana Saya Mulai
- Project 1: Sistem Informasi Universitas
- Project 2-6: Website Bisnis Kecil
- Scorecard Portofolio Junior Saya
- Yang Akan Saya Lakukan Berbeda
- Mulai Git di Hari Pertama. Bukan bulan ke-8. Bukan "saat saya lebih paham."
- Deploy Sesuatu yang Personal — Segera. Boost kepercayaan diri melihat
- Tulis README Bahkan untuk Project Solo. Dirimu di masa depan adalah
- Pelajari Satu Hal Mendalam Sebelum Pindah. Saya melompat dari PHP ke
- Saran untuk Junior Saat Ini
Yang Saya Lakukan Sebagai Junior Developer
"Semua orang mulai dari suatu tempat. Saya mulai dengan FTP dan password hardcoded." — Saya
Tahun-tahun junior adalah tentang satu hal: membuktikan kamu bisa belajar. Tidak ada yang mengharapkan pengalaman production. Tidak ada yang mengharapkan kebijaksanaan arsitektur. Mereka bertaruh pada trajectory-mu — dan trajectory itu ditentukan oleh seberapa cepat kamu menyerap fundamental dan seberapa jujur kamu menangani kesalahan.
Di Mana Saya Mulai
Tahun: 2017-2018 Stack: PHP, MySQL, HTML/CSS, Bootstrap, WordPress Metode deployment: FTP ke shared hosting (saya tidak tahu apa itu CI/CD) Version control: Mulai Git di bulan ke-8. Kehilangan 3 project sebelumnya.
Proposisi Junior
Yang saya jual: Skill fundamental + kemauan belajar. Yang perusahaan beli: Seseorang yang tidak akan jadi beban bersih bagi tim. Keunggulan saya: Saya bisa mencari tahu tanpa bertanya hal yang sama dua kali.
Project 1: Sistem Informasi Universitas
Aplikasi CRUD untuk mengelola data mahasiswa, pendaftaran mata kuliah, dan nilai di kampus lokal.
- Stack: PHP, MySQL, Bootstrap 3
- Fitur: Pendaftaran mahasiswa, penugasan mata kuliah, entri nilai, pelaporan dasar
- Deployment: Shared hosting via cPanel + FileZilla FTP
Yang saya pelajari:
- SQL join tidak opsional — versi pertama saya melakukan 47 query terpisah di halaman laporan nilai
- Validasi form HARUS terjadi di client DAN server — saya belajar ini saat seseorang mengirim nilai negatif via Postman
- Normalisasi database ada karena alasan — tabel
studentssaya punya 40 kolom termasuk "pekerjaan_ayah" dan "nama_gadis_ibu" tanpa pemisahan
Kesalahan yang mengubah segalanya:
// Ini ada di config.php saya — di-push ke GitHub
$db_host = "localhost";
$db_user = "root";
$db_password = "admin123";
$db_name = "university_db";Seseorang menemukan repo publik saya. Mereka tidak melakukan hal jahat — mereka mengirim email: "Hei, kamu mungkin ingin memperbaiki ini." Kebaikan orang asing itu mengajarkan saya lebih banyak tentang keamanan daripada tutorial mana pun.
Project 2-6: Website Bisnis Kecil
Saya membangun 5-6 situs WordPress + WooCommerce untuk bisnis lokal — toko roti, percetakan, brand pakaian kecil, agen travel, dan restoran.
Yang sebenarnya saya kerjakan:
- Install WordPress, konfigurasi tema, kustomisasi CSS
- Setup WooCommerce dengan payment gateway (Midtrans, transfer bank)
- Konfigurasi DNS, email, sertifikat SSL
- SEO dasar: meta tag, Google My Business, submit sitemap
- Mengajari pemilik cara update konten mereka sendiri
Yang saya pelajari:
- Klien tidak peduli tech stack-mu — mereka peduli situs mereka berfungsi dan mendatangkan pelanggan
- "Bisa juga tambahin..." adalah frase termahal dalam freelancing — scope creep itu nyata
- Backup tidak opsional — satu perusahaan hosting bangkrut dan membawa seluruh situs klien. Saya tidak punya backup. Tidak pernah lagi.
Scorecard Portofolio Junior Saya
| Item Portofolio | Apakah Saya Melakukannya? | Catatan |
|---|---|---|
| 3-5 project | ✅ | 1 sistem universitas + 5 situs bisnis |
| GitHub aktif | ❌ | Mulai Git di bulan ke-8 — penyesalan besar |
| 1 project live deployed | ✅ | Beberapa situs WordPress live |
| Keterbacaan kode | ⚠️ | Fungsional tapi tidak bersih. God class di mana-mana. |
| Dokumentasi README | ❌ | Tidak menulis satu pun README. Diriku masa depan menderita. |
| Kualitas commit message | ❌ | "update", "fix", "final", "final2", "final_final" |
Yang Akan Saya Lakukan Berbeda
Mulai Git di Hari Pertama. Bukan bulan ke-8. Bukan "saat saya lebih paham."
Hari pertama. git init sebelum npm init. 3 project yang hilang karena
kegagalan hosting akan tetap ada.
Deploy Sesuatu yang Personal — Segera. Boost kepercayaan diri melihat
kodemu di URL nyata bernilai 100 project localhost. Pakai Vercel, Netlify, GitHub Pages — apa pun yang gratis. Langsung live-kan.
Tulis README Bahkan untuk Project Solo. Dirimu di masa depan adalah
audiens utama. Enam bulan kemudian, kamu tidak akan ingat mengapa kamu
menyusun database seperti itu atau apa yang sebenarnya dilakukan processData_v2().
Pelajari Satu Hal Mendalam Sebelum Pindah. Saya melompat dari PHP ke
JavaScript ke Python ke Java dalam 18 bulan. Pengetahuan permukaan 4 bahasa bernilai lebih rendah dari pengetahuan mendalam 1 bahasa.
Saran untuk Junior Saat Ini
- Pekerjaan pertamamu tidak mendefinisikan karirmu. Saya mulai dengan freelancing WordPress. Tiga tahun kemudian saya mendesain arsitektur IoT untuk perusahaan tambang.
- Developer yang bertanya lebih berharga daripada developer yang pura-pura tahu. Diam adalah musuh pertumbuhan.
- Kirim sebelum kamu siap. Project yang kamu deploy dengan bug mengajarkan lebih banyak daripada project sempurna yang duduk di localhost-mu.
- Keamanan bukan "urusan senior." Kredensial hardcoded, SQL injection, XSS — ini kesalahan junior dengan konsekuensi senior. Pelajari sejak dini.
Tahun-tahun junior adalah satu-satunya waktu dalam karirmu ketika "saya tidak tahu" tidak hanya diterima — tapi diharapkan. Manfaatkan jendela itu. Tanya segalanya. Rusakkan sesuatu. Belajar secara publik. Dirimu yang senior bergantung padanya.