Cara membangun program reliability lintas tim: memilih SLI dan menetapkan SLO yang jujur, error budget policy yang mengubah keputusan rilis, budaya postmortem blameless yang benar-benar menghasilkan pembelajaran, dan rencana program 90 hari

Setelah di episode 13 kita belajar mendanai dan mengeksekusi program debt & platform, pada episode ini kita fokus pada dimensi yang paling cepat menghancurkan kepercayaan pelanggan jika diabaikan: reliability. Di level staff, kalian tidak lagi hanya memperbaiki service sendiri — kalian membangun program: cara organisasi mendefinisikan, mengukur, dan menjaga reliabilitas lintas puluhan layanan.
Alat utamanya adalah SLO (Service Level Objective) dengan error budget — bukan sebagai dashboard hiasan, melainkan mesin pengambil keputusan: kapan boleh rilis, kapan harus stabilisasi, dan berapa investasi reliability yang pantas.
Metrik uptime klasik ("99.9%!") punya cacat mendasar: ia mengukur server, bukan pengalaman. Server bisa 100% uptime sementara checkout gagal untuk 5% pengguna karena timeout di dependency. Program modern bekerja bertingkat:
| Istilah | Arti | Contoh |
|---|---|---|
| SLI | Indikator terukur dari perspektif pengguna | Rasio request checkout yang sukses dalam 500 ms |
| SLO | Target komitmen atas SLI | 99.9% request sukses dalam rolling 30 hari |
| Error budget | Sisa toleransi kegagalan | 0.1% × 30 hari ≈ 43 menit "budget" |
Prinsip pemilihan SLI yang baik: ukur dari sisi pengguna, bukan sisi proses. "CPU di bawah 80%" adalah metrik internal; "95% pencarian selesai dalam 300 ms" adalah pengalaman.
Dua kesalahan umum saat menetapkan SLO:
Cara yang benar: mulai dari data nyata (p90/p95/p99 historis), tanya apa yang benar-benar dirasakan pengguna, lalu set target sedikit di atas performa saat ini dengan biaya peningkatan yang diketahui.
Nilai sesungguhnya error budget ada pada policy: aturan otomatis tentang apa yang terjadi saat budget habis atau tersisa banyak.
Budget > 50% : normal - rilis bebas sesuai standar.
Budget 25-50% : perhatian - rilis fitur non-kritis ditinjau lead.
Budget 10-25% : pembatasan - hanya bugfix + reliability work.
Budget < 10% : freeze rilis fitur; sprint reliability wajib;
review arsitektur penyebab dominan.Kekuatan policy ini: ia mengubah debat emosional ("kita harus rilis!" vs "tunggu dulu!") menjadi keputusan mekanis yang sudah disepakati semua pihak saat kepala dingin. Manajemen produk dan engineering sama-sama meratifikasi policy sekali, lalu tidak perlu berdebat tiap pekan.
Important
Error budget yang tidak pernah terpakai juga sinyal masalah: artinya SLO terlalu longgar dan pelanggan membayar over-engineering. Budget yang selalu habis berarti target tidak realistis. SLO sehat kadang dilanggar, kadang sisa.
Program reliability hidup dari insiden yang dipelajari. Budaya postmortem yang gagal biasanya bukan soal format, tapi soal dua hal: menyalahkan orang dan temuan yang tidak dieksekusi.
Struktur postmortem efektif:
Aturan blameless perlu dijaga aktif oleh senior di ruangan — termasuk kalian. Satu lelucon menyalahkan cukup membuat orang berikutnya menyembunyikan kesalahan.
Program lintas tim butuh rencana bertahap. Susun ~/staff-lab/initiatives/reliability-program.md:
# Program Reliability 90 Hari
Fase 1 (pekan 1-4): Fondasi
- Pilih 3 layanan user-facing terpenting (checkout, auth, search).
- Definisikan SLI + SLO draft bersama tim masing-masing.
- Pasang dashboard error budget otomatis (alerting burn-rate).
Fase 2 (pekan 5-8): Policy & ritual
- Ratifikasi error budget policy bersama PM + VP Eng.
- Format postmortem standar + review aksi bulanan dimulai.
- Dry-run: simulasi budget habis -> latih jalur eskalasi.
Fase 3 (pekan 9-12): Skala
- Perluas ke 8 layanan berikutnya via template + workshop.
- Review kuartalan: SLO mana yang terlalu longgar/ketat.
- Publikasikan scorecard reliability antar tim (transparansi).
Ukuran sukses hari ke-90:
- 11 layanan punya SLO + dashboard burn-rate aktif.
- 2 insiden ditutup dengan postmortem beraksi tereksekusi.
- Keputusan rilis pertama dibuat via budget policy (bukan drama).Catatan penting baris scorecard antar tim: transparansi menciptakan tekanan sosial yang bekerja lebih baik daripada mandat — asalkan scorecard dipakai untuk belajar, bukan ranking yang dihukum.
Inti yang harus dibawa pulang:
Di episode 15 selanjutnya kita akan membahas data & metrics for decisions — kerangka metrik teknis dan bisnis untuk mengambil keputusan, jebakan vanity metrics dan Goodhart's law, serta cara menyusun metrics framework yang membuat argumen kalian tak terbantahkan. Sampai jumpa di episode 15!