Flutter · Mobile Architecture · 5+ years
I build mobile products with Flutter, with a focus on architecture, real-time communication, native platform integrations, and reliable production delivery. Recent work spans large-scale consumer apps, real-time voice and video, and end-to-end encrypted messaging.
Maintainable Flutter applications, modular feature architecture, and offline-first systems that hold up as products grow.
Chat, WebSocket, WebRTC, LiveKit, VoIP push, and CallKit — the pieces that make live communication reliable.
iOS and Android capabilities that go beyond standard Flutter UI, from platform channels to hardware-backed security.
Working across product discovery, technical design, implementation, release, analytics, and production iteration.
Production Flutter across consumer, fintech, AI, and real-time communication — each with a different set of constraints on iOS and Android.

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

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

Large-scale Islamic super app — Quran, prayer times, donation flows, and SSO across 5 web services, grown to more than 2 million users.

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

Regulated fintech app on Bank Indonesia's SNAP standard — hardened with RASP, encryption, and multi-layer auth.
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+, after a full architectural rebuild.
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. With no dedicated PM or designer for mobile, I worked with the founding team to define scope and validate wireframes before building.
The chat module had encryption hooks. Sodium was already integrated. Adding E2EE should have taken a week. Then Signal Protocol showed up.
Full chronological history on LinkedIn.