Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

I"m not sure that the common idea is that younger programmers are more skilled, but rather that they are more in demand. Could be for a variety of reasons, for example:

- cheaper

- less jaded

- easier to "manage"

- more willing to do the boring work that the older devs don't want to do

- more likely to be on call or work extra hours

- less likely to retire next year



sort by: page size:

Either that or there are more young programmers than there are older programmers.

Thats what this whole article is about. Older people usually have less ability to take a higher risk, due to family concerns, or other reasons. It is classic supply and demand. Younger programmers are more sought after, therefore demand higher pay.

I was under the impression that younger programmers are desired because they are perceived as being able to work a lot of hours and because they are less likely to have the family commitments that would prevent them from doing so.

I don't think this is due to a perception of older developers not being as good as younger developers. I think most people would agree that a more experienced dev would have better skills and be more efficient.

I believe it all comes down to pay. The experienced developer commands a higher salary than a 20 year old, rightfully so. But employers fail to see the added value they bring, just as they have trouble identifying the 10x programmers out there.


You are not controlling for the programmer's age as a variable. An equally valid explanation could be that newer programmers have less experience to draw from, where older programmers have more experience and know what works and what doesn't. Or, alternatively, newer programmers might just be a much larger pool of people, and perhaps more people stop programming as they get older than start, so that the average skill of an older programmer is much higher than you might otherwise expect (since all the low-skill programmers quit when they were younger).

True, also the industry prefers younger population coz they can burn more hours and are available for a cheaper than the experienced folks.

Also, the industry somehow seems to stereotype a developer as some younger geeks. The stereotype works against experienced folks sometimes (not always).


The first claim -- that older programmers are more knowledgeable -- is obvious and is not unique to the software industry. This is true of pretty much any profession: the longer you do it, the better you get at it and the more you learn about it.

The fact that there are few older programmers is also not very surprising. This is still a pretty young industry and historically, the demand for programmers has been pretty low. Also, until very recently (the last 10-15 years), advancing in one's career meant moving away from technical into managerial roles.


Younger people tend to be the ones hired early on in the life cycle of a product or company because they're cheap, easy to push into a mold (or so management likes to think) and can do just as good a job (or maybe even quicker) than older people in making something that visually looks like it might work.

Then, as the project matures you'll find that that gained speed comes at a price, a price that will sooner or later offset the higher wages demanded by the ones that are further along in their life (dependents, more aware of their value).

If there are young really good programmers (it does happen, I've met a couple) then they tend to be exploited even worse, they will end up creating a large amount of value for peanuts.

But that's rare enough that it doesn't change the situation too much.

So I don't see any inconsistency, it's just time shifted.


- It's easier to convince young people to accept lower salaries and work long hours (e.g., if they have no family to support or spend time with).

- It's more expensive to buy health insurance for an older pool of employees.

- Young people are probably less likely to be dissatisfied with cheap work accommodations like open-plan offices.

On the other hand, there are increased efficiencies associated with older employees:

- People earlier in their career might have significantly higher job-turnover rates.

- Older employees have more work experience, and can prevent lots of problems before they happen.

- Older employees have had the time to become better at what they do. I don't think the best developers reach their peak skills after only working for 5 years.[1] Learning from your mistakes takes time.

(I'm a developer in my 50s, and I work with lots of older developers who are good at what they do.)

[1] See, for example, Peter Norvig's "Teach Yourself Programming in Ten Years": https://norvig.com/21-days.html


It's a shame that the tone of this post caused it to be downvoted, because you actually do raise a good point that is worth discussing. Maybe talented younger programmers are more likely to job hop and roam a bit, whereas talented older programmers start to value a bit more stability and tenure. Or maybe the older programmers have progressed to a point in their careers where they have golden handcuffs or some other benefit that keeps them pinned to their job?

The post declares, very bluntly, that if an older programmer is looking for a job, he/she must not be any good. Based on my own hires, I know this isn't the case. But maybe the mix is different from the young folks? Anyway, it's an interesting perspective that might be worth looking into.


Given equivalent coding experience and ability, I'd rather hire an older programmer than a younger programmer.

if there is truly no difference in productivity from excellent programmers over 40 and "young" programmers why wouldn't there be companies that take advantage of this obvious bias and hire primarily older programmers? Wouldnt the decrease in market demand for older developers drive their salary levels down and thus provide a large market advantage to the company hiring them exclusively? (obviously assuming equal or better creative and productive output)

I know this is a classic laissez faire market argument.

Hypothesis: On the whole, older developers are not as productive.


I think a lot of the age-ism has more to do with cost than skill. Older developers ask for more pay, negotiate more, and are less willing to put in uncompensated overtime.

The way to get past this is to make sure you develop skills that are exotic and high-end and hard to find so you can't easily be replaced by a cheaper college grad.


I'm sure that's definitely a factor, but I think there are a number of other variables in play (perceived or real). I think there's a tendency to think that in a younger developer you might find more passion, optimism (or at least lack of cynicism), open-minded approaches to problem solving, etc. than in an older one. I think also compared to a number of other industries, the premium put on experience isn't always valued very highly. I think it's increasingly easy to look at successes from little companies full of scrappy recent graduates and wonder why you need someone with 10+ years on your team... For the record I've got 11+ or so years of experience and am rapidly approaching 'middle aged' :|

> Why aren't old programmers more popular?

Cost and reduced willingness to work the death march hours that many places want the new hires to work/are willing to work to "prove" their worth.


I think the idea comes from earlier times where programming skills came in high demand but few actually knew how to code.

I resulted in high influx of older but inexperienced people, maybe with some background in a somewhat related field like electronics. And they were probably slower than young and equally inexperienced people. Experienced developers simply weren't available.

I understand why companies may prefer younger developers now. Cheaper, less constraints, more long term potential, ... but I think that the idea that older developers are "slower" is outdated.


In my experience older devs really fall into two categories with a pretty sharp division between them.

One group has continued to learn and keep up with their skills. These developers are extremely skilled and experienced and can in many cases be far more productive than younger developers with more shallow knowledge. What they lack in appetite for workaholism they make up for in ability to do more with less work and avoid fads and dead ends. They also tend to have a deep conceptual understanding of the entire stack all the way down to the metal, which younger developers often lack unless they're the super-prodigy type.

The second group decided at some point that they knew all they needed to know, and they've gotten really rusty and out of date. When coupled with higher salary demands and less time flexibility, this latter group really are at a huge disadvantage vs. younger developers in the labor market.

Here's the trouble and the source of a lot of the age bias IMHO.

The first group are seasoned black belts and are exactly the kind of devs you want if you are doing seriously deep ground-breaking stuff or if you want quality. In other words if you are really innovating. Ideally you'd probably want a mix of really experienced devs with a lifetime of experience and younger devs that might bring some new perspective, but you'd certainly want at least some of the former on the team to keep the latter from chasing fads and implementing badly thought out junk.

Problem is that most work isn't this. Most work is CRUD-slinging and prototyping and cobbling ready-made modules and services together. That kind of work does not require the deep experience or skill set of the first group.

In other words: seasoned "black belt" developers are over-qualified for most mainstream programming work.

Now throw in the fact that your over-35 developer wants a higher salary, likely has kids and actually wants to see them, etc.

It just makes sense for a lot of shops to recruit cheaper younger developers right out of school who have a lot of time on their hands and who know how to do standard types of work with the latest tools vs. older more expensive developers who know everything and can implement exotic algorithms and close to the metal stuff you probably don't need.


The vast growth of the programmer population as a reason for why there aren't as many older programmers is a very compelling reason. I'm surprised I haven't seen it before.

I think it's more that the priorities of older programmers are different. If you're in your 20's, you are less likely to have kids or other things that take you from work. If you're older, you have a family and other drains on your time.
next

Legal | privacy