Last week for Thanksgiving, Justin and I were thankful for the opportunity to spend a week off with family and recharge as we head into the end of the year. As anyone who has taken a vacation knows, the first morning back to work is full of meetings, updates, inboxes to sort through and planning. We eagerly jumped in the car headed for work but the car wouldn’t start. Ugh.
This story can go a number of different ways at this point. Was any other car around in the garage? No. Did we have cables to connect another car to ours, had another car been around? No. How are the plans for the morning looking at this point?
Luckily, Justin got our charged jumper battery out of the trunk, connected it, and I started the car. What could have cost us a whole morning of down-time dealing with urgent but not very important matters was only a five minute delay.
In this case the battery is older and probably needs to be replaced. But our kids could have left a light on. They often do. Failure points will always exist, despite our best efforts to minimize them. What converts a failure point into an actual failure is the inability to recover quickly. Our safety nets allowed us to recover quickly. It was the difference between five minutes and multiple hours.
In November at Stack Builders we had been talking extensively about safety nets for our projects. We have been working internally on pushing ourselves farther to assess our existing systems and find ways to make them even stronger. But even beyond that, I have been spending a significant amount of my time helping our team implement actions that reinforce our culture of professional development and growth. When we are not afraid of trying new things, we are able to grow in new directions. When we focus on professional growth rather than fear, failure, and mistakes, we flourish.
Who would be more confident to learn new moves on a tightrope? The person with the floor one foot below or sixty feet below? Which one would have more down time for each fall? Could a gymnast even recover from a sixty foot fall? Which one might be more likely to be timid or paralyzed with fear? Most importantly, where would you like the floor?
I would argue that the difference between failure and growth is the system of safety nets that is in place. A system of safety nets not only allows people to recover quickly, but it changes the negative focus and the semantics away from failure. A team that is confident tends to work better together, feel more positive about their work, abilities, and contributions and be more eager to expand professionally.
How many times has someone on your tech team written the wrong command on a deploy? This happens to most developers at some point in their careers. With the best safety nets, this could be a five minute rollback, or with no safety nets at all, it could result in total data loss and the collapse of a company. Most projects are somewhere in between. This is not a new concept in agile software development, but projects are constantly changing and growing and so should our assessments.
Here are some questions to consider:
- Have you reviewed the system of safety nets on your project lately?
- How fast can you recover on your project when the different points fail?
- And most importantly, where does this floor need to be for your team and your project stakeholders to feel confident and ready for growth?
Epilogue: The car didn’t start in the office garage that afternoon either, right before a fairly critical off-site meeting. We made it to the meeting and Justin is getting the battery replaced now that the meeting is over. I am glad we identify and plan for failure points with our car the way we identify and plan for them in software architecture. What’s standing in the way of your growth?