So I was struggling at work one day in May, battling a psychological affliction whose clinical name is, I believe, the black ass.
You've all probably been there. Events, out of your control, seem to be conspiring and collaborating against you. Annoying little roadblocks get thrown in the way of the simplest activities, slowing progress and increasing internal frustrations. Personality quirks of colleagues and managers, which usually roll off of you like water on a duck, stick in your craw (like the piece of food that got stuck in Garrett Jone's throat). Then things start to mentally snowball and you find yourself facing one of the most destructive emotions in the human condition: self-pity. Not a good place to be.
(The stimulus for this condition, in my case, is that I was given an assignment that I really didn't relish - fix this mess of a project called CMS.)
My personal self-help plan (free of charge) when attacking this condition is to basically sack up and remind (scold) myself of one or more of the following:
- This crap that I am worrying about is comically inconsequential when compared to the really important things like the health, well-being, and happiness of my children, family, and friends.
- The Frozen Snowball Theory.
- As an American living in the year 2010, I have it better than %99.999999 of the people that have lived on Earth. Ever. Is my life really that bad?
Well, the old self-help deal wasn't really doing the trick for me this time, but relief came from the most unlikely of places for me - our Test Team.
As in any product development organization (software or otherwise), there is a natural and healthy tension between the Development Team (me) and the Test Team (them). The job of the Test Team is to find defects in my work product. Their effectiveness is judged by the number of problems they can flush out of the product before the product gets to the field. Bugs that escape to the field are much more expensive to fix for the company than those found internally before the product ships.
As a result of this dynamic, very rarely do you hear compliments from the Test Team. When they do come. it is usually in a begrudging fashion with a caveat or two attached. That's just the way it is.
The day that I was batting the black ass, I was poring over my email, rummaging through one of the 50 or 60 that come through my in-box daily. One that caught my attention was blind-copied to me concerning a component called PSI from my colleague in test, Gary.
What PSI does or doesn't do is not pertinent here. What is pertinent is that I lived and breathed PSI from July, 2005 to September, 2009. It was my baby - I designed it and developed it and drove its adoption into about 12 or so shipping products. Gary was the lead tester for PSI. From that relationship, we both gained a lot of respect for each other - Gary was one of the most thorough testers I have ever worked with.
The email thread in question was a discussion where the Test Team (Gary and Amy) were trying to convince Development to use PSI for some feature that was being developed. This, in and of itself, was heartening - Test obviously appreciated the value of the software that I had developed had for our paying customers.
But it gets better. Buried deep in the email thread was the comment was Amy:
I can't imagine anything being easier for a customer to use than PSI.
Now Amy has a well-earned reputation as a very hard-to-please tester. I knew of her since she had been on our Test Team for quite awhile. But she had tested other components in our product. I hadn't had much direct interaction with her - I wasn't even aware that she had ever used PSI in her testing. So this remark came out of the blue.
I made a decision back in 1986 or so, that, for better or worse, I wasn't going to sacrifice job satisfaction for money. At that point in time, I was faced with the decision between continuing on with a career in Systems Engineering or jumping into Software Engineering.
From my perspective, there is nothing quite as satisfying as receiving compliments on my software design or implementation from other peers.
The black ass cloud was instantly lifted - for a little while anyways.