Cara mengambil dan menengahi keputusan teknis lintas tim: kerangka decision-making berdasarkan reversibilitas, disagree and commit yang sehat, teknik menyelesaikan disagreement tanpa politik, serta decision log yang membuat organisasi belajar dari keputusannya

Setelah di episode 10 kita belajar bermitra dengan produk dan bisnis lewat mata uang bisnis dan feasibility memo, pada episode ini kita hadapi momen paling sulit peran staff engineer: conflict & decisions. Ketika dua tim punya solusi berbeda untuk masalah yang sama, ketika lead yang dihormati menolak usulan kalian, atau saat keputusan harus diambil tanpa data lengkap — di sanalah kalian dibutuhkan.
Kabar baiknya: konflik teknis bukan penyakit; ia gejala bahwa organisasi peduli. Tugas kalian bukan menghilangkan konflik melainkan membuat proses keputusannya sehat — cepat, adil, terdokumentasi, dan bisa dipelajari.
Sebelum memperdebatkan keputusan apa pun, klasifikasikan dulu sifatnya:
| Jenis | Karakteristik | Proses yang Tepat |
|---|---|---|
| Two-way door | Mudah dibalik (flag, refactor kecil) | Cepat: putuskan, uji, balikkan jika salah |
| One-way door | Mahal/sulit dibalik (pilih database utama, migrasi skema besar) | Lambat: RFC, review, ratifikasi |
| Keputusan berulang | Diambil berkali-kali (standar penamaan, pola error) | Sekali putus → kodifikasi jadi standar |
Kesalahan klasik organisasi: memperlakukan semua keputusan sebagai one-way door — semuanya dirapat bertingkat — hingga velocity mati. Kesalahan kedua: memperlakukan one-way door sebagai two-way — migrasi besar diambil atas dasar "yakin saja". Staf engineer menjaga keseimbangan ini: mempercepat yang bisa dibalik, memperlambat yang tidak.
Tip
Saat rapat macet, tanya satu pertanyaan: "kalau ternyata salah,berapa biaya membaliknya?" Jawabannya biasanya langsung menyelaraskan level intensitas debat.
Alur yang saya pakai berulang kali:
Tiga prinsip yang membuat alur ini bekerja:
Prinsip Amazon ini sering disalahpahami sebagai "diam dan patuh". Versi sehatnya:
Contoh nyata: kalian keberatan soal vendor message queue baru karena risiko lock-in; direksi tetap memilihnya. Commit artinya kalian menulis panduan migrasi yang aman dan mendesain abstraksi tipis agar keluar mudah — bukan menunggu vendor gagal untuk berkata "sudah kuduga".
Saat kalian diminta menengahi (posisi natural staff engineer), gunakan protokol singkat:
Aturan emas fasilitator: kalian memutuskan proses, bukan isi — kecuali diminta eksplisit menjadi pemilik keputusan.
Organisasi yang belajar mencatat keputusannya. Buat ~/staff-lab/decisions/log.md:
# Decision Log - Area Platform
| ID | Tanggal | Keputusan | Pemutus | Status |
|-----|-----------|----------------------------------|---------|-------------|
| D14 | 2026-06-02| MQ internal: pindah ke NATS | VP Eng | Implemented |
| D15 | 2026-07-11| Feature flag system: Unleash | Arsitektur | Adopted |
| D16 | 2026-08-16| Realtime price update: opsi B | PM+Staff | Evaluasi 09-12 |
Catatan D16: revisi jika engagement watchlist < 40% sesi.Manfaat log ini melampaui dokumentasi:
Inti yang harus dibawa pulang:
Di episode 12 selanjutnya kita mulai fase baru dengan membahas complex systems delivery — cara mengelola deliverable sistem kompleks yang menyentuh banyak tim dan bulan-bulan eksekusi: koordinasi, integrasi bertahap, dan menjaga mutu sampai benar-benar produksi. Sampai jumpa di episode 12!