The team is called into their manager’s office once again and Thomas is nervous. His team has been losing people and is struggling to keep up with demand. The user response to the latest feature he spearheaded has not been positive. Everyone in the room is silent, waiting to see who their manager will be blaming this time. A few minutes of yelling and finger-pointing later, Thomas is packing his things, the latest member to be fired.
Organizations that punish failure create a culture of fear that gets in the way of innovation and growth. DevOps seeks to change this by viewing failure as a natural part of everyday work. Rather than having mistakes be punished, DevOps culture stresses the importance of failure as a learning opportunity.
Failure itself is never something that teams seek out. However, once failure is normalized, teams can be more open to experimentation. Teams can try out ambitious solutions, fail quickly, learn from those mistakes, and then experiment again. This cycle enables teams to regularly make product and process improvements, both big and small.
One method DevOps uses to normalize failure and learn from experimentation is through blameless retrospectives (or “post-mortems”). These retrospectives are meetings held at the end of a sprint, project, or issue resolution. Here, team members discuss what went well and the areas where they can improve.
What are some of the consequences of Thomas getting fired from his team after his failed product launch? If Thomas’ team were practicing DevOps culture, how might they have responded differently to the failed product launch?
Others may view Thomas’ failure, and subsequent removal from the team, as a warning sign that failure is not tolerated. They may be less likely to propose ambitious product features and growth at the company may stall out.
If his team had been following DevOps culture, they may have instead held a blameless retrospective to learn from the failure and continue to release ambitious features.
When practicing retrospectives, teams should use data to identify areas of improvement. In the next exercise, we’ll look at how DevOps teams incorporate metrics into their processes to inform their decision-making.
Meme citation: Fred bug blame (2021). Retrieved from /r/ProgrammerHumor