Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

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

And why do most programmers quit coding and become managers so early compared to other areas? You can work as a construction worker, a lawyer, researcher, writer, architect, movie director for decades if not your whole life, without quitting the favorite thing you are doing. And yet most programmers think being a manager, or better, a non-coding manager is a cool thing and the ultimate goal of the software career. It's so rare to see an ordinary coder in his 40s or 50s (or 60s!) in a typical software company. Why?

(And I am for being a coder for as long as you love doing it.)


locked by Yannis Jul 23 '13 at 8:14

This question exists because it has historical significance, but it is not considered a good, on-topic question for this site, so please do not use it as evidence that you can ask similar questions here. This question and its answers are frozen and cannot be changed. More info: help center.

closed as primarily opinion-based by MichaelT, gnat, GlenH7, Robert Harvey, Jimmy Hoffa Jul 22 '13 at 16:12

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.If this question can be reworded to fit the rules in the help center, please edit the question.

I am now 18, and I love coding. I will stay away from management duties and be happy about it. – mauris Nov 5 '10 at 4:05
@thephpdeveloper: You say that... at 18, having likely just recently gotten into your career. After another 20-30 years of developing, your tune could very well change - and I think that's what the OP is asking about. – Steve Evers Nov 5 '10 at 16:14
"After another 20-30 years of developing, your tune could very well change" -- or not, see my answer below. – tcrosley Nov 5 '10 at 18:15

22 Answers 22

And yet most programmers think being a manager, or better, a non-coding manager is a cool thing and the ultimate goal of the software career.

They do? I have yet to meet one of those types that was coding because they loved it. Most that think this way are programming because they think they are going to make a lot of money doing it and think moving to management they will make more money. They may be right.

I am 42 and I love coding. I am currently in a team lead position that has management overtones and I hate that aspect of it. I love being in charge, but management duties suck ass. Honestly, I don't want to work on motivating my team, performance reviews, code reviews, etc. I see this as baby-sitting stuff. I expect them to be as motivated as I am, and when they are not it is frustrating.

Don't get me wrong, I like being a mentor and would actually love skipping middle management and go right to upper management. That appeals to me. I like thinking long term and making strategic decisions for the business. But middle managers are simply baby sitters who must watch and motivate their charges. I see this as a waste of my skills, to be honest.

Generally agreed except maybe the "code reviews" part: it's essential for keeping up the quality, it's educational for everybody, and it's fun. – mojuba Nov 4 '10 at 23:35
@mojuba reread, he didn't say he dislikes them, its just that he expects them (I think). Or he thinks its up to the coders. – alternative Nov 4 '10 at 23:51
Agree completely (including my age), except the last paragraph. Upper management, if done well, should be almost all people management with some strategy & marketing thrown in (it is usually not done well, but that's true of all management) and that doesn't appeal. – Richard Nov 5 '10 at 11:53
I expect them to be as motivated as I am, and when they are not it is frustrating. - Motivating staff is a pretty critical aspect of management. There are a whole heap of reasons why staff might not be motivated - a good manager can identify and work through those. – Craig Schwarze Jan 25 '11 at 0:33
@CraigS, oh agree 100%. I am not disputing that at all. I am just saying that it is something I do not like to do. I prefer someone else be the cheerleader. – Nemi Jan 25 '11 at 15:36

I'm 63 and I love to code. I have no intention of retiring. (Well, maybe cutting back to 40 hours a week someday.)

The fellow programmer that shares an office with me is in his 50's. We have a manager that is just under 50, and he spends at least half of his time coding also. The company also has one web programmer/database guy. He's the youngest technical guy and is 40-something.

Around 25 years ago, when I was trying to expand my consulting business, I hired four employees. I never had time to code and spent all my time managing them and getting new projects to keep everyone busy. I hated it. Went back to working solo and have never regretted it, to answer your question.

That's cool. :) – Ian Warburton Feb 8 '13 at 9:05

Do non-manager coders in their forties or older out there sometimes regret about not being managers?

Not me.

Why do most programmers quit coding and become managers so early compared to other areas?

There are a couple of reasons. One has to do with age discrimination, it gets much much harder to land new programming positions after 40. Another was described to me by one programmer-turned-manager: "the problems I now like to solve are ones I can't solve by being a single programmer, they are too big and need more than 1 programmer to do them."

It's so rare to see an ordinary coder in his 40s or 50s (or 60s!) in a typical software company. Why?

Age discrimination along with "I'm tired of putting up with this stupid crap!" [1]

I'm 50. I know 2 other programmers who are 55. One had to move to be near Washington DC to get away from the age discrimination around here. The other is stuck in VB6-land (we do mostly .NET now, but one cash cow product is still in vb6), and he was a project manager at one previous job. The combination of ageism and offshoring [2] and the much harder difficulties of folks just a few years older than me is a strong message that I need to be considering some Plan B alternative career. My guess is that I have 15-20 years left in the workforce before I can afford to retire. I don't know what the future holds, but from my view, it doesn't look very appealing. Programming has been a great ride, I don't see it lasting forever.

1 - A single, or at least childfree/childless developer can devote far more time to work than someone who says "I can't stay late tonight, I have to pick the kid up from daycare." Too much requesting/demanding of overtime leads developers to seek positions where they can spend time with family instead of with code.
2 - I don't see offshoring killing my job in particular, just strangling the flow of new, entry-level developers into the industry. Consequently, the mid and senior level programmers are fading away with few junior devs behind them. As the folks in other countries get the development skills, many of them will move up into mid and senior level dev positions further reducing an already hard (for me at my age) market.

Thanks for the answer and good luck to you! – mojuba Nov 5 '10 at 0:08
I particurlaly appreciate the "too big". I think that people who love programming will still move to more and more complex tasks and thus end up managing projects (at least the technical part of them). – Matthieu M. Nov 5 '10 at 18:58

I'm just shy of your threshold, but several of my colleagues above your threshold hated management duties. Some did the management thing for a while, and then went back to coding. Management is a completely different skill set, and what makes a good programmer makes a bad manager (and vice versa).

Honestly, the pull for management is due to the way most companies are structured. Once you hit the ceiling as a coder, there is no further up you can go--which is also reflected in your paycheck vs. your manager's paycheck. I have yet to see a company actually try what was written in "The Mythical Man Month".

I've just finished reading TMMM. The idea of the "surgical team" is interesting; partly I suspect it never caught on because the elitist approach is not politically correct in these days of teams and equality. But there's a more serious problem: a heart is a heart and a brain is a brain and if your surgeon is hit by a bus you can find another surgeon who understands hearts and brains. But if the sole expert on the xyzzy::fizbuzz system goes, good luck finding a replacement (if you stay true to the analogy, the nurse or anesthetist don't suddenly become surgeons). – timday Nov 5 '10 at 22:17

I've always wondered if all those students that hated programming in university, but still graduated, will end up being our bosses?

I know a few colleagues that graduated with me that were more into politics than programming. I wonder if a corporation was big enough they would end up being managers? They knew enough about coding but had a natural aptitude for people management. With a software background they would have the skills to delegate and interact with other programmers.

It always seemed an irony to me that those that were really good at programming were one day going to be working for their peers that struggled through the same computer course.

An interesting comment, and I have seen cases of this at some large corporations. – fjxx Nov 5 '10 at 16:05

Not me - and I'm 52!

I went down that road for about ten years, struggled the whole time, and finally woke up to the fact that I hate managing other people and really suck at it. So in 2002, I went back to just programming. Now, I make way more money and really enjoy what I do, and I have zero regrets about it.

There are usually only a few standard career tracks for technical people, no matter what the field. Unfortunately, in most organizations, the purely technical track has a salary ceiling, and has limited influence on the organization. A lot of programmers who jump to the management track don't do it because they really want to stop coding, but because they want to keep progressing in income and authority.

I've been successful with a very different approach: become proficient in technologies I think are cool, and take jobs or contracts to work with them. Those positions then expose me to more cool technologies which I become proficient at, and the cycle continues.

There is certainly some age discrimination against older programmers - but there are ways to combat this, too. The first time somebody sees how fast my reflexes are from my ongoing practice of martial arts, they stop paying attention to my white beard.

Hahaha, +1 for the last sentence :) – dr Hannibal Lecter Nov 5 '10 at 12:40

At many companies, there is a technical ceiling, in terms of compensation.

So if you want more money, it's management or consulting.

So essentially being a manager pays more, but there are far more developer jobs on the market. – fjxx Nov 5 '10 at 16:07
+1 for consulting. – jonathanconway Feb 25 '11 at 7:10

Although I'm not quite in my 40s yet I don't have long to I'll have a go at answering this one.

I'm a manager who also codes. I would hate to ever have a management position where I do no (or little coding). First of all I love coding (or more accurately problem solving and learning) but also if you're directly managing coders I feel you really do need to understand what's going on in order to support the team.

On the other hand I enjoy the managerial parts of my job - getting processes implemented, coaching and so forth. To be honest I don't think that most coders are interested in that side of things - when I go to 'soft skills' community events there's always way fewer people attending than go the coding or tech events. So, I don't know that most coders aspire to become managers (or if they do the ones that go to the tech events either aren't interested in the skills in the same way or they value them less).

I think the reason you don't get many 40+ coders is that 20 years ago there was a fraction of the number there are today - give it another 10-20 years and you'll see that age distribution even out a lot.

Interesting final idea. – Ian Warburton Feb 8 '13 at 9:14

I can give a short answer to that: I've gotten promoted to "management" positions twice. Each promotion was followed fairly quickly by a resignation (admittedly, in one case I was getting pretty burnt out there anyway, but being made a manager was one of the last straws).


I'm a little premature for this, at 35 I am a CTO that still manages to write some code when I'm not distracted by Q&A sites, interviews, budget sheets, pending litigation, that black hole called the US Patent office and other things.

I first learned the 'business' end of programming when I got sick of working for other people. I was familiar with some aspects of administration, such as software licenses and contracts in general so it was a natural move for me. Quite frankly, I hate it.

Currently, I'm well versed enough to continue to not only keep pushing neat products out the door, but also ensuring that we keep and maintain people who can push neat products out the door. I also try my best to steer us away from legal pitfalls. I refuse to stop writing code, so it is indeed like working two full time jobs.

My goal? Make enough money so I can just go back to pushing neat stuff out the door, without having to worry about anything else. That probably won't happen for another 15 years, which, remarkably, puts me at the same age that you raised in your question.

You also have to consider that most (good) companies take a different look at management. I would not, for instance, interfere with a project that I knew nothing about even though my title 'entitles' me to do so unless there was some compelling reason to do so. If you are going to go through all of the hassle of establishing a 'senior' level and then short circuit it, what's the point?

Where I work, if you are able to come up with an idea, draft a spec, a plan and a budget, you own it, it's your baby and you are free to spend money and run with it with minimal oversight.

I think most sensible companies are realizing that they make more money when they (within reason) put people at what they want to do. Manager today, grunt tomorrow, consultant the following week. As long as the compensation reflects your responsibilities, I don't see how a title makes any difference :)

Footnote: I hate software patents and am a member of the LPF (league for programming freedom)


It's so rare to see an ordinary coder in his 40s or 50s (or 60s!) in a typical software company. Why?

I think this has more to do with our profession being relatively young than anything else.

I mean, for sure, there are people around who have been coding in COBOL or Fortran since the 1960s, but our field (and the Computer Science education population) only really started growing exponentially in the 1990s. So most people in the field are relatively young.

I've got some coworkers at least in their 50s, both with Ph.D.s and both working on some of our advanced algorithms. They also happen to be very grounded people, unlike some of the young Ph.D.'s I've met. They are there, but not common. – Berin Loritsch Nov 4 '10 at 21:42

These may be obvious, but I'll just state a couple of thoughts:

Some may become managers due to the company growing and having been at the company for X years they are now promoted to being a manager, kind of a reward for surviving so long in the company. There can be a power trip that comes with being a manager I'd imagine as I've never been a manager or want to be a manager.


I think it would be cool to a project manager, that is to say, someone who does maybe does code but definitely does design. I like the coding but I love the design work. So I guess that counts. I'd leave coding if it meant I could do design work full time, but no place I know of actually has non-coding PMs.

(And of course I'd still program as a hobby. My hobby coding and my work coding share some aspects but are largely independent things to me.)


Some obvious reasons:

  • Money (managers are paid better)
  • Laziness (as a developer you have to learn all the time to keep your knowledge up-to-date)
  • Desire for change (the most of the people after 40 are just tired of coding)
+1 for keeping knowledge up to date. I think that's the fundamental difference between programming and most other jobs out there. – realworldcoder Nov 5 '10 at 23:10

I'm 40 now, I've been manager for two loooooooooong years, and I'm very glad to be back to coding again.


I'll have a try at answering the question from the other side. As a junior developer, I would like a manager/team leader who has been around awhile and can help me interface to the business side of things. In many companies IT is a support role, so I wouldn't expect for upper management to really care for what we need to work well. He should have a good bit more credibility than me!

However, I would still want a programmer for a manager. If he came up through the coding ranks he also can help me with my programming problems. What's the point of having a manager that you can't take problems to?

Incidentally, the highest I am really excited about getting to is a team leader.


This may answer your question - the Deep Dark Secret of Silicon Valley:

EDIT: In response to @gnat's request: this article explains why there aren't that many "older" programmers in the tech industry. Many tech companies want younger, cheaper talent - when they can get a fresh graduate for $70k and train them, why pay six-figures for an older tech worker who probably won't be willing to pull allnighters?

would you mind explaining more on what it does and why do you recommend it as answering the question asked? "Link-only answers" are not quite welcome at Stack Exchange – gnat Jul 22 '13 at 6:03

Programmers can fed up with all of the politics and think they can fix it all if they become managers (And maybe they're right?)

Also, a lot of programmers "settle" in their 40s or 50s and work at some smaller company where they don't work as much over time because they have family.


In any highly technical field, you have to keep learning just keep up. Of course, not everyone can do this or really wants to try. Management is a perfect escape since the higher you climb, the less technical knowledge you're expected to have. I'm seriously generalizing here and not trying to diminish natural managers but a typical VP isn't supposed to design device drivers (or whatever).

What's difficult is not knowing if this reasonable transition is the right thing to do. I was fortunate enough to have gotten my answer when I was rather young. I had a minor, non-technical management position that taught me that I would NEVER want to be a real manager. For me, the pay difference just isn't worth the hassle and the technical stuff is just too much fun.

Some day the paycheck will bite you too I'm afraid. It will be time to either start your own business and do things your way (code, design, manage, market - whatever you wish), or give up coding and move up the ladder. – mojuba Nov 4 '10 at 23:38

I did one year of managing nearly two decades ago, and didn't like it. I've been a programmer, or architect, or anything but a manager and still doing coding since then, with no cause for regret. And the AARP just sent me an invitation to join based on my next birthday - I must be getting old!

I'm lucky - I work for a big company that has career tracks for senior technical staff who want to remain technical staff.


In my class it's sort of the other way around.

We have mixed-classes, programmers and managers. Alot of the managers switched to programming in the 2th year.

I'm actually chocked to hear (assuming it's true) that most of the programmers want to switch to management.


I think that the programmers who turn into mangager are simply those who are not that good at programming anyway.

If you are stuck with writing code without any intellectual level, programming quickly becomes boring, you end up doing repetitive tasks. Such programmers usually are more productive when they use tools that generates the code.

Good programmers usually advance from that point sooner or later, but bad programmers will always see coding as adding more lines to a source file. Like building a brickwall. Sooner or later they want to become managers so they can manage other "programmers" to do the boring work.

If you are a good programmer, you never get bored with programming.

Programmer who are not that good at coding become managers and get a higher paycheck? Why don't they get fired instead? – fjxx Nov 5 '10 at 16:12

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