I've been working in computer industry now for over 23 years. During that time, I've had unfortunate circumstance to work under many incompetent project managers. I don't mean word incompetent as an insult - it's just that in Information Technology industry, we tend to promote programmers, engineers and analysts to management and supervisory positions and, well, just expect them to do well.I've never really understood how anyone can expect a person who is trained as a programmer to suddenly be able to manage a project. It takes years and years of specialized training to become just a good project manager, much less an excellent one. In fact, I would say, having managed my own share of projects, that this is one of downright hardest things anyone can do.
Think of skills needed to understand a project - this means project manager must have enough programming, analytical, design and engineering knowledge to be able to scope out what is needed to get it done. Now, of course, comes an even harder part - project manager must estimate when it will be done (and God help him if he's wrong). He must then manage all of other people and resources involved, keeping them on correct track toward reaching target. If anything crops up, project manager must troubleshoot and correct it, quickly, before things get out of hand.
So what are things that make for a good project manager?
Takes Responsibility - A good project manager completely understands that he is responsible for project. You will not hear things like "that's Joe's problem" from him.
Responsibility means to be accountable for something. The best project managers have no problem with saying "I made a mistake". The poor ones are always looking for who made mistake. The worst project managers find anyone they can who can take blame.
Is in Control - One of absolute worst things that you can hear from a project manager was "you were supposed to ...". Whenever I hear this from a so-called project manager I want to scream, "but you are project manager - it's your job to be in control".
That's probably key point of project manager and his key duty. He or she must be in control of project. Everything must be known at all times. Delays are understood and handled before they have a major impact. Weak areas of plan are firmed up with additional personnel or resources.
Has a large variety of skills - Good project managers have an understanding of all of components of their project. If programming is involved, then they can program. If it's an engineering project, then best project managers understand engineering. This does not mean they are excellent at those tasks - it means they understand skills, know language of technicians and have a working knowledge of fundamentals.
This is absolutely necessary because without that knowledge, a poor project manager will make stupid errors and ask people to do things which are not possible or practical. This is, in fact, a fundamental reason why many projects fail - project manager does not understand project which he is managing. This causes his people to lose respect for him, and sooner or later project spins out of control.
Understands people - The very best project managers do not have any problems working with people. Projects are estimated, analyzed, programmed, created, documented, and worked on by people at all levels. Therefore, if a project manager does not work well with people, he is fighting a losing battle.