Marty Andrews

artful code

Tuesday, October 5, 2004

PM - make me a deal

I'm a programmer by trade. Its my career of choice. As part of my job as a programmer, I work with Project Managers. Every time I work with a Project Manager, I implicitly make them a promise, and implicitly ask them to make a promise to me.

I'll try to produce code of the finest quality. I'll try to understand the drivers of the project as best I can, and I'll use that information in the best way I know how to help me make decisions about building the software. I'll give you estimates for everything you want me to, and I'll give you feedback about how I'm tracking against those estimates. I promise that I will do all of these things along with whatever else I reasonably can to do my job as a programmer to the best of my ability.

I'll do all of those things for at least as many hours as I'm contracted to do so per day. In my case thats usually 8 hours per day, which probably means you'll get between 40 and 45 hours a week out of me. I think I can sustain that pace indefinitely, which means that I promise you can count on me to give you predictable output week in, week out.

In return, I ask something of you, Project Manager. Please take the feedback I've given you and use it to compare how the project is tracking with your plan. If its not tracking exactly to plan (and I don't expect it to be), please use the information as best you can to help you update the plan.

In the case where your plan is more optimistic than the project is tracking, Project Manager, please don't react by asking me to work smarter. I've already promised you that I'm working as smart as I can. Please don't react by asking me to work harder. I go home exhausted by working as hard as I promised every day, and I feel burned out if I work harder. I don't believe you when you say it'll be easier once we catch up to your plan, and I can no longer fulfil my promise to you that I will give you reliable performance.

If, Project Manager, you have tried everything you can to change the plan before asking me to work harder, and you're willing to bear the risks that come to the project if I do, then lets talk about it. All I can ask is that you remember our deal, and fulfil your promise to try everything else first.