Flutter at scale · 5+ years
I build and scale cross-platform Flutter apps for iOS and Android. Scaled a SuperApp to 2M+ active users, processed IDR 6.3B+ in donations, and shipped real-time voice and video, multimodal AI, and end-to-end encrypted messaging in production. I focus on mobile architecture and performance — the parts that decide whether an app holds up as it grows.
Production Flutter across fintech, social, AI, and open source — each a different set of constraints in iOS and Android.

Secure team communication with FIDO2 biometric auth, end-to-end encryption, and real-time voice/video calls.

Multimodal AI chatbot with speech-to-speech interaction and real-time audio streaming over WebSocket.

Islamic super app for 2M+ active users — Quran, prayer times, donation processing, and SSO across 5 web services.

Link-in-bio and microsite builder. Sole mobile engineer — 10K+ downloads, 4.67★ on Play Store.

Regulated fintech app on Bank Indonesia's SNAP standard — hardened with RASP, encryption, and multi-layer auth.
Mentored bootcamp students in React Native & Node.js, and built an internal app to replace manual operations.
On mobile architecture, real-time systems, and engineering judgment.
When I joined NU Online in 2020, the app had 40,000 users. Two years later: 1.6M+. The growth didn't happen by accident.
The server was hanging with 5 users. These weren't bugs — they were the predictable consequences of an architecture that wasn't designed for real-time communication.
The UI and the audio pipeline were competing for the same thread. Three things happening simultaneously created a problem we didn't anticipate.
When I joined S.ID, the mobile app did not exist. No PM, no designer, no spec. So I became the person who wrote it.
The chat module had encryption hooks. Sodium was already integrated. Adding E2EE should have taken a week. Then Signal Protocol showed up.