SUMMARY
I build interfaces people enjoy using and systems engineers don't have to apologize for. Fokus: web application end-to-end — dari UX sampai arsitektur, database, dan deployment.
SYSTEM STACK
- FRONTEND
- Blade, Vue, Tailwind, GSAP
- BACKEND
- Laravel, PHP, Node
- DATABASE
- PostgreSQL, MySQL, Redis
- API
- REST, validation, rate limiting
- ARCHITECTURE
- Modular monolith, queues, caching
- INFRASTRUCTURE
- Nginx, Docker, CI/CD
- DEVOPS
- Deploy, backup, observability
- SECURITY
- Auth, RBAC, XSS/CSRF/SQLi hygiene
SELECTED WORK
NusaBoard · 2026
Multi-unit operational dashboard without duplicated logic.
Laravel / Vue / PostgreSQL / Redis / Tailwind
Arus Dana · 2025
Finance workflow users finish in 2 steps, not 7.
Laravel / Blade / MySQL / Alpine.js
SekolahHub · 2025
Academic system: grades, attendance, and sanity.
Laravel / Livewire / MySQL / Tailwind
Katalog UMKM · 2024
Catalog + ordering for small businesses that just works.
Laravel / Blade / SQLite / Tailwind
Antrean Pintar · 2024
Queue system with realtime display and zero drama.
Laravel / Reverb / MySQL / Tailwind
Audit Trail Service · 2026
Who changed what, when — answered in one query.
Laravel / PostgreSQL / Queues
PRINCIPLES
- SIMPLE BEFORE CLEVER. — Kode pintar yang tidak bisa dijelaskan dalam 2 menit adalah kode yang salah.
- ARCHITECTURE SHOULD SERVE THE PRODUCT. — Arsitektur bukan tujuan. Produk yang hidup lebih penting dari diagram yang indah.
- PERFORMANCE IS A FEATURE. — Setiap 100ms adalah keputusan desain. Lambat adalah bug yang sopan.
- CODE IS A LIABILITY. WRITE LESS OF IT. — Baris kode terbaik adalah yang tidak perlu ditulis. Yang kedua terbaik adalah yang mudah dihapus.
- IF USERS DON'T UNDERSTAND IT, THE SYSTEM IS NOT DONE. — UX yang membingungkan adalah arsitektur yang belum selesai.