At a startup, if you have a working/semi working product that is demonstrable (demo-able) the last thing you need is for your product to unexpectedly crash during a demonstration/ sales meeting/ investor meeting.
I was recently talking to a startup founder who was not able to demonstrate key features of the product due to a recent update that had rendered parts of the application inoperable.
Here are a few techniques you can do to ensure that your product is stable enough to always have key workflows be demo-able on demand (from most to least confidence):
- Staging environment (then test all workflows to be demo-ed prior to rolling out changes to production)
- Automated end-to-end software tests
- Have each developer test every major workflow before they release the latest batch of changes (time to do this will grow as your product grows)
- Feature flags (put new untested features behind a flag and demo only the older, more reliable features)
If you don’t have the resources/ time/ money for the above consider:
Reverse Release Gating
Don’t release untested software into production prior to important product demonstrations. Release only to production when you have both:
- Time to test out the major workflows before demo-ing your product; and
- Time to rollback new changes that made your app un-demo-able.
This should help you avoid having your application crash during key demonstrations and let you demo your product with greater confidence.