Random thoughts, observations, and opinions of a software engineer in corporate America.
Doing Too Good of a Job
Published on July 28, 2004 By CS Guy In Blogging
A few years ago I was asked to write up a Statement of Work (SOW) for a contractor that had a 3-D Animation system. This was supposed to be a one-time activity, since this type of work was not part of my job description. I was asked to provide high-level requirements that would tell this company what we wanted animated, and how we wanted it presented. The result of this would be a 3-D digital movie that we could use at tradeshows and in proposals to potential customers of our product, which was a system that actually simulated in high fidelity certain real-world elements.

I did a good job. My requirements were precise and clear. I added icons, trajectory trails, and comments to screenshots of the contractor’s product to show them how we wanted the various elements animated. I provided real-world images of these elements so that they could get the geometries and maps correct.

I don’t really like doing that kind of job. I’d rather be designing and implementing software, not writing proposals or SOWs for contractors. But because I did such a good job on that one-time activity I ended up getting several more such assignments. This is one of many examples of bad planning on my part.

I did a good job. And I made a big mistake.

Today I found out that I made the same mistake again. Recently I had to provide one of my leads with level-of-effort estimates for our activities over the next nine months. This is essentially a list of tasks with a number representing how many people we need to accomplish each task.

This is not my job. This is my team lead’s job. But he has been under the gun lately to perform many tasks that are not his job. By coincidence he got assigned these tasks because he did too good a job during emergencies. But both his added responsibilities and mine are supposed to be temporary.

Well, it seems I did such a good job on my estimates that my document is now being hailed as the standard by which all other functional areas are to be judged. That part doesn’t bother me, but what does is the assumption by a lot of managerial people that they can expect more work like this from me.

I did a good job. And I made a big mistake.

A while back one of our leads sent out an e-mail to the entire team congratulating us on a successful participation in a large war game involving many programs. This lead, whose responsibility was coordinating our effort in this game, pointed out several people who “made it all happen.”

These were people who, when emergencies appeared, were able to find solutions and fix our code with great alacrity. This is a good thing. This is something that our development group does very well. My name was not on this list of fire-fighters, however.

Why did I not get any recognition? Was it because I did not do any work during that period and did not help fight the fires? Nope. I was there. I helped many people fix problems with their code.

The reason I was not listed was because there were never any fires associated with my work. I managed to do the job right the first time, and so was not required to come in on nights and weekends to fix problems. I was not the only person whose work did not break, but none of us received any recognition for our efforts or competency.

My supervisor, who decides such things as whether I receive a promotion and what my raise will be, has never met me. We work 1200 miles apart from each other. It seems he doesn’t even know who I am because my last evaluation resulted in no promotion, which is the result that my immediate supervisor had suggested, and the reason given was that he did not know me. So program-wide recognition was something I would have appreciated.

I did a good job. And I made a big mistake.

Comments
No one has commented on this article. Be the first!