PROJECT / 01
NusaBoard
Multi-unit operational dashboard without duplicated logic.
- ROLE
- Web Developer, Software Architect
- YEAR
- 2026
- STACK
- Laravel, Vue, PostgreSQL
- STATUS
- SHIPPED ✓
THE PROBLEM
Setiap unit bisnis punya spreadsheet dan alur laporan sendiri. Data sama, definisi beda, rekonsiliasi memakan waktu berhari-hari setiap akhir bulan.
CONTEXT
Sistem harus melayani 4 unit bisnis dengan aturan approval berbeda, di atas infrastruktur tunggal yang terbatas.
CONSTRAINTS
- •Existing database
- •Multiple user roles
- •Limited infrastructure
- •Tight delivery window
- •Legacy reporting habits
SOLUTION
Satu modular monolith: domain per unit terisolasi sebagai module, business rules terpusat di service layer, satu sumber kebenaran untuk definisi laporan.
ARCHITECTURE
SVG/HTML diagram — accessible, selectable, SEO-friendly. No WebGL here on purpose.
TECHNICAL DECISIONS
WHY THIS STACK?
Laravel mempercepat delivery auth, queue, dan validasi. PostgreSQL menjamin integritas laporan. Redis untuk cache ringkasan harian.
WHY NOT MICROSERVICES?
Tim kecil, domain belum stabil. Microservices akan menambah biaya operasi tanpa manfaat yang jelas. Modular monolith memberi batas yang sama dengan biaya lebih rendah.
TRADE-OFF?
Deploy adalah satu unit — satu deploy buruk memengaruhi semua module. Dimitigasi dengan test per module dan feature flag.
WHAT WOULD I CHANGE AT 10× SCALE?
Pisahkan read model laporan ke worker + materialized view, dan ekstraksi notification service lebih dulu.
RESULT
- ✓ Centralized business logic
- ✓ Reduced duplicated processes
- ✓ Approval workflow 7 steps → 2 steps
- ✓ Improved response time on summary pages
LESSONS
Definisi data adalah fitur. Waktu yang dihabiskan menyamakan definisi antar unit menghemat lebih banyak waktu daripada optimasi query apa pun.