I shipped a working logistics dashboard MVP in three months, on the deadline pinned to the founder's investor presentations, so the startup could start user testing on schedule. The catch was that the backend didn't exist yet: the frontend had to be ready to wire up to an API that hadn't been built. The work came from a former CEO I'd worked with at Winc, who was launching a logistics and operations venture and needed something concrete to put in front of investors and validate the concept.
Building API-ready against a backend that didn't exist
With no backend to integrate against, I designed the component structure to scale later and planned explicit integration points where the API would eventually plug in, on TypeScript patterns that kept everything type-safe. For login I wired up AWS Cognito and built role-based access control on top of it, carving out distinct permission levels for the three user types: shippers got a dashboard for outbound logistics metrics, receivers got inbound tracking and delivery management, and sales teams got pipeline and customer views. The data visualization layer was chart-ready components built to take real-time updates once the API was live, with layouts responsive across desktop and tablet.
What I shipped
I delivered the MVP inside the three-month window and handed over complete documentation so the client's team could maintain and extend it without me. The whole engagement came from a relationship rather than a job board, which is its own reminder that earlier work pays off later; the discipline that made it work was scoping hard to the deadline while still building for the scale that would come.
What I took from it
Building API-ready components before the backend existed let both sides move in parallel instead of one waiting on the other, and that frontend-first sequencing is what kept a three-month MVP on schedule.
