Articles, architectural insights, and tutorials on Kotlin, Jetpack Compose, Flutter, Laravel, Nuxt, and modern engineering practices.

As a photographer, I kept wishing my phone camera felt more like film. So I built Rolla: EXIF photo frames, film simulation filters, Polaroid mode, and a light meter, all in one camera app.
Pinned A Xendit SDK integration kept failing, card payments and transactions with nothing in our logs to explain why. It took a full day of debugging alongside Xendit's engineers to trace it to a conflict with Microsoft Clarity.

I didn't plan to become the person who understands attribution, analytics, and marketing tooling better than most engineers do. It started with a small assignment at Cashbac: connect Mixpanel and AppsFlyer. I ended up learning six different platforms across two companies, and along the way, learning how to work with digital marketing, frontend, product, and analytics teams well enough that they trust me with their data.

Every merchant needed two imported BLE beacons for payment and visit tracking. I turned Android phones into beacon transmitters instead, no extra hardware required.

In a job interview, I was asked if I could migrate a legacy Android app from Eclipse to Android Studio. I said yes. Three days into the job, I had to prove it, on UANGKU, a mobile e-wallet later acquired by Traveloka.
Pinned In February 2014, Jakarta flooded and I had nothing to do. I built an unofficial Android app for MyBOLT! 4G subscribers to check their data quota. A month later, it got me hired to build the official app.