Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've been a software developer for 10 years. I like being a developer and no surprise I strive for sense of achievement. However, I normally find myself doing stuff that needs to get done regardles of it's my job or not.

My experience of various managers I've worked with shows a terrible score of like 20% of those that I find competent for the work they do. This makes me think that demand must be high for no-nonsense managers.

I'm seriously considering a career shift from a developer position to one of those positions, but my question is: -Is it worth it?

I'm assuming that it's more or less undestood what each of these positions mean. The question is only if an above average developer normally earns more than an average manager or not?

share|improve this question

closed as off topic by Mark Trapp Jan 28 '12 at 21:37

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

I'm sorry guys. I maybe wrote too much of it, but what I want to know is only - based on your experience - who gets more? – tishma Dec 21 '10 at 12:05
up vote 29 down vote accepted

Speaking as a former developer who is now a Development Manager:

The first thing I'd say is that most developers don't understand how most managers spend their time. When I left my last role (Development Manager) one of my senior developers took the position and commented to me a couple of months after taking over that he really had no idea how much stuff I was dealing with that he didn't know about.

You can argue that I could have been communicating it better but generally my experience is that developers really don't want to know and it doesn't make them more productive so I tend not to mention unless they ask.

I spend most of my day doing things which the developers who work for me don't know about but which keeps crap off their desks. When crap does land on their desk it was generally unavoidable (or at least beyond my influence, see below). I think this is why many developers think their manager does nothing or is incompetent - it's because if you're doing your job well and keeping things away from them, by definition they don't know about it and therefore tend to assume it's not happening.

Secondly, every developer who becomes a manager has views on what they're going to do to make things better, but the reality is that as a manager your influence isn't that much greater than as a developer. Generally you can change process to some extent and so on but you're still going to be pushed by unreasonable people (or reasonable people being pushed by other unreasonable people), you're still not going to have the budget for individual offices or those kick ass machines, and you're going to be even more subject to the politics and other bollocks that developers tend to hate.

What may happen is that you may understand that some of the people who were unreasonable actually aren't, that things aren't always how they seem on the ground, but when you try and convey that down to the team you're likely to be seen as part of management...

So if your perception that you're going to be great and no-nonsense is based on what you're going to change and how you're going to speak truth to power then good luck with that but there's a good chance you're kidding yourself.

There are two good reasons to become a manager: because you're interested in it (and it can be interesting and you can make a difference - just not quite as much as you think and you won't get the recognition you deserve) or for the money (and my very well hidden answer to your well hidden question: yes, most managers do earn more than most developers).

But if neither of those appeal, then stay where you are. Seriously, I was happiest as a senior development and if money were no object that's what I'd go back to doing.

share|improve this answer
ok, so in your case - it means more money :) – tishma Dec 21 '10 at 12:11
@tishma - Yes, and (contractors aside) I've never managed anyone who earned more than me. – Jon Hopkins Dec 21 '10 at 12:19
+1 Since you are an active member of this forum, and it shows that you are engaged manager. – Amir Rezaei Dec 21 '10 at 13:07
I've worked for a couple of really good managers and they both were exceptional at keeping things from reaching the developers' desks that would slow down development. As a developer, I may not know you're doing it, but I appreciate it beyond words. – Walter Dec 21 '10 at 13:49

Technically competent managers are extremely valuable and will always rise above those without the technical background. Your technical competence will provide a communication bridge between the developers and upper management/clients. You will be able to better manage expectations and maintain a solid rapport with your team. However, this is true assuming you have the other core emotional qualities for being not only a manager but also a leader.

share|improve this answer
+1 for separating managing and leading. Managing must be one of the worst jobs on the earth: you're being pushed from all sides, you have to make all the awful decisions that must be made, and in the end, you can't actually do anything substantial to advance the project, only do your best to avoid ruining what your developers are creating. I have no idea how some people can stand that stuff, let alone want to do it. Leading is completely different: actually it's what most aspiring managers think managing is about. Otherwise they probably wouldn't want to be managers. – Joonas Pulakka Dec 21 '10 at 11:57

Well most, atleast more than 20% managers are competent but it is difficult to understand what they do most of their times but believe me they do something useful. Also dont assume that you will walk into a Manager's role and be a great success. Most GOOD Dev's don't do that job well and are not interested in spending their time in Mgmt tasks.

I believe most Managers would earn more than a Dev of same experience, not sure though it might depend on the company and Geography.

share|improve this answer
Thanks. This was the first answer to the actual question. Of course it depends. The question is about the reality/experience. – tishma Dec 21 '10 at 12:01

If you stay as a developer with the knowledge you have, you can only use two hands. But if you become a project manager you can use more hands working on the same issue.

share|improve this answer
More hands.. mean more productivity ?? Atleast in medicore tasks not sure it applies to skillfull things. – Geek Dec 21 '10 at 11:47

The question of whether it is worth it, can only be answered by yourself. Where do you want to go? Are you not attached to developing software?

Also, do not forget that in a manager position, many new and difficult responsibilities come to you. You'll have your manager wanting your team to do everything right now, and your engineers telling you it's not possible. You'll have to coach and motivate your staff. You may need to fire staff, and are responsible for new hires. You'll get a lot more involved with office politics, which can be very messy.

I do think overall managers and engineers sometimes have too little understanding for each other, and how they each have skills that are important. The other person's job always seems so much simpler.

Having said that, there are quite some incompetent managers out there. But that is no different for engineers, or basically any other profession. But don't expect you'll do magically better yourself :)

share|improve this answer

What work do you want to do?

Personally, I started out as a developer, and over 10 years or so rose to a more senior development role and finally a first-level developer-manager position, more because that was the natural progression in my company than any conscious decision on my part. I enjoyed the additional decision-making responsibilities as well as the opportunity to continue making software directly.

After changing companies, I am now a Project Manager with far less coding skill in the technologies we use than the developers I manage have, so I don't do programming any more. I'm continuing to enjoy the planning, organising and "making things better for the future" activities.

Note that the "Project Manager" title can mean different things in different companies: for me it's running a small, agile, cross-functional team developing one product; in other places it's developing huge multi-million-dollar projects with hundreds of staff, focusing on massive high-level risk plans and the like. I don't think the latter sort would suit me at all, so make sure you investigate the detail of positions rather than just looking at a job title.

If you secure a job that you don't really enjoy, even if it's for more money, then is that going to make you happy in the long term?

Here's how I would summarise each role:

  • Software Developer: continue creating actual software on real machines that does cool stuff
  • Project Manager: organising other developers to produce software, and making decisions on how best to deliver it
  • Product Manager: liaising with customers and finding out what we should build next

Which of these makes you want to get up and go to work in the morning?

share|improve this answer

The question is only if an above average developer normally earns more than an average manager or not?

In my experience, above average developers earn more than average project managers. Your mileage may vary. I have definitely seen organizations where managers are managing technical people who make more than them. This can vary widely, of course, and see Jon's counter example above.

share|improve this answer
Thanks. It's good to verify that it's never straightforward... – tishma Dec 21 '10 at 14:57

Not the answer you're looking for? Browse other questions tagged or ask your own question.