Loading creator page
panduan

Di fase 0-to-1, kalimat yang paling sering menyelamatkan tim adalah:
Jangan overthink. Ship dulu.
Requirement masih berubah. User belum tentu datang. Banyak keputusan bisa dibatalkan tanpa merusak apa pun. Membangun fondasi untuk masa depan yang belum tentu terjadi justru memperlambat proses belajar.
Jadi tim memilih jalan paling pendek. Satu flow. Satu use case. Satu implementasi yang cukup untuk menguji apakah problem-nya nyata. Keputusan itu benar.
Masalahnya muncul ketika bisnis tumbuh, codebase membesar, dan leader masih memakai definisi kecepatan yang sama. Workaround yang dulunya murah mulai dipakai oleh beberapa tim. Interface yang tadinya internal mulai punya banyak consumer. Keputusan yang dulu bisa dibatalkan dalam satu hari sekarang membutuhkan koordinasi lintas domain.
Tim masih ship cepat. Tapi setiap perubahan berikutnya menjadi lebih lambat.
Saat problem dan pasarnya belum jelas, tujuan utama engineering bukan membangun sistem yang sempurna. Tujuannya mengurangi ketidakpastian.
Apakah user benar-benar membutuhkan flow ini?
Apakah proses bisnisnya bekerja?
Apakah constraint yang kita bayangkan memang muncul di dunia nyata?
Di fase ini, solusi sederhana punya nilai besar. Bukan karena solusi itu akan dipakai selamanya, tapi karena dia memberi jawaban lebih cepat.
Kalau satu provider payment sudah cukup untuk menguji produk, integrasikan satu provider. Jangan membangun orchestration layer untuk lima provider yang belum ada.
Kalau satu tim adalah satu-satunya consumer sebuah service, jangan buru-buru menyebutnya platform. Shared library, endpoint internal, atau bahkan implementasi langsung bisa menjadi pilihan yang lebih jujur.
Kecepatan di 0-to-1 adalah seberapa cepat tim bisa belajar tanpa membuat komitmen yang belum diperlukan.
Begitu pola yang sama mulai berulang, definisi kecepatan berubah. Provider payment baru kembali membutuhkan diskusi tentang lifecycle yang sama. Tim baru kembali membangun retry logic sendiri. Beberapa service kembali membuat definisi berbeda untuk state yang seharusnya satu.
Setiap implementasi individual masih terlihat cepat. Tapi organisasi membayar keputusan yang sama berkali-kali.
Di fase ini, jalan paling pendek untuk satu tim belum tentu menjadi jalan paling cepat untuk bisnis. Shortcut yang menghemat dua hari untuk satu feature bisa menciptakan dua bulan koordinasi ketika lima tim harus mengubahnya bersama-sama.
Kecepatan saat scale bukan sekadar berapa cepat satu tim selesai. Kecepatan adalah berapa banyak keputusan lama yang tidak perlu dibuka kembali setiap kali use case baru datang.
Tim bisa salah dari dua arah.
Pertama, memakai cara berpikir scale terlalu awal. Mereka melihat satu use case, lalu langsung membangun platform generik. Interface dibuat untuk consumer yang belum ada. Configuration ditambah untuk variasi yang masih hipotetis. Roadmap dipenuhi fondasi yang nilainya belum bisa dibuktikan.
Ini overbuild yang paling mudah dikenali.
Kedua, memakai cara berpikir 0-to-1 terlalu lama. Setiap kebutuhan baru tetap dianggap kasus khusus. Setiap tim diberi kebebasan membuat solusi sendiri. Building block bersama terus ditunda karena “belum perlu dibuat sempurna.”
Enam bulan kemudian, ada lima implementasi untuk masalah yang sama dan tidak ada satu pun yang bisa dihapus dengan aman.
Ini juga overbuild. Bukan dalam bentuk satu platform besar, tapi dalam bentuk banyak solusi kecil yang menumpuk karena pola yang sudah jelas tidak pernah dikunci.
0-to-1 dan scale bukan label berdasarkan headcount, funding stage, atau umur perusahaan. Satu bagian produk bisa sudah berada di fase scale sementara bagian lain masih mencari bentuk.
Payment lifecycle mungkin sudah stabil dan dipakai banyak tim. Feature baru untuk segmen user yang belum terbukti masih berada di fase eksperimen. Keduanya tidak seharusnya menerima tingkat investasi arsitektur yang sama.
Ada tiga sinyal yang lebih berguna daripada ukuran perusahaan:
Repetition: masalah dan keputusan yang sama muncul di lebih dari satu use case atau tim.
Stability: bagian yang tidak berubah mulai terlihat, meskipun implementasinya berbeda.
Compounding cost: setiap solusi baru membuat perubahan berikutnya lebih mahal, bukan lebih murah.
Kalau ketiganya belum ada, platform mungkin terlalu dini. Kalau ketiganya sudah jelas dan tim masih menambah workaround, platform mungkin sudah terlambat.
Service tidak otomatis menjadi platform hanya karena dipakai lebih dari satu tim. Platform adalah keputusan bahwa sebuah capability akan diperlakukan sebagai fondasi untuk consumer lain.
Itu berarti ada kontrak yang jelas. Ada owner. Ada ekspektasi reliability. Ada aturan perubahan. Ada keputusan tentang siapa yang dilayani dan bottleneck apa yang diselesaikan.
Tanpa komitmen itu, shared service hanya menjadi dependency yang tidak diakui. Semakin banyak tim memakainya, semakin besar koordinasi yang muncul setiap kali interface berubah.
Platform thinking dimulai ketika leader berani mengatakan:
Capability ini cukup penting untuk kita jaga sebagai kontrak. Yang lain tidak.
Keputusan kedua sama pentingnya dengan yang pertama. Tidak semua helper, service, atau workflow harus dinaikkan menjadi platform.
“Ini akan reusable” bukan alasan yang cukup untuk membangun platform. Reusable adalah prediksi. Roadmap membutuhkan bukti.
Siapa user internalnya?
Apa bottleneck yang mereka alami hari ini?
Berapa kali masalah itu sudah berulang?
Perubahan terukur apa yang seharusnya terjadi setelah capability ini tersedia?
Internal platform yang bertujuan “meningkatkan developer experience” terlalu kabur untuk dievaluasi. Platform yang bertujuan mengurangi setup environment dari empat jam menjadi dua puluh menit untuk delapan tim punya user, problem, dan ukuran keberhasilan yang jelas.
Kalau bottleneck-nya tidak bisa disebutkan secara spesifik, kemungkinan besar tim sedang membangun dari excitement terhadap solusi, bukan kebutuhan consumer.
Semakin tinggi posisi leadership, pertanyaannya bukan lagi “apakah kita perlu membangun platform?” Pertanyaannya: apakah investasi ini mengubah kemampuan bisnis untuk bergerak?
Platform work sering kalah di roadmap karena dampaknya tidak langsung terlihat di metric perusahaan minggu ini. Sementara feature baru punya angka yang lebih mudah dibawa ke meeting: conversion, revenue, activation, atau retention.
Tapi ini bukan berarti platform adalah pekerjaan sampingan yang dikerjakan saat roadmap longgar.
Kalau setiap provider baru membutuhkan diskusi lifecycle dari nol, setiap tim membangun retry logic sendiri, atau setiap perubahan kecil harus melewati koordinasi lintas domain, metric perusahaan juga sedang ditahan. Hanya bentuknya tidak muncul sebagai satu angka yang rapi.
Tugas leader adalah menerjemahkan compounding cost itu menjadi bottleneck yang bisa diputuskan bisnis.
Bukan berkata, “kita perlu platform agar scalable.”
Tapi berkata, “enam team-hours habis setiap kali provider baru masuk. Capability ini akan mengurangi lead time integrasi, sehingga product bisa membuka use case berikutnya tanpa mengulang keputusan yang sama.”
Platform tidak berhak mendapat roadmap hanya karena reusable. Ia harus punya hipotesis yang bisa diuji:
bottleneck apa yang sedang menghambat metric bisnis;
siapa consumer internal yang merasakan bottleneck itu;
perilaku apa yang akan berubah jika capability ini tersedia;
kapan investasi ini dinilai tidak menghasilkan dampak yang dijanjikan.
Di level leadership, menjaga metric hari ini dan membangun platform yang compound bukan dua pekerjaan yang saling bertentangan.
Mereka baru bertentangan ketika platform dibangun tanpa consumer nyata, atau ketika metric hari ini dikejar dengan workaround yang membuat metric besok semakin mahal untuk digerakkan.
Leader yang matang tidak memilih antara impact sekarang dan compounding nanti. Ia memastikan investasi hari ini menciptakan kapasitas untuk impact berikutnya.
Sebelum menambah building block baru, saya memakai urutan ini:
Satu kebutuhan nyata: implementasikan jalan paling sederhana untuk belajar.
Pola mulai berulang: catat kesamaan dan perbedaannya, jangan langsung abstraksikan.
Boundary sudah terlihat: kunci kontrak minimum yang benar-benar stabil.
Beberapa consumer bergantung padanya: tetapkan owner, reliability, dan aturan perubahan, lalu perlakukan sebagai platform.
Berhenti di tahap pertama yang sudah cukup. Tidak semua kebutuhan harus naik sampai tahap keempat.
Tangga ini mencegah dua kesalahan sekaligus: membangun platform sebelum pola terlihat dan terus menambah patch setelah pola tidak bisa lagi diabaikan.
AI bisa membuat service baru, adapter baru, dan abstraction baru dengan sangat cepat. Itu membuat platform prematur terlihat murah untuk dibangun.
Di sisi lain, AI juga membuat workaround baru terlihat lebih murah daripada menyatukan capability yang sudah terfragmentasi.
Code memang menjadi murah. Commitment, ownership, migration, dan koordinasi tidak.
Karena itu, pertanyaan leader bukan “seberapa cepat kita bisa membangun building block ini?” Pertanyaannya:
Apakah pola ini sudah cukup nyata untuk menjadi komitmen bersama?
Di 0-to-1, jangan membangun masa depan sebelum kamu memahami problem hari ini. Saat scale, jangan terus memperlakukan pola yang sudah terbukti sebagai kasus baru.
Kecepatan bukan satu praktik yang dipertahankan selamanya. Kecepatan adalah kemampuan mengubah cara mengambil keputusan ketika bukti di depanmu sudah berubah.
Enjoy Arya Nugroho's content?
Support the creator so they can keep making things.