Situation
This was a replatforming engagement that required leadership, strategy, and software architecture across three fronts: backend, web app, and mobile app.
A fitness app company had outgrown its Django backend. The product had momentum, but the platform was holding it back — and they knew the fix wasn’t a patch, it was a replatform. They hired me to lead it: strategize their data, move the backend to FastAPI, and get the front-end web app and mobile app rewritten against the new API.
The constraints were real. The timeline was limited, the data behind the product — users, workouts, history — couldn’t be put at risk, and three surfaces had to land together: backend, web, and mobile.
Approach
This was an engagement of leadership, strategy, and software architecture in equal measure.
Data strategy first. Before any code moved, we mapped the data: what the product actually needed, how the model should look on the other side, and how to migrate it safely. The migration plan was rehearsed and instrumented — integrity checks at every step, with a rollback path — because a data migration you can’t verify is a data migration you can’t trust.
Contract-first architecture. I designed the FastAPI backend around the product’s real access patterns and locked the API contract early. That one decision let the web and mobile rewrites run in parallel against a stable spec instead of chasing a moving backend.
Leadership across three fronts. With a fixed window, the job was as much sequencing as engineering: scoping ruthlessly, coordinating the backend, web, and mobile tracks, and staging the cutover so each piece proved itself before the next depended on it.
Outcome
- The backend moved from Django to FastAPI, architected for the product’s next stage rather than its past.
- The data migration landed cleanly — planned, rehearsed, and verified, with the integrity checks to prove it.
- The web app and mobile app shipped rewritten against the new API, delivered as one coordinated release rather than a big-bang gamble.
- All of it inside the limited timeline the engagement started with — because the strategy work up front is what made the delivery math hold.
Stack & tools