MyFamilyTracker
Real-time family location sharing — Firebase Realtime DB for sub-second propagation, WorkManager + ForegroundService for OS-compliant background collection, geofencing via Google Maps API.
The repeatable process I use to take a small Android app from idea to a live Play Store listing in about two weeks, solo — what I build, what I deliberately skip, and where the time actually goes.
On this page
People assume the hard part of shipping an app is the code. After doing this twenty-plus times, the code is rarely the bottleneck. The bottleneck is scope creep, store paperwork, and the long tail of "almost done." A repeatable two-week process exists because I've removed the decisions that used to eat days. Here's the shape of it.
Before any code, I write down the one thing the app does and an explicit list of what it will not do in version one. The non-goals list is the most valuable document in the project — it's what I point to when I'm tempted to add a feature on day nine.
App: water reminder
Does: log intake, remind on a schedule, show a daily goal
v1 will NOT: sync across devices, integrate health APIs, gamifyIf I can't describe it in two sentences, it isn't scoped yet.
I scaffold with my standard stack — Kotlin, Compose, MVVM, Hilt, Room, StateFlow — so there are no architecture decisions to relitigate. Then I build the single core loop end to end and nothing else. One screen that does the main job, persisted locally, working.
The discipline that keeps this to days instead of weeks: no speculative abstraction. One ViewModel, not a base class. One Room query, not a generic DAO framework. The app does one thing; the code should look like it.
Now the unglamorous part that separates shipped apps from prototypes:
This is usually where I find the bug that would have generated my first one-star review.
The work nobody warns you about. Each of these is small; together they're a day:
I keep templates for all of it so this is filling blanks, not writing from scratch. The first time you do it, budget double.
I push an AAB — never an APK — to an internal testing track, install it from the Play Store itself, and run the full app one more time as a user would. That last pass catches signing and configuration issues the debug build hides. Then I promote to production and tag the release in git so I can reproduce exactly what shipped.
Analytics dashboards, A/B infrastructure, onboarding carousels, settings nobody asked for. They can come after real users exist. Shipping the focused version and learning from it beats polishing features in the dark.
The timeline isn't about working fast; it's about working bounded. A two-week box forces decisions that an open-ended schedule lets you avoid. When you know the deadline is close, you cut the feature you were going to add "just in case," because there's no room for it. That pressure is a feature, not a bug — most of what I would have built in a two-month version turns out to be stuff no user ever asked for. The constraint does the prioritization that I'm too optimistic to do on my own.
The deeper reason is that the first version exists to answer a question: does anyone want this? You cannot answer that from inside your own head, and you cannot answer it from a half-built prototype on your machine. You answer it by shipping something real and watching what happens. Every week spent polishing before launch is a week spent improving a guess. Shipping the focused version in two weeks means I start learning from reality two weeks in instead of two months in, and reality is a far better product manager than my imagination.
There's a compounding effect across many apps, too. When shipping is a two-week process instead of an open-ended slog, the cost of trying an idea drops low enough that I can afford to be wrong. Most apps won't take off, and that's fine — a cheap, repeatable shipping process means a miss costs two weeks, not two months, and the occasional hit more than pays for the rest. The process is what makes a portfolio of focused apps viable for one person at all.
Sudarshan Chaudhari
AI Systems Builder / Product Engineer
Bangkok, Thailand
Solo Android developer with 13+ years in QA, building Android apps, AI automation systems, and developer tools at SudarshanTechLabs.
Related Posts
Related Apps
Real-time family location sharing — Firebase Realtime DB for sub-second propagation, WorkManager + ForegroundService for OS-compliant background collection, geofencing via Google Maps API.
Building something? Available for Android dev and QA consulting.
Work with meComments — powered by Giscus