Yang terakhir saya matikan
SIMAK, satu-satunya sistem lama yang belum berani saya cabut, akhirnya ikut dimatikan malam ini — dan di tengah beres-beres itu saya baru sadar ada jalur masuk ke salah satu sistem lama saya yang seharusnya sudah lama ditutup.
Di tulisan sebelumnya saya bilang SIMAK belum berani saya matikan — satu-satunya dari semua sistem lama yang masih saya biarkan hidup, karena masih dipakai dan karena rumitnya lebih dari sekadar mematikan container. Malam ini akhirnya saya selesaikan.
Kenapa SIMAK selalu ditunda
Alasannya bukan cuma sentimental. Server yang menjalankan SIMAK ternyata juga menjalankan pintu masuk untuk semua domain saya — bukan cuma SIMAK sendiri. Kalau saya matikan sembarangan, bukan cuma SIMAK yang jatuh, tapi seluruh situs dan aplikasi lain ikut mati beberapa detik.
Jadi sebelum SIMAK-nya sendiri bisa disentuh, pintu masuk itu harus dipindah dulu ke rumahnya sendiri — berdiri sendiri, tidak lagi menumpang di sistem yang mau dimatikan. Begitu itu beres, dicek datanya sekali lagi (ternyata memang sudah berhenti berubah sejak beberapa hari lalu, jadi aman), baru SIMAK benar-benar berhenti jalan.
Dengan itu, tujuh sistem lama sekaligus sudah tidak jalan lagi malam ini — bukan cuma SIMAK. Semuanya masih ada datanya, cuma tidak jalan lagi, jaga-jaga kalau suatu saat perlu dilihat lagi.
Yang ketemu waktu lagi beres-beres
Di tengah beres-beres itu saya iseng minta dicek ulang satu sistem lama lainnya, eService, yang menangani tiket servis dan kas cabang. Ternyata ada jalur masuk ke sistem itu yang seharusnya cuma bisa lewat jalur terenkripsi, tapi ternyata masih bisa ditembus tanpa lewat jalur itu sama sekali — celah kecil yang sudah lama nganggur di sana, tak pernah kepikiran untuk dicek.
Sudah ditutup malam ini juga. Sempat ada momen deg-degan sebentar — waktu ditutup, eService malah sempat tidak bisa diakses sama sekali, karena jalur yang benar ikut ketutup juga. Untung cepat ketahuan dan langsung dibetulkan.
Sekalian dibenahi selagi di situ
Karena sudah kebuka kodenya, saya sekalian minta ditambahkan dua hal yang lama saya pikirkan untuk eService: nomor ID karyawan yang sama dengan SATU (biar tidak perlu tebak-tebakan siapa yang mana), dan tombol nonaktifkan karyawan yang keluar — bukan cuma tombol hapus seperti sebelumnya.
Yang terakhir ini yang bikin saya lega ternyata dicek dulu sebelum dikerjakan: tombol hapus yang lama itu, kalau dipakai ke karyawan yang sudah pernah mencatat transaksi kas, bisa ikut menghapus permanen seluruh riwayat kas yang pernah dia catat. Bertahun-tahun tombol itu ada di situ, dan baru sekarang ketahuan risikonya — untung belum pernah benar-benar dipakai ke orang yang salah.
Kodenya sendiri, saya baru sadar, tidak pernah punya riwayat perubahan sama sekali sejak dibangun — jadi sebelum apa pun diubah, dibuatkan dulu itu semua, plus salinan cadangan penuh. Baru setelah itu aman untuk mulai menambal.
Yang saya bawa dari malam ini
Membangun sesuatu yang baru selalu terasa lebih memuaskan daripada beres-beres yang lama. Tapi malam ini justru sebaliknya — bagian paling berharga bukan fitur baru yang saya tambahkan di eService, tapi celah yang ketemu waktu sedang tidak mencarinya, dan tombol berbahaya yang sudah lama ada tanpa saya sadari risikonya. Kadang yang paling penting itu bukan yang sedang dicari.