Possible Duplicate:
Old Developers - any future ?


I have been programming most of my adult life, but as I get closer to the dreaded 40's people around me keep telling me that there is no such thing as an old software engineer, you either become a manager (pointy haired ??) unemployed or finish you career in a slow agonizing death maintaining some old boring code.

can this be really the true? thinking about it I know people find it more and more difficult to find a job as they grow older. I must admit that most the people working in my current workplace are younger then me and above all I don't think I know many engineers much older then me, so what happens to them?

I would greatly appreciate your thoughts and advice on the subject

-Almost Middle aged Engineer

+9  A: 

You might be considered old if you can't code anything newer than Turbo Pascal.

To maintain your current job or get a job more easily, you should constantly update yourself with the latest news, technologies and techniques in the world of IT.

Turbo Pascal is not that old. C'mon
I'd rather say "if you can't program in anything newer than Turbo Pascal".
just edit the post! It's community wiki.
@jpartogi: It may not be *that* old, but it was the PHP of a bygone era.
+1  A: 

I guess one would get bored with programming and may be inclined to other fields like Systems enginner, Architect, Technology specialist. That way you can update yourself with latest technologies interacting with different teams. Also that way you can mentor few others also

"bored with programming?" and become Architect, Technology specialist, are you joking
Anurag Uniyal
YES! I have some experience with such "architects", tired from programming. I'd like not to have this again. Surely everyone on my position jumps up the day such architects are fired. Architects are to love coding but understand they do more valuable work.
Roman Nikitchenko
anyway this is purely subjective. Everyone is entitled to their opinion
+13  A: 

The number of programmers older than about 40 probably drops off pretty quickly, so there isn't a lot of data to draw from. There are a lot more programmers younger than 40 today.

The best way to combat any kind of career rot is to keep yourself up to date. Learn about new technologies, but be selective. Read stuff like Lambda the Ultimate to see what people are up to on the cutting edge. Play with new (to you) languages or frameworks, to find out what makes them attractive.

Don't get stuck in your ways with the old ways of doing things (except for tools like Emacs or Vim :). Don't resign yourself to doing boring maintenance work, there's always a way to make it more interesting. Don't ignore what's going on in the world.

Just hanging out here on Stack Overflow and learning about what other people are doing is an excellent step.

(My age on my SO profile reflects reality.)

Greg Hewgill
+59  A: 

Well I'm heading towards 60 and have maintained a technical career for over 30 years, while avoiding any of the traps you mention. Had a near-management experience for a while, but survived.

It certainly possible to stay technical and avoid obsolence.

How? First, Work for employers who value such skills (Big and Blue, don't mean Baaad! But they are far from unique in that positive attitude.:-) Frankly, there are many ex-coders who seen it as promotion to stop coding. I see it as a privilege to be able to keep doing it. Is that attitude the reason why I am where I am?

Obsolescence: be prepared to study in your own time. Be happy to be asked to apply half-baked technologies to urgent problems. Be interested in something beyond just the current problem.

+1 for near-management experience survival. :)
Marcus Lindblom
+1 for giving me hope :) that I can still be programming for next 30 years
Anurag Uniyal
@Anurag times change.
Programmers are the main resources and managers are overheads to a company. What would you like to be. Driving force or a burden?
Enjoy coding
saying that about managers and coders is all very well and probably true, but when the axe falls you are more likely to be having a fair well party in the SW department then in the management conference room .
+1 - Motivation is the key: if you WANT to stay current and relevant, you WILL do what it takes.
Gordon Mackie JoanMiro
Having survived a few layoffs until now, I have to say in my experience, programmers are the last ones to be let go. The Project managers and QC personnel were the first ones let go.
-1: Thank you for sharing your experience. Can you be more specific about *how* it's possible to stay technical and avoid obsolescence?
Jim G.
+1: @djna - Thanks for modifying your answer.
Jim G.
+4  A: 

... people around me keep telling me that there is no such thing as an old software engineer ...

People keep telling you that. But is it really true? Look around yourself. I do know a number of older software engineers (in their 50's) and they're still doing the same kind of work as I'm doing now (I'm 38). I don't believe that there's anything that would make an older person unfit for software development work.

+2  A: 

If you're competent, flexible, and keep learning, you keep doing the kind of work you want to be doing.

If you think everything should still be done the way it was when you first learned how to do it in C 20 years ago, you might run out of steam.

There's some age discrimination in the industry, but the most essential developers I've known in software companies were usually in their 40s, and usually because they knew how to solve hard problems (search, scalability, whatever) that the 20somethings had only read about.

+1  A: 

It is not the software engineer who is getting old, but its the technology advancement and lack of acceptance which makes it old. Infact there are few who want to do coding through out there life, or the other gets promoted as per their buisness needs or make them updated as per the latest technology trends.

Sachin Chourasiya
+30  A: 

When most of the current 40-60 year olds started their careers building software was a very niche area. Now it is much more common. I get the feeling that in 20 years from now there will be a lot more older engineers (simply because there are a lot more 20 something engineers around today) and thus a lot more acceptance of older engineers.

+1. There wasn't a very large software industry 30 or 40 years ago when 50-60 year olds were graduating college.
Steve Rowe
I'm convinced this is right. The reason there are relatively few programmers from back then is that there just weren't as many. The computer industry didn't really take off until just a couple of decades ago, after the personal computer appeared, which is coincidentally right around the time you start seeing a lot of programmers!
wow - people graduated at 50 back then! You learn something every day
+2  A: 

In some fields the problem is that there are no young programmers. Certainly in the real time and embedded sector, universities and colleges are no longer turning out what the industry needs. The last four programmers we recruited were over 40 even though we are trying to get in some young blood - not everybody can be technical team leader.

And although we have to use C, perl, Linux (and other old stuff) for our main programming tasks we are more or less totally free to use whatever we like for developing test and development support tools.

I am 53 (and by no means the oldest) and regularly program in c, python, javascript and am using the very latest - not yet released - video/graphics hardware.

I'm 49 and over the years have applied for embedded roles, junior roles too, but have not had any success because I do not possess embedded experience. This seems to be a general problem with the recruitment processes in the IT industry.
+4  A: 

As you get older, there tends to be more responsibilities on you from family, children etc. This does make it more difficult to have the time to keep up to speed with new technologies and to keep sharp. I guess that as people get older, these additional demands might squeeze out the opportunities and ambition to keep up to speed.

I know a lot of guys who just seem to give up on learning new stuff after kids.

You just have to keep motivated and find time to learn new stuff ... in the lunchbreak, when kids are asleep etc.

I think older developers are more careful what they invest time in. They have seen a lot of tech come and go...
+2  A: 

"maintaining boring old code" might be less painfull than you think. Right now, you can't imagine doing that, but when you are, say, 48, having a wife, kids, hobbies, non-techy-friends, just having a well-paid job you do well is probably not the worst thing.

That said, learning new technologies is not necessarily a problem for a veteran, since there is hardly anything so completely new that it doesn't resemble already learned things from the past.

+16  A: 

Written on the day of my 49th perhaps I'm being a bit defensive:

Age has nothing to do with it.

We are in an industry unlike many others where our intellect matters more than our physical fitness; so keeping up to date with newer technologies, practices and thinking is a matter of motivation not capability. The argument that some people become jaded and resistant to newer technologies is one of length of tenure in the business, not actual age, and in my experience often not true.

Suggesting that those of us who have passed 40 are too slow for the cool stuff and should be pensioned off to look after legacy code or do QA work is frankly insulting.

Gordon Mackie JoanMiro
In my experience it is management that is resistant to ideas unless those ideas happen to be their own.I also think it is a bit snobbish / elitist and ignorant to remark that in many other industries intellect does not matter.Being physically fit and the process of maintaining it is beneficial to the intellect.
Sorry, but I think you misunderstood what I was saying: I wasn't suggesting our industry was the only one where intellect mattered - just that it isn't one where fitness is a measure of ability.
Gordon Mackie JoanMiro
Happy birthday Gordon!
+1  A: 

Old is Gold ...

with silver hair.

Change your language. Start calling yourself a developer instead of a programmer, for instance. There is a whole lot of new common language for the same technology that was in use 20 years ago. If you use the older terminology, then you date yourself and people will find it hard to understand you. This is part of updating yourself, but it is at least as important as learning newer technology.

Michael Dillon
surely at his age he is "Developed" by now!
Tony Lambert
+9  A: 

Professor Norman Matloff has campaigned on behalf of older programmers, even testifying to Congress. He is right that there is a lot of outright prejudice against older programmers. But realize that there are fewer older programmers because

  1. Our industry has grown. There were many fewer 25-year old programmers 25 years ago than today.
  2. Dev managers are drawn from the pool of experienced programmers. So, even if some programmers keep programming, the numbers in each cohort go down.
  3. There is another world out there of old COBOL programmers in their 50's. Strangely, even though in principle they are writing code just like you and me, we have little interaction with them, as if we are in a different industry.

    Like gnomes in their underground workshops, they continue to work, out of view, at their well-compensated jobs. And if you chat with them, you'll find that they have certain interesting challenges which you have probably never even seen, like 100% reliability in financial apps.

    In 15 years, maybe you'll be in another distinct industry of outdated Java developers, out of touch with the latest new Clojure-Erlang buzz but still gainfully employed.

    Note that you have the biggest value in the technologies at which you are expert. This will put financial pressure on you to continue with your old technology, ending up as a well-paid, wizened old Java gnome.

Joshua Fox
+1 I successfully imagined a COBOL kobold.
+4  A: 

I am 51 and have both J2EE and ASP.Net experience. Unfortunatley I am having to look for another job here in the UK and it is not easy.

I think most employers are looking for young/cheap developers. Even though I am willing to take a pay cut employers seem to think there is something "wrong" with someone willing to take a 25% pay cut.

I even when for a junior PHP position and got told that "I was to experienced", even though I have not PHP exposure.

I'd hope you don't need to accept a paycut. But if you do, how do the employers even know your former pay? Why tell them? I never have done so, except, on occasion, if it seemed advantageous at the very last phase of negotiation.
Joshua Fox
Most companies do a credit check these days, also some employers are worried you will leave later for more pay.
These are kind of obvious, but here goes:Rule #1: Never disclose what you are making. I usually have to make up some bullsh1t (which is correct in retrospect) that the positions are different, benefits are not comparable, or there are other intangibles like stability or location. Rule #2: while negotiating, the first person to name a number loses.
Ed Griebel
+1  A: 

isn't this a repeat of

Tony Lambert
Where do all the old SO questions go ?

Microsoft recently fired all employees age 50 or more[citation needed] in a software development team that I know. Age seems to be the primary criteria, because some of the guys were excellent. The problem is real.

My best advice is to learn something else than programming, too - the combination of multiple kinds of knowledge is unbeatable in the labor market.

I don't believe it. If that really is true than MS would be really stupid and not just thought of as beeing stupid
Yeah, that seems crazy; Is there a link anywhere? (I feel like wikipedia: Citation Needed)
Sean McMillan
It's common for companies to let-go workers who cost more, and replace with cheaper workers.
I hear that Microsoft as an organization generally focuses on short-term measurable results, so I am not surprised.
Lars D
Citation please ... er where did these devs end up ? Can we get some bootleg code or say MS stole code from an OS app and start a fight ?

Been in the industry 12 years, not really old, but was in management for a stint, got fedup of it, and took a software architect job, which is much much better!


I used to think that there was no future in software development as programmer's got old, Until I met some really smart programmers and in their 50's in my third job, as well as my current job. The key thing about those programmers is that they do NOT act old... in other words, they are not grumpy, they are easy to get along, they are energetic, passionate about programming and generally seem to enjoy programming


Just based on the title of the question "what happens to older software engineers?", I'm hoping (once really old) for some form of karmic recursion...

+1  A: 

They sit back and laugh at the scriptkiddies who can't figure out why, "int," is a bad variable name and who've never heard of, "change control," or, "versioning."

+11  A: 

My wife and I are both developers. We have both been working as developers for 15+ years. One thing we noticed was that there were alot of people working as developers who really shouldn't be, they don't have the aptitude, interest or sometimes even the background. Those folks usually decide that programming is not for them and move on to different job. Some go into management, some become analysts, while others change careers completely.

What's left? The ones who are passionate about development and are interested in doing it right. They love learning new stuff and don't gripe about how things used to be in "The good ole' days." They might be grumpy but they usually know their stuff.

The main problem would be in finding management who doesn't have a pre-conceived notion about what makes a good developer. If they feel that only the younger ones have the stamina to keep up with the pace, I'd wonder whether those same employers were the same ones who believe that the 'Deathmarch' style of project management is standard operating procedure. They'd rather grind through fresh-meat developers than listen to the experienced ones and change their management style.

Lastly, I've noticed that doing nothing but coding holds less business value than being able to communicate with customers, users, and vendors. One reason you start coding less is because finding answers to ambiguous requirements takes more experience and provides more payback to the business.

My advice would be to find a place where they need experienced developers to help with the overall task of creating or maintaining software, that also gives you the opportunity to code regularly. That way you can have the time to keep up with industry changes.

Kelly French


The current mentality of "all developers are interchangeable" assumes no more value in a 50 year old developer than a recent grad.

Since the older developer is more expensive and less willing to swallow the "culture", there is indeed a preference towards younger employees. I understand that this website is where experience matters. Apparently there exists somewhere an employer who cares about quality and he/she will be looking here for it LOL.

Best regards

+2  A: 

I suspect that there are no old programmers... at companies where they hire the cheapest. New grads are cheap and willing to work long hours. If all the company cares about is cost, that's what they'll get. Older coders will migrate to companies that care about technical talent.

That probably means you'll see more older coders in jobs where actually difficult work is being done. IT shows that just need integration and CRUD screens won't get any value from a solid coder who really knows how to build hard things. Actual software companies will probably get way more value from a serious master, and will grab them up when they're available.

Sean McMillan

You always can become a consultant :)

Nava Carmon
+1  A: 

They build their own company and product and make money while they sleep.


Speaking as someone who has 40 in his headlights and approaching rapidly, I suspect a lot of this has to do with a person's ability to keep on top of what's new, what's important, and on changes in the industry. Someone who's been doing the same sort of thing from 20 to 40 may find demand in his skills slowly flattening, but someone who's been keeping up with how the industry is changing for 20 years is going to be ready to keep on top of things.

John Fiala

I have actually been laid off because of my age. My boss and HR brought it up during my exit interview by handing me a waiver saying I would not prosecute for age discrimination. Tied my severance package to my signature. Creeps.

+3  A: 

I'll be 50 in January

For the past 10+ years I've been working for myself as a consultant/developer. I've no shortage of clients, I've never advertised, and I make a quite comfortable living thank-you - maybe not as much as if I'd stayed in the run of the blue chips (where I got my first 15 years of experience) but I work in my own office on the side of my house in a quite stunning part of the Scottish Highlands (I can code and see both deer and eagles from my office window). My development kit has to be seen to be believed (three monitors pah, I have four).

The great advantage you have over young coders by the time you get past 40 is even the most geeky should by then have developed enough social skills to communicate well with clients. If you've been around for 25 years coding you should know what works and what doesn't in practice and be able to communicate that clearly. Of course a certain fascination with new tech is essential and positively cultivating a flexible, inquisitive outlook is necessary too, but isn't that a good thing in itself?

If you can find an employer that will let you stay relevant inside a company that's great, and I've certainly seen a few - I once worked as a developer for a large blue-chip that had a policy of keeping one or two old coders around who were allocated part of their time specifically for general mentoring and that worked an absolute treat - otherwise strike out an be your own boss as soon as you think you're reaching an issue working for employers. There's plenty of people who will appreciate you.

+1  A: 

They .Dispose()

Chris Ballance

Young programmers can be bad programmers, because their wage is low. When programmers get older, they usually try to get a better wage, and they can do that by:

  • Becoming better at what they do
  • Keep learning new stuff, becoming an allround expert
  • Moving into other non-programming areas, combining their programming knowledge with other knowledge.
  • Becoming irreplaceable for your boss

The last solution is bad, really bad. One day you become replaceable, and if you didn't follow one of the first paths, your value is low. The first solution is a bit risky, but in some industries, it pays off really well.

I have met many people who just improved on what they do. Some of them got fired, for instance, as a programmer of telephone exchanges, at the age of 55. They're really not good at much else, and often end up unemployed for a long time, eventually switching to something else with low pay. I also met those that continued until their late 60s doing such things, earning a shitload of money because it would take a group of people to do what their experience can do.

The best insurance is to keep learning new stuff, either in programming, or outside programming. This way, you always have a choice on how to proceed.

Lars D