In theory, ProjectManager
s are useful and vital contributors to a technical organization. In practice, of course, things are a lot more complicated.
's job is to help with the human side of a project's organization. This might take many forms:
- mitigating the effects of politics on decision-making
- tracking everything that's happening
- noticing when a given task is taking too long and taking appropriate action
- keeping all the parties involved in touch with each other, and motivated to project success.
- keeping people away from unnecessary meetings and unnecessary paperwork
with a good technical background can be helpful in other ways, too:
- using their understanding of project needs to help guide technical decisions
- defending refactoring and other technical activities whose benefit might not be readily apparent to other people on the client side
This is possibly the hardest job you could find. While a programmer is supposed to achieve results with digital - that is, repeatable - components, a ProjectManager
is supposed to achieve results with emotional, unreliable, inconsistent self-directing components (HerdingCats
). And because the ProjectManager
is responsible for passing everyone's gripes along to everyone else, being ProjectManager
may just be the most unappreciated job in the world, sitting well below GarbageCollector
To make things worse, most ProjectManager
s simply aren't that good at their jobs. Many don't understand the system they are managing. And many have no qualifications and no interest in developing any: They're "just passing through".
In some companies, ProjectManager
s are drawn from the ranks of programmers, and such a move is usually considered a promotion, not a lateral move. But project management is a different task from programming, and while it can be learned, it's a much more emotionally draining task than programming. (A lot of project management training courses focus on "How to give four different views of the schedule in MicrosoftProject
", when what you really need to know is "How to explain to Joe that his code is well below team standards and that you need to deal with it.")
Seen in this context, one of the possibly beneficial side-effects of ExtremeProgramming
is that, by emphasizing communication and collaboration, it may better prepare developers for a managerial role.
However, usually the ProjectManager
is the only person who knows how to use the brain-damaged project-scheduling package in use for the project. (The canonical example being MicrosoftProject
.) So they're good for something, at least.
On the role of a ProjectManager
As a 'genuine' Architect, I'm interested to read that there seems to be almost as much difference of opinion amongst programmers over the role and efficiency of the 'ProjectManager
' as there is with the 'ChiefArchitect
'. However, I note that the title 'Project Manager' doesn't seem to attract the same controversy as the title 'Architect' for programmers. Is this because the 'Project Manager' title is a simple statement of role & function? Whereas the title 'Architect' appears less defined? (and open to differing understandings, from 'Artist' to 'Manager'?)
TechnicalLead is an uncontroversial pseudo-synonym for ChiefArchitect. But neither term has a definition that is embraced by all.
In passing I also note that as a building 'Architect' I am always rather sceptical about building 'Project Managers'! By training and inclination, I generally understand the 'Architect' to be the de facto and necessary 'Project Manager' for most building projects. Perhaps the very large projects would be an exception, but generally in the construction & design sphere the Architect needs
to be the Project Manager to keep the show on the road (integrity of the design/cost control/programming/co-ordination of other consultants/keeping all informed/keeping hold of Contractors).
However, I am aware that not all Architects would necessarily agree with this approach and that some are happy to give some of the traditional (in UK Practice) functions of the Architect away to other professionals.
Whether the problem is 'Project Manager' or 'Architect', the key issue seems to be about whether individuals (or firms) actually fulfill and carry out the roles expected of them (and allow other professionals to properly carry out their duties) and that seem to be supported by the titles. At the end of the day, this seems to me to be about sheer manhours/commitment/interest/sense of duty/integrity etc. Possibly, mainly manhours! -- MartinNoutch
Being a project manager is very hard. Because it has to do with people. Many of them. With conflicting interests. And also because it is about a project: something with a scope to define, scarce resources and limited time.
It takes commitment and care to make a project successful. By successful I mean a working product that works has expected and a team that is willing to do it again. In my opinion, the incredible lack of good requirements techniques and understanding of tracking tools by so-called PMs is the reason why the PMs are despised. I think that someone that makes matters clearer and chunks the work in understandable pieces is invaluable. -- PhilippeBack
There is real value in suggesting the PM should have a sound, working knowledge of the project's business requirements (Finance-PM, Telecomms-PM, etc, etc) as versus up-to-date technical skills. Has anyone else ever experienced the frustration (and disgust) generated by a 'high tech PM' bashing heads on a regular basis with the Development Team. I recall a PM stating clearly "my skills are the equal of yours and I CAN MANAGE!"
I think PMs should co-ordinate more and spend far less time 'taking charge' of the development.
I agree with PhilippeBack
's comments, in particular the emphasis on assembling good requirements techniques and dividing up the work into 'understandable chunks.' The chunks can be so very useful in communicating with those OUTSIDE the Development Group
, e.g., anxious MANAGEMENT. As an example the chunks can be used to assemble and track Project COSTS
in terms the Business folks
understand and appreciate ..... aka requirements. -- DaveSteffe
Do ProjectManagers make a lot more money than programmers? If so, why?
Being a programmer is hard, too! (it has to do with computers...) Project Management is clearly different from actual software development, requires a different kind of person etc. But why should they get paid so much more than the JustaProgrammer
s? In some companies I've worked for, Project Managers can get 150%(including a car and superior benefits package) of the salary of experienced developers. Different doesn't mean 'more difficult' or 'more skilled'. Most programmers are highly qualified and make a lot of effort to keep up in an ever-changing world.
It's bad enough being mismanaged by an unqualified, unskilled, meetings-obsessed 'facilitator', the punch line is that they get rewarded so much more for it. Why?
Please provide names and addresses of contacts for the (UK-based) 150% job opportunities!!
Try the big "IT Services Suppliers" rather than smaller "software developing" companies. Further clues: Their recruitment adverts stress 'flexibility' as the most desirable attribute. Dress code will be strict suit and tie.
Ask yourself WHY
the companies as in "...
the companies I've worked for ...." were willing to pay the 150%. Or better yet, why didn't they feel the experienced developer was worth the same as the PM? Maybe the PMs are just that much 'better' at marketing themselves?!
PMs probably are better at marketing themselves. That isn't too difficult as programmers aren't renowned for their image awareness! Companies do vary in the way they value managers in relation to developers. Avoid the culture that isn't right for you!
There seems to be a 'career dead end' that you hit as an employed developer if you are very experienced, but don't want to move into the 'herding' and 'paper shuffling' squad. Many programmers will then move into contracting where they will earn far more than most PM's.
What about being able to develop, manage and being a contractor experiencing both sides of the coin? This will get you a high salary (in decent at times), and plenty of opportunities to get more experience in the craft, as well as bridging the two cultures. Of course, you'd better be committed. As well, it will ask you to be able to market yourself as high profile (and you'd better be). It takes commitment to follow through. That's what I am busy doing right now and I am rather passionate about it. All this has to do with understanding people and systems, be they computers or human beings. -- AnonymousCoward [because some of my coworkers don't know about it and hang out here].
Why do PMs often (depending on the company) make more than programmers? I've previously stumbled with this question until I learned an important fact: People skills pay more. I read somewhere that 80% of the factors that determine your salary are PeopleSkills
Also, there's the face-saving cultural norm that one must
earn more than those whom one manages
. Some people think ProjectManagers?
are really ProgrammerManagers?
, but I think that way leads to TheDarkSide
I wish I had a dollar for every programmer I heard say, "My plan is to get out of coding and into project management as soon as I possibly can". Well, I would only have something like $20 in the bank right now, but I get the impression that the attitude is common enough that I could make a profitable career out of it. -- LaurentBossavit (a coder who gets stuck with ProjectManager roles too often for comfort)
I'd gladly take a 50% cut in pay if I were promised I'd never have to manage anything ever again. Maybe someone can explain the attraction of an "upward career path" to me. -- KrisJohnson
Mo'money, mo'money, mo'money.....
The buck stops with the ProjectManager
. They are responsible for the deliverables. If JustAProgrammer causes a delay in the project, it's the ProjectManager
's fault. Responsibility deserves more reward.
More than likely, if JustAProgrammer causes a delay in the project, the ProjectManager
will address it to management with risk documents or change management documents or release schedule updates, and the JustAProgrammer will be repeatedly flogged with meetings and questions until there are no more delays. Project managers have way more tools to deal with blame management than a programmer does.
Ways that a bad ProjectManager can make a programmer's life hell, intentionally or otherwise
Why are programmers resentful of the salaries earned by their managers? I know everyone believes they are smarter than their bosses, and therefore should be making more, but if you are being paid adequately, and your manager is taking care of responsibilites that you don't want yourself, why complain? -- KrisJohnson
Because it appears that so many of the ProgramManagers?
are much worse at managing than the programmers are at programming. When I have a good manager, I have a better life; when I have a bad manager, I have a much worse life. Also, there is the common problem in that there is no upward career path for programmers - one must go over to TheDarkSide
to get increases in salary, and that leads to the obvious problem of people who can't hack the development work jumping to management as a way to keep their careers moving. -- PeteHardie
In my experience, project managers always turn out to be project schedule
managers and little more. The budget is usually controlled from above, leaving little to do there. The missing piece is quality management. How many reading this can tell a story of a project manager who actively and effectively participated in the management of the quality of the product? Again, in my sad experience, this has only taken the form of dispatching programmer resources to fix post-deployment problems as quickly as possible. Does anyone have an uplifting story? -- WaldenMathews
, (apologizing for spreading his holiday depression in this despicable manner)
What's the difference between a ProjectManager and a PeopleManager??
My department is reorganizing to separate project and people management. In that form of organization, what's the difference between a people manager and a project manager? -- HowardFear
Just guessing here, but I'd imagine that your PeopleManager? will be responsible for things like approving vacations, signing timesheets, making sure you have enough monitor wipes, etc.; i.e. "human-resources" sort of stuff, while your ProjectManagers will be responsible for ensuring that their assigned projects get done correctly and within budget. Do you know whom, if anyone, will be responsible for directing policies & practices - i.e. making sure that the people do their jobs correctly (regardless of the output produced)?
In my organization, we have something like this. Everyone has an assigned "administrative manager" who handles the yearly performance reviews and other career-path-related tasks. But project managers are asked for input regarding performance and career advice, and it is ultimately the opinions of the project managers that have the most weight when it comes to promotions, raises, project assignments, etc. -- KrisJohnson
How does one acquire ProjectManager skills?
As noted above, a ProjectManager
is often JustaProgrammer
who has been "promoted". Most programmers have a few years of formal training and a few years of experience before they are given control over important tasks, but this knowledge has very little to do with what it takes to be a project manager. What are the best ways for non-business-people to learn these skills (other than through their own failures)? -- KrisJohnson
, which has an oddly different interpretation. I think this page has it right.
ProjectManager needs to do ProjectManagement in the trenches
A number of experts, including AlistairCockburn
, share their thought in this early 2004 article at