Our mind is trained to hope and prepare for the best but that’s slightly off from the reality. Not everything goes as per the plan and as a manager, we must plan for things which are unexpected.
Recently, at The Good Glamm Group, we completed a major database migration and infra change for the primary DBs. The goal was to carry this exercise with Zero downtime. We failed 4-5 times in our POC and we reached a stage where the chances of failure were less than 1%.
In this case too, we prepared for the worst i.e. 1% and ensure that our system is ready to tackle that 1% failure. The activity was finally completed without any downtime and any additional failures. This kind of preparation gave us confidence in the whole process.
In a development cycle, you will come across many instances where you need to be prepared for the worst and a fail-safe must be built along with a new feature. It can be a feature flag or some kind of phased roll out or A/B test. These all are different methods to measure impact of the feature and in case of failure, you can easily either turn it off or have a way to reverse the action in no time.
So ending with what Maya Angelou stated “Hoping for the best, prepared for the worst, and unsurprised by anything in between.”