In last 8 years, I have worked at more than 10 different IT companies and this question has always bothered me and crosses my mind every now and then.

+50% of my project managers have never coded a single line in their career.

+40% of my project managers hardly coded for a couple of years (small 4 - 5 forms Windows application or 5 - 6 pages ASP projects) before taking up project management. And they have not coded a single line of code since the last few years after taking up project management.

The remaining % (between 1 - 10) of chaps were real good with their technology skills so this question does not apply to them. They were amazingly efficient and able managers.

Now this 90% which I am talking about - these guys spend their entire day on Excel sheets, emails, charts, online meetings and instant chats.

It's the programmers who do the real work. So I do feel how on earth can these project managers (non technical mind you) be paid almost 2 to 3 times salary that of a senior developer for simply clicking the forward button on their email client software. Basically these guys are information forwarders (and no harm in that because that job is important too) but do they deserve to be paid 2 - 3 times salary of a good programmer?

Do you really think their work justifies their salary?

Also, here in India, the way to a successful career path (and more money) is to move up from being a coder to being a project manager (and no code). So even the good coders are left with little choice but to take up full time management. Is it the same in your country too? If yes then don't you think this is so wrong?

Also let me ask, don't you think it's so important for a project manager to also code say for 1 hour a day just to keep himself updated?


It continuously amazes me that coders think managers don't do anything. I've been in project management, now back in a tech field, thankfully for both myself and the clients :-), and it's not the easy role most seem to think.

A good project manager (and it's possible, though unlikely, that you've never met one) will:

  • protect you from much of the BS that flows downhill from upper management.
  • schedule your tasks and keep others outside your little world appraised of progress.
  • keep you informed of happenings outside your world.
  • secure financing (or keep it despite others attempts to cut it).
  • handle the interfaces for everything you don't see (copyrights, doc teams, test teams, product announcements, integration with other products off the top of my head - there will be others).
  • risk management.
  • team management (conflicts and such).
  • myriad other duties.

Seriously, you couldn't pay me enough to go back to that world but it's not the easy ride you seem to suggest. Your comment of "it's the programmers who do the real work" is a dead giveaway that you don't understand what managers do.

It's not important for a PM to know how to code; it is important for them to be able to manage people and schedules. It is not your role to dictate what they should be paid. If your company is paying them twice your salary, it's because they value them twice as much. Most shops I've seen couldn't manage themselves in my opinion, the developers didn't have the requisite skills, especially in conflict management within the team and external to the team.

You may well be different, I have no idea of your skills. I can only speak from experience.


Management is one skill, Programming is another.

Often the two don't cohabit the same body. Some of the best managers I have had were pure managers with a technical bent. I much prefer it that way.

As for payment, people should be paid based on their experience, skillset, and contribution to the bottom line.

10 accepted

Management skill are different from Programming skills.

A good company recognises the difference and understands that they are both equally important for creating the best product.

Many times, one of the worst things to do is promoting your top programmer to become a manager:
  You lose a good programmer,
  You gain a bad manager.

There are off course exceptions to this rule.

So in my opinion, there is no reason to pay good programmers less (or more) than good managers. However, as most managers are closer to the Big Boss on the top off the food chain, they are more likely to get the better salary.


At the end of the day, "pay" comes down to two things: 1) How much value do you produce for the company? 2) How hard would it be to replace you?

If there's lots of non-technical project managers that can do the job, their pay will be (comparatively) low. If there's not many that can do (or want to do) that type of job, the pay will be higher.

I suspect career paths vary more by company than they do between countries. Some companies I'ev worked for have one, maybe two and rarely as many as three, levels of "tech guy" jobs (maybe "junior", normal, maybe "senior") and the only way to progress is to go into management. Others have more, usually by heading down a "technical specialist" route. This can, in turn, expand into more specialist roles.


As a general rule, I don't think you should be a manager of anyone unless you have solid experience in the work of the people you are managing.

Personally, I don't care that I'd be paid more as a manager. I would absolutely hate the work, so the pay raise isn't worth it.


Project management is a different skill set than programming and while developers can become good project managers this is not often the case. I think you are underestimating the role and thus can not understand the salary.

The larger the project the less you would expect the project manager to know how to do the actual work (you don't expect the project manager responsible for a new football stadium to know how to plaster). This does not mean that they shouldn't be able to understand the tools (developers in your case) being used.

Good project management gets the best out of any project and poor management can destroy a project.


Some companies have two seperate progression paths:

-> Management skills
-> Technical skills

And both paths have similar job categories with similar salaries.

That way, if you do not like management, you can get a new, better paid job that has to do with coding. You're not forced into management if you want to make more money.


As the responsibility increases, the payment also increases.

If the project fails, the manager can be fired, but you will probably be saved, because it was his responsibility.

So yes, since all responsibilities rely on the PM I agree he should be better paid.


Project management is part of software engineering just like programming is.

Now, from the comments I see that some of you don't understand one of most basic concepts of software engineering and OOP — encapsulation.


When you work with a really good Project Manager, you won't need to ask this question.

A really good programmer can be brilliant at design, logic and quickly adapting and learning, but doesn't really need (i.e. not essential) decent people-skills.

A really good project manager basically requires excellent communication and people skills, but doesn't necessarily need to possess deep technical acumen.

The roles serve different purposes.

I've worked with programmers who were paid more than the project managers, it really depends on skill level, track record and chemistry.

An excellent project manager is worth the cost, just like an excellent programmer/developer.

Lastly, a project manager does a whole lot more than what you've listed in the question. The best PMs manage to absorb a lot more stress, pressure and blame than their team can appreciate.. and it can often be overlooked.


I think a manager should have some good knowledge in the technical field. Maybe the BEST manager don't have to, but I think that to be a good manager you have to be appreciated by the team you manage. And I think that a lot of technical people don't respect people who gives order without knowing what's going on. Being great technically help to be respected by your team, but really great managers don't have to do this because they are so strong to manage people that everybody like them.

If he is respected by everybody, I think he should be a little more paid.


PM: Software development is a mechanical and low skill job. The hard part is coming up with the Power Point slides to sell the vision, the spreadsheets to create a timeline and the Gannt chart to allocate resources. Basically, Software Developers are just overpaid touch-typists.

DEV: What?! Software development is subtle, its a craft - we are half artist, half engineer! All you Project Managers do is go to meetings and create unrealistic schedules based on incomplete information. Basically Project Managers are just overpaid administrative assistants.

Your salary is about perceived value, not some objective pay scale (unless it is based on a pay scale). Don't spend any energy thinking about "should". You work in a place that values PM's at a 2-3 time multiple of developers - either accept it or leave. There are plenty of places where the average developer gets paid more than the average PM. There are places where the QA staff, the developers and the PM's all get paid around the same amount (Microsoft, for example).


Alex Ferguson, David Beckham

Neither could do the other's job

Doesn't mean they aren't any good

Understand The Peter Principle

and also


If you don't like your salary, switch jobs