ZentiumDev · Sri Lanka
I build and ship production Android software on my own — the app, the API, the admin panel and the server it runs on. Two case studies below, each written to show the decisions rather than the feature list.
Selected work
Results and ticket checking for all sixteen NLB and DLB games. Camera scanning of a printed ticket, a configuration-driven prize engine, and Sinhala, Tamil and English throughout. Live on Google Play.
KotlinComposeCameraXML Kit
KtorPostgreSQLVue 3
Read the case study →
Vaccination schedules and reminders for a whole household, built on four published immunisation schedules. No account, no server, no analytics — every record stays in app-private storage on the device.
KotlinComposeRoomHilt
WorkManagerAGP 9
Read the case study →
How I work
Both projects above were designed, built, deployed and published by me. That means the architecture decisions are mine to defend, and the case studies say what went wrong as well as what shipped — the interesting part of any of this is the problem that only showed up in production.
KotlinJetpack ComposeMaterial 3
RoomHiltWorkManagerCameraX
Coroutines / Flow
KtorSpring BootPostgreSQL
Exposednginxsystemd
Vue 3ReactTailwind CSSVite
Google PlayFirebase HostingDigitalOcean
Cloudflare