Improving my response to oopses

I made a programming mistake recently. At the time we discovered the mistake, we thought it sent lots of e-mails to executives. The team lead and the project manager immediately went into damage-control mode, contacting each of the potentially affected executives and helping them with any workarounds. While they were doing that, I was scrambling to figure out the extent of the problem and any quick fixes I could put in that wouldn’t introduce a lot more risk.

My clients and I are on good enough terms that I don’t have to put on a poker face around them. They’ve heard me giggle over neat things I’ve gotten the system to do, and they’ve heard me try to rapidly braindump possible explanations and approaches. I get quite unintelligible when I’m in the middle of something. My team lead was quick to reassure me that he accepted responsibility for the mistake, that I wouldn’t get into trouble, and that I shouldn’t be stressed. It’s logical. Too much stress, and you end up with negative productivity.

It turned out to be a smaller problem than we thought it was. That was a relief. After we sorted things out, I took a moment to reflect on that spike of stress and uncertainty, and how I could respond to mistakes better next time. I blogged a post-mortem of the mistake on the internal social network, identifying some Swiss-cheese factors that contributed to the error. I also thought about how I could improve my external response to things like this. Sure, I might be getting better at imposing order inside my brain instead of freaking out, but maybe a calm “Yes, this might be serious, but we can figure things out”-type response is better than “I feel worse than you do, and will scramble to fix this.”

2014-09-15 On programming and mistakes

2014-09-15 On programming and mistakes

2014-09-15 Future responses to oopses

2014-09-15 Future responses to oopses

It was good to have reflected on this. A few days later, we were faced with a technical issue that wasn’t my fault, but was still a challenge that we had to solve. I tested my take-charge attitude, and that worked out well. Even though we hadn’t anticipated that specific problem, we had a contingency plan that covered that general case. We stayed calm and worked through it. It was good.

I like this. It’s good to test new responses to challenging situations. Part of growing up, I guess!