Back to Engineering Articles/Apa yang Saya Lakukan sebagai Mid-Level Engineer — Shipping, Ownership & Luka Produksi

Apa yang Saya Lakukan sebagai Mid-Level Engineer — Shipping, Ownership & Luka Produksi

Saya mengirim fitur nyata ke pengguna nyata. Saya merusak produksi dan memperbaikinya sendiri jam 2 pagi. Saya membangun aplikasi mobile banking dengan 680 ribu unduhan, sistem armada tambang yang menghemat $200K/tahun, dan platform operasi lapangan untuk 4,1 juta pengguna. Inilah gambaran nyata engineering mid-level — proyek, metrik, dan insiden produksi yang menjadikan saya seorang engineer sejati.

Faisal AffanFaisal Affan
6/13/2026
Apa yang Saya Lakukan sebagai Mid-Level Engineer — Shipping, Ownership & Luka Produksi

Apa yang Saya Lakukan sebagai Mid-Level Engineer

"Mid-level adalah fase di mana kamu berhenti menulis kode yang berfungsi dan mulai menulis kode yang bertahan." — Saya, setelah rollback produksi ke-14

Tahun-tahun mid-level mengubahmu dari "seseorang yang bisa coding" menjadi "seseorang yang bisa mengirim produk." Perubahannya fundamental: kamu tidak lagi dinilai dari apakah kode kamu berjalan. Kamu dinilai dari apakah kode kamu bertahan di produksi — dalam skala besar, di bawah beban, saat semuanya kacau jam 3 pagi.


Premis Mid-Level

Apa yang Berubah

Sebelum (Junior): "Bisakah kamu menulis kode yang berfungsi?" Sekarang (Mid): "Bisakah kamu memiliki sebuah fitur dari ujung ke ujung — desain, bangun, tes, deploy, monitor, debug, dan iterasi — tanpa ditemani orang lain?"


Studi Kasus 1: SiTepat — Integrasi Mobile Banking

Peran: Backend Engineer Tunggal Stack: Go, Flutter, ISO 8583, PostgreSQL Skala: 680 Ribu+ unduhan Google Play, zero downtime selama lonjakan transaksi Lebaran

Ini adalah sistem produksi "sungguhan" pertama saya. Bukan situs WordPress. Bukan aplikasi CRUD. Sebuah aplikasi mobile banking yang harus terintegrasi langsung dengan sistem inti bank melalui protokol ISO 8583.

Yang Saya Bangun

  • Jembatan ISO 8583: Sebuah service Go yang menerjemahkan panggilan REST API menjadi pesan ISO 8583 untuk mainframe lama bank. Ini adalah jalur kritis — jika jembatan ini mati, 680 ribu pengguna tidak bisa cek saldo.
  • Dashboard Pembiayaan Real-Time: Agen lapangan bisa mensimulasikan perhitungan IIR (Internal Interest Rate) secara real-time, menggantikan proses Excel manual yang memakan 3-5 hari kerja.
  • Mesin Pengingat Pembayaran Cerdas: Pengingat otomatis melalui Firebase Cloud Messaging, mengurangi keterlambatan pembayaran sebesar 18%.

Yang Salah

Dampak

MetrikSebelumSesudah
Unduhan aplikasi0680 Ribu+
Waktu pemrosesan transaksi3-5 hari kerja (manual)Real-time
Tingkat keterlambatan pembayaran22%18%
Uptime sistemN/A (sistem baru)99,7%

Studi Kasus 2: HPU Digital Mining Platform

Peran: Full-Stack Engineer Stack: Microservices Go, React PWA, MQTT, PostgreSQL Skala: 3 provinsi, 100+ truk, 50 ribu event telemetri/detik

Ini adalah perkenalan saya dengan IoT — dan semua yang saya kira saya tahu tentang "sistem yang andal" diuji oleh kenyataan: lokasi tambang terpencil dengan konektivitas satelit intermiten, pelacak GPS yang melaporkan data sampah, dan pengguna yang belum pernah memakai smartphone sebelumnya.

Yang Saya Bangun

  • Manajemen Armada Real-Time: Pelacakan GPS langsung untuk 100+ truk jungkit, ekskavator, dan kendaraan pendukung
  • Manajemen BBM & Deteksi Anomali: Menangkap pencurian BBM dalam bulan pertama peluncuran
  • Manajemen Digital HSE: Mengganti pelaporan keselamatan berbasis kertas dengan PWA mobile
  • Dashboard Pusat Kendali Multi-Site: Visibilitas real-time dari lubang tambang ke kantor pusat dengan kemampuan drill-down ke telemetri truk individu

Yang Salah

Dampak

MetrikSebelumSesudah
Utilisasi truk65%79%
Insiden pencurian BBMTidak diketahui (tak terdeteksi)Terdeteksi bulan pertama
Penghematan tahunanRp 3,2 Miliar ($200K)
Waktu laporan HSE5 hari (kertas)Real-time (digital)

Studi Kasus 3: Tepati — Platform Operasi Lapangan

Peran: Full-Stack Engineer Tunggal Stack: Monolit Go, Flutter mobile, SQLite, MQTT Skala: 4,1 juta pengguna akhir, dibangun sendiri dalam 30 hari

Ini adalah proyek yang mengajarkan saya perbedaan antara "membangun" dan "memiliki." Ketika kamu satu-satunya pengembang, tidak ada tim backend untuk disalahkan saat database lambat. Tidak ada tim frontend untuk memperbaiki UI. Tidak ada tim DevOps untuk menangani deployment.

Yang Saya Bangun

  • Mesin Sinkronisasi Offline-First: Agen lapangan di area tanpa konektivitas bisa mengisi formulir, mengambil foto, mengumpulkan tanda tangan — semuanya sinkron saat mereka kembali ke jangkauan jaringan
  • Mesin Formulir Dinamis: 50+ tipe field dengan logika kondisional, dapat dikonfigurasi tanpa perubahan kode
  • Pipeline Persetujuan Multi-Level: 4 tingkat hierarki dengan routing berbasis peran dan jejak audit lengkap
  • Mesin Simulasi IIR: Perhitungan pembiayaan real-time yang sebelumnya memakan 3-5 hari kerja

Realitas Pengembang Tunggal

  • Kamu deploy kode sendiri. Jam 2 pagi. Di hari Sabtu.
  • Kamu debug insiden produksi sendiri. Tidak ada dukungan L2.
  • Kamu menulis dokumentasi sendiri. Jika tidak, tidak ada yang akan melakukannya — dan kamu akan menyesal dalam 6 bulan.
  • Kamu membuat keputusan arsitektur sendirian. Ini membebaskan sekaligus menakutkan — tidak ada yang memeriksa kewarasan keputusanmu.

Dampak

MetrikSebelumSesudah
Tingkat kehilangan data23%0%
Pengguna akhir yang dilayani04,1 Juta
Waktu pembangunanN/A30 hari (MVP)
Waktu keputusan pembiayaan3-5 hari kerjaReal-time

Kartu Skor Mid-Level Saya

Item PortofolioApakah Saya Melakukannya?Catatan
2-3 studi kasus kerjaSiTepat, HPU, Tepati — semuanya dengan dampak terukur
Metrik terukur680 ribu unduhan, utilisasi 65→79%, kehilangan data 23% tereliminasi
Kontribusi open sourceCelah karir terbesar — mulai terlalu terlambat
Artikel teknis⚠️Menulis dokumentasi internal, tidak pernah dipublikasikan
Penanganan insiden produksiBertahan dari 4 insiden besar, belajar lebih banyak dari itu daripada fitur mana pun

Saran untuk Mid-Level Engineer Saat Ini

  • Miliki siklus hidup penuh. Jangan hanya menulis fitur — deploy, monitor, debug, dan tingkatkan. Engineer yang menguasai full stack bernilai 3x lipat engineer yang hanya menulis kode.
  • Ukur sebelum dan sesudah. "Lebih cepat" adalah opini. "Latensi API turun dari 800ms menjadi 200ms" adalah item portofolio. Mulai ukur hari ini.
  • Tulis tentang insiden produksimu. Bug yang kamu perbaiki jam 2 pagi adalah postingan blog besok. Keputusan arsitektur yang kamu buat setelah insiden adalah bahan pembicaraan konferensi bulan depan.
  • Mulai open source sekarang. Bahkan satu PR ke proyek yang kamu gunakan. Skill yang kamu dapatkan — membaca codebase asing, mengikuti pedoman kontribusi, menerima review kode dari orang asing — persis yang diuji dalam wawancara senior+.

Mid-level adalah tahap karir yang paling diremehkan. Di sinilah kamu mengumpulkan luka produksi yang membuat portofolio senior-mu autentik. Setiap insiden, setiap rollback, setiap perbaikan jam 2 pagi — itu bukan trauma. Itu konten.

Discussion

Write a comment or question

Powered by GitHub Discussions
Loading...

Related Engineering & Tech Articles

Apa yang Saya Lakukan sebagai Mid-Level Engineer — Shippi... | Faisal Affan