Chapter Eighteen
Circuit Breaker
POV: Ervan
Naufal bertanya kenapa sistemnya berhenti mengirim permintaan padahal servernya belum tentu mati.
Kami di ruang rapat kecil, sesi keempat, kamera merekam di sudut. Kiki sedang mengambil kopi. Rio sedang membaca sesuatu di ponselnya dengan wajah orang yang berpura-pura tidak.
Aku menggambar kotak di papan tulis.
“Ini namanya circuit breaker,” kataku. “Bayangin sistem kita manggil sistem mitra. Kalau mitra lagi sakit, tiap panggilan kita bakal gagal, tapi tetap makan waktu — lima detik, sepuluh detik, sampai timeout. Kalau kita terus manggil, dua hal terjadi. Satu, sistem kita ikut macet nunggu. Dua, mitra yang lagi sekarat makin ketimbun.”
“Terus solusinya?”
“Kita hitung kegagalannya. Kalau sepuluh panggilan terakhir gagal semua, breaker-nya kita buka. Setelah itu, tiap panggilan langsung ditolak dari sisi kita. Nggak usah dicoba. Kita udah tahu hasilnya.”
Naufal mencatat.
“Berapa lama, Mas?”
“Tergantung. Biasanya kita kasih jeda. Terus masuk fase half-open.” Aku menggambar panah. “Di fase ini kita coba satu panggilan. Cuma satu. Kalau berhasil, breaker-nya kita tutup lagi, semua normal. Kalau gagal, buka lagi, tunggu lagi.”
“Kenapa cuma satu?”
“Karena kalau ternyata masih rusak, cuma satu yang jadi korban.” Aku menaruh spidol. “Kalau kita kirim seribu terus rusak semua, kita ngerusak dua sistem sekaligus. Satu panggilan itu taruhan paling murah yang bisa kita bikin.”
Kiki masuk dengan tiga gelas kopi. “Bahas apa?”
“Circuit breaker,” kata Naufal.
“Oh, itu yang bikin kita nggak dimarahin mitra tahun lalu.” Kiki duduk. “Mas Ervan yang pasang.”
“Yang pasang tim infra.”
“Mas Ervan yang nyuruh.”
Aku tidak menjawab, karena membantah Kiki dua kali berturut-turut hanya membuatnya lebih keras.
Dan pada saat itu aku melihat, di pantulan jendela di seberang ruangan, bahwa ada orang berdiri di luar pintu.
Berapa lama, aku tidak tahu.
Aku memikirkannya lagi malam itu, di apartemen, sambil menunggu air mendidih.
Bukan tentang dia. Tentang gambarnya.
Aku sudah menjelaskan circuit breaker mungkin lima puluh kali dalam hidupku. Ke junior, ke kandidat wawancara, ke orang produk yang perlu tahu kenapa fiturnya lambat. Aku bisa menjelaskannya sambil tidur.
Malam itu, untuk pertama kalinya, aku menyadari bahwa aku sedang menjelaskan diriku sendiri.
Sepuluh kegagalan berturut-turut. Buka. Tolak semua panggilan berikutnya tanpa mencoba, karena kita sudah tahu hasilnya.
Itu bukan kiasan yang kupilih. Itu memang cara kerjanya.
Setiap pesan yang tidak berbalas selama enam bulan itu adalah satu kegagalan. Aku menghitungnya waktu itu juga — tentu saja aku menghitungnya — dan aku ingat ada satu titik di bulan kelima ketika aku berhenti merasa kecewa saat pesanku tidak dibalas.
Aku ingat titik itu dengan sangat jelas, karena aku merasa lega.
Aku pikir aku sudah dewasa. Aku pikir aku akhirnya belajar tidak menuntut.
Ternyata aku cuma membuka breaker-nya.
Dan yang paling jujur dari seluruh pola itu, bagian yang tidak pernah kuceritakan ke Naufal karena tidak relevan secara teknis, adalah ini:
Breaker yang terbuka bukan berarti sistemnya berhenti peduli.
Sistemnya masih menghitung. Detik demi detik, sepanjang jeda, sampai waktunya habis dan dia mengirim satu panggilan uji.
Sistem yang benar-benar menyerah tidak akan pernah mengirim panggilan uji.
Aku menyadari sesuatu tentang diriku pada hari kelima belas program itu.
Aku menunggu notifikasi.
Bukan kiasan lagi. Secara harfiah: ponselku di meja, dan setiap kali layarnya menyala, ada sesuatu di bahuku yang bergerak duluan sebelum kepalaku sempat menahannya.
Sebagian besar notifikasi itu adalah alert sistem. Sebagian kanal tim. Sebagian Kiki mengirim meme pukul sebelas malam.
Tapi tubuhku sudah belajar membedakan pola.
Pesan darinya selalu datang antara pukul sembilan dan setengah sepuluh malam. Selalu soal kerja. Selalu tanpa satu pun kata yang berlebih. Sesi besok pindah ke ruang 3. Rekaman sesi kemarin udah aku review, bagian menit 40 tolong diulang. Kiki bilang dia belum paham reconciliation, tolong jangan dipercepat.
Tidak ada satu pun yang bisa dibaca sebagai apa pun.
Dan aku membacanya berulang kali.
Aku menangkap diriku melakukannya pada malam kelima belas: membuka kembali pesan yang sudah kubaca dua jam lalu, membaca ulang tujuh kata, menutup, dan lima menit kemudian membukanya lagi.
Aku menaruh ponselku telungkup di meja.
Ini bagian yang tidak pernah kujelaskan ke siapa pun tentang pola itu, karena tidak ada di dokumentasi mana pun, dan karena aku baru mengerti sendiri:
Fase half-open itu jahat.
Selama breaker-nya tertutup rapat, kau baik-baik saja. Kau menolak semua, kau tidak berharap apa-apa, kau stabil. Tiga tahun aku stabil.
Yang menghancurkan adalah satu panggilan uji itu.
Karena begitu satu panggilan berhasil — satu saja, satu gelas kopi hitam yang ditaruh di sebelah kiri, satu perempuan yang naik ke ruangan enam belas derajat tanpa alasan — sistemnya menutup breaker-nya.
Dan begitu breaker-nya tertutup, semua permintaan yang sudah tiga tahun ditahan mengalir sekaligus.
Tidak ada mekanisme di dunia ini yang sanggup menahan itu.
Sesi kedelapan, Kiki menghancurkan staging environment.
Bukan produksi — staging. Tidak ada pelanggan yang terdampak. Tapi dia menjalankan sebuah perintah migrasi yang salah urutan dan dua belas jam data pengujian tim QA hilang, dan Wiwi berdiri di belakangnya dengan wajah yang membuat Naufal mundur satu langkah.
Kiki menjadi pucat dengan cara yang membuat perutku ikut sakit.
“Mas, saya—”
“Berhenti,” kataku.
“Saya nggak sengaja—”
“Kiki. Berhenti.”
Dia berhenti.
“Kamu jalanin perintah yang saya kasih di sesi kelima,” kataku. “Saya kasih urutannya, tapi saya nggak jelasin kenapa urutannya penting. Itu kesalahan saya, bukan kesalahan kamu. Sekarang duduk, kita pulihin bareng, dan besok saya ulang sesinya.”
Wiwi bersedekap di belakang.
“Datanya dua belas jam, Van.”
“Iya. Saya yang bikin ulang malam ini.”
“Kamu ada sesi jam sembilan besok.”
“Nggak apa-apa.”
Dan aku mengucapkannya, dan aku mendengar diriku mengucapkannya, dan di detik itu juga aku menyadari bahwa dia berdiri di ujung ruangan.
Aku tidak tahu sejak kapan.
Dia tidak mengatakan apa-apa. Dia hanya berdiri di sana, memegang laptopnya, dan menatapku dengan cara yang sama sekali tidak profesional dan sama sekali tidak bisa disalahartikan oleh siapa pun yang tahu bagaimana cara melihat.
Dan seluruh ruangan ada di sana. Kiki, Wiwi, Naufal, dua orang dari tim infra.
Aku memalingkan wajah lebih dulu.
Dan yang membuatku memalingkan wajah bukan karena dia menatapku.
Karena aku baru saja menyadari, dengan sangat terlambat, apa yang sebenarnya baru saja kulakukan di depan lima orang.
Kiki melakukan kesalahan. Kesalahan sungguhan. Dua belas jam kerja tim QA hilang karena dia menjalankan perintah tanpa memahaminya, dan itu adalah kesalahan yang seharusnya dia bawa pulang dan pikirkan semalaman, karena begitulah cara orang belajar.
Dan aku mengambilnya darinya dalam empat detik.
Aku mengambilnya bukan karena Kiki tidak sanggup memikulnya. Aku mengambilnya karena aku tidak sanggup melihat wajahnya waktu memikulnya.
Selama tiga tahun aku mengira aku sudah berhenti melakukan hal itu.
Ternyata aku cuma kehabisan orang untuk kulakukan.
Malam itu aku memulihkan data sampai jam dua pagi, sendirian, karena aturannya bilang tidak boleh sendirian saat insiden P1 dan ini bukan P1.
Aku menemukan celahnya. Tentu saja aku menemukan celahnya.
Pukul dua lewat sepuluh, ponselku menyala di meja.
Aku lihat commit kamu masih jalan. Berhenti jam 3. Itu perintah.
Aku menatap layar itu.
Aku bisa membalas baik, Bu. Aku sudah mengetiknya, sebenarnya. Empat huruf, koma, tiga huruf.
Aku menghapusnya.
Dan aku mengetik sesuatu yang lain, dan aku menekan kirim sebelum bagian di kepalaku yang menghitung sempat bekerja:
Kenapa masih bangun jam segini?
Terkirim.
Aku menatap layar itu selama sepuluh detik dengan perut yang jatuh ke suatu tempat yang sangat rendah, karena aku baru saja melanggar aturan pertama, aturan yang sudah kupegang seratus empat puluh delapan hari.
Jangan pernah lebih dulu.
Titik-titik muncul di layarnya.
Berhenti.
Muncul lagi.
Nggak bisa tidur.
Dan kemudian, tiga puluh detik kemudian, sebelum aku sempat memutuskan apa pun:
Kamu juga nggak pernah bisa tidur kalau lagi mikirin sesuatu. Dulu.
Aku menaruh ponselku telungkup di meja dan duduk di dalam kegelapan apartemenku selama waktu yang tidak kuhitung.
Satu panggilan uji.
Itu saja yang kukirim. Satu.
Dan breaker-nya sudah bergerak.
- 1 Nama di Baris Ketujuh
- 2 Lima Belas Menit
- 3 Diterima, Bukan Dimaafkan
- 4 Enam Hari
- 5 Diberikan ke Junior
- 6 Bandar Taruhan
- 7 Kopi Tanpa Susu
- 8 Nol Jam Lembur
- 9 Laki-Laki yang Lebih Mudah
- 10 Kardus di Atas Lemari
- 11 Empat Belas Juni
- 12 Perintah untuk Protes
- 13 Adik yang Tidak Menyapa
- 14 Hampir Pindah
- 15 Yang Dihitung
- 16 Kata yang Dibuang
- 17 Terjebak Aturan Sendiri
- 18 Circuit Breaker reading
- 19 Migrasi
- 20 draft.txt
- 21 Tawaran ke Kota Lain
- 22 Empat Puluh Jam
- 23 Empat Jam di Lorong
- 24 Panik, Bukan Haru
- 25 Surat yang Tidak Ditandatangani
- 26 Kredit yang Dirampas
- 27 Aku Tahu
- 28 Marah
- 29 Berhenti
- 30 Empat Jam
- 31 Kenapa Akhirnya Ngomong
- 32 Isi Amplop
- 33 Yang Meminta Duluan
- 34 Mode Hemat
- 35 Menu, Film, Warna
- 36 Kiki Menang Taruhan
- 37 Tahun Pertama
- 38 Frankfurt
- 39 Aku yang Nyuruh Kamu Pergi
- 40 Gagal Lagi
- 41 Aku Capek
- 42 Dua Kata
- 43 Potong Rambut
- 44 Amplop Kedua