Product & Startup Builder

Should you rebuild your platform from scratch?

Added on by Chris Saad.

I run into a lot of startups and larger enterprises who are somewhere along the journey of rebuilding their platform from the ground up.

There is a narrow set of legitimate reasons why you'd want to do this. And there is a narrow set of ways to do it well.

However, in most cases, rebuilding your platform from scratch is a mistake.

Why?

Because platform rebuilds almost invariably result in some combination of the following...

  • Engineers disappearing into a black hole for an indeterminant amount of time

  • Blown out timeframes that never seem to end

  • Building over-complicated tech that - when it finally ships - doesn't meet the needs of the customer

  • A constant battle to try to add new features or fix bugs in the legacy system while simultaneously hitting feature-complete with the new system (a moving target!)

  • Most importantly: Stalled value-creation for your customers

Instead - whenever possible - iterate your way to success. Break your product and platform down into small parts and improve each part one-by-one. Even of those iterations involve slightly larger refactoring projects of significant sub-systems. Do this in the order of "customer pain".

Finally, keep in mind that many engineers tend to push for re-writes. This is because it's often easier and more fun to start with a blank piece of paper than trying to live with legacy code while implementing an iterative improvement process. While this instinct is understandable, it can often be wrong for the product and the business. Pressure test this tendency hard.

Finally, as I said at the beginning - there are situations where rebuilding from scratch is necessary. That's a post for another day.