<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Cerita on Blogfolio Najib</title>
		<link>https://najib.id/tags/cerita/</link>
		<description>Recent content in Cerita on Blogfolio Najib</description>
		<generator>Hugo</generator>
		<language>id-ID</language>
		
		
		
			<copyright>This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.</copyright>
		
		
			<lastBuildDate>Thu, 10 Sep 2026 16:50:44 +0700</lastBuildDate>
		
			<atom:link href="https://najib.id/tags/cerita/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Hijrah Backend (1): Hari Pertama Disodori Warisan 370&#43; Endpoint</title>
				<link>https://najib.id/writing/2026/hijrah-backend-01/</link>
				<pubDate>Thu, 10 Sep 2026 15:30:00 +0700</pubDate>
				<guid>https://najib.id/writing/2026/hijrah-backend-01/</guid>
				<description>&lt;p&gt;Cerita ini sebenarnya dimulai sebelum saya diterima kerja.&lt;/p&gt;&#xA;&lt;p&gt;Di sebuah perusahaan GPS tracking di Surabaya, salah satu senior tim mendapat mandat me-&lt;em&gt;rewrite&lt;/em&gt; sistem eksisting. Sampai hari ini saya tidak tahu persis apa yang dibicarakan di rapat internalnya; yang saya tahu hanya hasilnya: mereka memutuskan pindah ke Go. Dan baru setelah keputusan itu mantap, lowongan pun dibuka.&lt;/p&gt;&#xA;&lt;p&gt;Jadi posisi saya di rekrutmen itu unik: saya tidak melamar sebuah pekerjaan, saya melamar sebuah keputusan yang sudah diambil orang lain hehe.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Hijrah Backend (2): Anatomi Endpoint 15 Detik</title>
				<link>https://najib.id/writing/2026/hijrah-backend-02/</link>
				<pubDate>Thu, 10 Sep 2026 15:30:00 +0700</pubDate>
				<guid>https://najib.id/writing/2026/hijrah-backend-02/</guid>
				<description>&lt;p&gt;Di &lt;a href=&#34;https://najib.id/writing/2026/hijrah-backend-01/&#34;&gt;episode sebelumnya&lt;/a&gt; saya menyinggung soal satu &lt;em&gt;endpoint&lt;/em&gt; yang bisa makan 15 detik sekali panggil. Episode ini cerita lengkapnya, karena perjalanan mencari penyebabnya adalah salah satu &lt;em&gt;debugging&lt;/em&gt; paling mengedukasi yang pernah saya alami. Bukan karena rumit, tapi karena saya salah berulang kali dengan penuh percaya diri hehe~&lt;/p&gt;&#xA;&lt;h2 id=&#34;sebuah-klik-17-detik&#34;&gt;Sebuah Klik, ±17 Detik &lt;a href=&#34;#sebuah-klik-17-detik&#34; class=&#34;tdln dimmer&#34;&gt;&lt;small&gt;#&lt;/small&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Korbannya: &lt;em&gt;endpoint&lt;/em&gt; estimasi bahan bakar per grup kendaraan. Satu klik di &lt;em&gt;dashboard&lt;/em&gt;, lalu menunggu. ±17 detik lebih sedikit, setiap kali. Untuk ukuran &lt;em&gt;dashboard&lt;/em&gt; yang diakses tiap hari, itu terasa seperti &lt;em&gt;loading&lt;/em&gt; jaman &lt;em&gt;dial-up&lt;/em&gt; hahaha.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Hijrah Backend (3): Mem-_port_ Puluhan Parser Protokol GPS Tanpa Menghentikan Armada</title>
				<link>https://najib.id/writing/2026/hijrah-backend-03/</link>
				<pubDate>Thu, 10 Sep 2026 15:30:00 +0700</pubDate>
				<guid>https://najib.id/writing/2026/hijrah-backend-03/</guid>
				<description>&lt;p&gt;Mari mulai dari laporan paling membingungkan yang pernah saya tangani: ada kendaraan yang sedang parkir, mesin mati, tapi sistem membaca kecepatannya &lt;strong&gt;66 km/jam&lt;/strong&gt;. Satelitnya juga ramai, datanya masuk terus. Kalau Anda penasaran bagaimana akhirnya sebuah tanda baca yang salah bisa membuat mobil parkir ngebut, cerita ini untuk Anda hehe~&lt;/p&gt;&#xA;&lt;h2 id=&#34;rewind-januari-2025&#34;&gt;Rewind: Januari 2025 &lt;a href=&#34;#rewind-januari-2025&#34; class=&#34;tdln dimmer&#34;&gt;&lt;small&gt;#&lt;/small&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Seperti yang dibahas di &lt;a href=&#34;https://najib.id/writing/2026/hijrah-backend-01/&#34;&gt;episode pertama&lt;/a&gt;, mandat migrasi sudah menunggu sejak sebelum saya diterima kerja. Salah satu bagian terbesarnya jatuh ke tangan saya: protokol. Pintu masuk seluruh data armada.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Hijrah Backend (4): Kode Lama sebagai _Executable Spec_</title>
				<link>https://najib.id/writing/2026/hijrah-backend-04/</link>
				<pubDate>Thu, 10 Sep 2026 15:30:00 +0700</pubDate>
				<guid>https://najib.id/writing/2026/hijrah-backend-04/</guid>
				<description>&lt;p&gt;Kalau boleh merangkum satu aturan yang memegang kendali penuh atas migrasi ini, kualimatkan begini: &lt;strong&gt;yang benar adalah yang lama.&lt;/strong&gt;&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Kedengarannya menyebalkan, saya tahu. Kamu dipercaya memindahkan sistem ke bahasa baru, dan aturan nomor satu-nya justru: jangan berubah apa-apa. Bukan lebih cepat. Bukan lebih bersih. Bukan lebih baik. &lt;strong&gt;Identik.&lt;/strong&gt; Tulisan ini bedah kenapa aturan yang anti-klimaks itu justru keputusan paling masuk akal yang pernah saya jalani hehe~&lt;/p&gt;&#xA;&lt;h2 id=&#34;kenapa-sistem-baru-harus-setia-pada-sistem-lama&#34;&gt;Kenapa Sistem Baru Harus Setia pada Sistem Lama &lt;a href=&#34;#kenapa-sistem-baru-harus-setia-pada-sistem-lama&#34; class=&#34;tdln dimmer&#34;&gt;&lt;small&gt;#&lt;/small&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Alasannya bukan nostalgia. Ada tiga alasan yang sangat pragmatis.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Hijrah Backend (5): Query yang Bilang &#39;Pakai _Index_-ku&#39;</title>
				<link>https://najib.id/writing/2026/hijrah-backend-05/</link>
				<pubDate>Thu, 10 Sep 2026 15:30:00 +0700</pubDate>
				<guid>https://najib.id/writing/2026/hijrah-backend-05/</guid>
				<description>&lt;p&gt;Di &lt;a href=&#34;https://najib.id/writing/2026/hijrah-backend-02/&#34;&gt;episode kedua&lt;/a&gt;, query-nya tidak bersalah, 78 milidetik di CLI, sementara &lt;em&gt;endpoint&lt;/em&gt;-nya makan 15 detik. Episode ini cermin kebalikannya: kali ini query-nya benar-benar bersalah. Tapi bukan karena rumit atau jelek, dia bersalah karena satu pembungkus fungsi kecil yang membuatnya &lt;strong&gt;mendiamkan &lt;em&gt;index&lt;/em&gt; yang disiapkan khusus untuknya&lt;/strong&gt; hehe~&lt;/p&gt;&#xA;&lt;h2 id=&#34;index-yang-dirancang-sempurna-dikali-tiga&#34;&gt;&lt;em&gt;Index&lt;/em&gt; yang Dirancang Sempurna (Dikali Tiga) &lt;a href=&#34;#index-yang-dirancang-sempurna-dikali-tiga&#34; class=&#34;tdln dimmer&#34;&gt;&lt;small&gt;#&lt;/small&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Korbannya: &lt;em&gt;endpoint&lt;/em&gt; hitungan &lt;em&gt;alert&lt;/em&gt; per &lt;em&gt;device&lt;/em&gt;. Satu tabel &lt;em&gt;alert&lt;/em&gt; berisi puluhan juta baris,&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; dan di atasnya ada &lt;em&gt;index&lt;/em&gt; komposit: (tanggal, &lt;em&gt;device&lt;/em&gt;, tipe &lt;em&gt;alert&lt;/em&gt;). Kalau kamu membaca kebutuhan &lt;em&gt;endpoint&lt;/em&gt;-nya, &amp;ldquo;ambil jumlah &lt;em&gt;alert&lt;/em&gt; per &lt;em&gt;device&lt;/em&gt; per tipe, dalam rentang tanggal&amp;rdquo;, &lt;em&gt;index&lt;/em&gt; itu persis seperti dibuat untuk &lt;em&gt;query&lt;/em&gt; ini. Seseorang di masa lalu memahami masalahnya dengan benar.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Hijrah Backend (6): Merapikan _Monolith_, Pesawatnya Tetap Terbang</title>
				<link>https://najib.id/writing/2026/hijrah-backend-06/</link>
				<pubDate>Thu, 10 Sep 2026 15:30:00 +0700</pubDate>
				<guid>https://najib.id/writing/2026/hijrah-backend-06/</guid>
				<description>&lt;p&gt;Sistem Go hasil migrasi saya lahir dengan satu penyakit warisan. Semua repositori tidur dalam dua folder raksasa bernama &lt;code&gt;repository&lt;/code&gt; dan &lt;code&gt;usecase&lt;/code&gt;, campuran menjadi satu dari &lt;em&gt;alert&lt;/em&gt;, &lt;em&gt;billing&lt;/em&gt;, &lt;em&gt;geofence&lt;/em&gt;, sampai &lt;em&gt;fuel&lt;/em&gt;. Secara teknis tidak ada yang salah; secara mental, itu kota besar tanpa kecamatan. Mau cari rumah mana pun, kamu harus hafal seluruh kotanya.&lt;/p&gt;&#xA;&lt;p&gt;Episode ini cerita merapikan kota itu, menjadi 14 modul &lt;em&gt;domain&lt;/em&gt;, sambil &lt;em&gt;endpoint&lt;/em&gt;-endpoint-nya terus melayani produksi. Karena, Anda tahulah, tidak ada tombol jeda untuk sistem yang dipakai puluhan ribu orang hahaha.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Hijrah Backend (8): Refleksi 18 Bulan (Lebih atau Kurang)</title>
				<link>https://najib.id/writing/2026/hijrah-backend-08/</link>
				<pubDate>Thu, 10 Sep 2026 15:30:00 +0700</pubDate>
				<guid>https://najib.id/writing/2026/hijrah-backend-08/</guid>
				<description>&lt;p&gt;Ini episode terakhir berseri. Dan seperti yang sudah Anda duga dari judulnya, angka &amp;ldquo;18 bulan&amp;rdquo; itu sendiri perlu tanda kutip: kalau dihitung dari hari pertama sampai tulisan ini disusun, angkanya lebih dari itu. Tapi ya sudahlah, angka di &lt;em&gt;slide&lt;/em&gt; memang punya versi masing-masing; seri ini sejak awal memang cerita tentang selisihnya hahaha.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Tujuh episode sebelumnya sudah membahas pelajaran teknis satu per satu. Episode ini isinya sisanya: yang akan saya kerjakan beda, utang arsitektur yang saya janjikan sejak &lt;a href=&#34;https://najib.id/writing/2026/hijrah-backend-02/&#34;&gt;episode kedua&lt;/a&gt;, satu babak yang tidak jadi, dan terima kasih.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Hijrah Backend (9): Epilog, MySQL, PostgreSQL, Lalu MySQL Lagi</title>
				<link>https://najib.id/writing/2026/hijrah-backend-09/</link>
				<pubDate>Thu, 10 Sep 2026 15:30:00 +0700</pubDate>
				<guid>https://najib.id/writing/2026/hijrah-backend-09/</guid>
				<description>&lt;p&gt;Seri ini sudah ditutup di &lt;a href=&#34;https://najib.id/writing/2026/hijrah-backend-08/&#34;&gt;episode lalu&lt;/a&gt;. Tapi setiap perjalanan panjang selalu punya satu cerita yang tidak muat di badan utama, dan cerita ini memang terjadi setelah hampir semua episode lain ditulis. Anggap saja adegan pasca-kredit di film: layar sudah gelap, lampu sudah nyala, tapi ada satu adegan lagi hehe.&lt;/p&gt;&#xA;&lt;p&gt;Ini kisah tentang mesin &lt;em&gt;database&lt;/em&gt; yang diminta pindah haluan dua kali. Dan soal siapa yang pegang kemudi saat itu: bukan saya, dan Anda mungkin sudah bisa menebak hahaha.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
