From Prototype to Production
What changes when a demo becomes load-bearing. The cuts, the rewrites, and the thing nobody tells you.
The demo worked perfectly. Then we turned it on for real users and everything broke.
What Changes at Production
Three things nobody tells you about the prototype → production transition:
1. Error handling becomes the product A prototype can throw exceptions. A production system needs to fail gracefully, surface actionable errors, and recover without human intervention.
2. Observability is a feature You can't debug what you can't see. Adding logging, metrics, and tracing after the fact is 10x harder than building it in from the start.
3. Your data assumptions are wrong Real users produce data shapes you never imagined. The edge cases that seemed theoretical in design become the majority of your support tickets.
The Rewrites I've Had to Do
At Amazon, the prototype validation logic was a series of if/else checks in a single function. The production version is a proper pipeline with separate validation, enrichment, and recovery stages, each independently testable and observable.
The rewrite took longer than the original prototype. That's normal. The prototype was exploring the problem space. The production version is solving it.
— Amisha
Filed under: Product Engineering