There’s sometimes a feeling among software engineers that good project management is only “appropriate” for large projects. I disagree. I don’t think there’s such a thing as a team that’s too small for good project management. I’ve taken on projects with small teams — even as small as two people — and I’ve kept them on track using good software engineering and project management practices. In my experience, project management scales down very well.
That said, it’s not necessarily easy for a lead developer used to working under pressure in a fast-paced, startup-style company to walk in one day and say, “Okay, let’s start doing project management!” Software project management is a technical engineering skill that takes time, experience and more than a little discipline.
As luck would have it, Jennifer Greene and I tackle this very subject in an article called Quick Kill Project Management, which will be published in an upcoming issue of Dr. Dobb’s Journal. We pulled out three essential practices — vision and scope, estimation, and code reviews — which a lead developer under pressure could adopt quickly, and which would make an immediate difference in the way they work. (Our aim was to strip them down so that they are quick and easy to adopt without sacrificing effectiveness.)
I think these practices make a great stepping-stone to more advanced project management practices. But even if they’re all lead developer does, he’ll see a marked difference in his ability to control changes and keep his team from working insane hours to meet unrealistic goals — and he’ll deliver better code. These practices take very little time to implement, so there’s low risk and it’s not hard to get the team on-board. (And you definitely need the team on board for them to work!) And I think there’s no time like the present to do it.
(I adapted this from my recent post on Scott Berkun’s pmclinic forum.)