Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Age discrimination for older software engineers is real. It gets enforced in subtle ways. It is up or out culture at the end.

Age discrimination doesn't get the same coverage as gender, race or sexual orientation discrimination. I wish companies also added age in the diversity reports, and if they did talk about why there are such a few percentage of older folks in engineering. If we wish to make engineering career to span several decades, we should all actively try to get o address this.



> "why there are such a few percentage of older folks in engineering"

No, there's a small percentage of older folks in software engineering. In almost any other engineering discipline, you'll find many older engineers who enjoy long careers, and whose perceived value often grows with age. That's because actual engineering principles change very slowly.

Most software jobs do not involve much engineering in the traditional sense; most of the effort is keeping up with the constant churn of flavor-of-the-week libraries and frameworks, information that will be often be outdated and useless in a few years.


>will be often be outdated and useless in a few years.

Often it's "useless now and outdated in a few years". It's amazing how much software today justifies its existence through a weird self-referential loop that isn't connected to solving any problems outside of itself. Complex tools to manage complexity and so on.


The usual pattern is that the generation N - 1 of a tool didn't solve for some dimension D_n of the problem, so generation N is created that handles D_n.

The usual defect is that generation N isn't very good at D_n-x where x is greater than the mean experience of the implementing engineer(s), and often isn't even very good at D_n-1.


I see you’ve worked with Angular before.


If I see one more blog post that has step 1 as "install composer/bower/npm", I might vomit.

When you need a finicky "dependency manager" just to get started writing something, you've already lost.


I opted for a recent webgl driven app to use no framework for our frontend code and it was lovely. It really makes me wonder why they get pushed so hard. There are no 'indications for use', just 'its HOT right now'.


MSBuild... cough


Msbuild, MSdeploy, and SqlPackage are those kinds of techs where I profoundly resent the man-hours I've spent learning to work around their quirks.


I have no doubt there is some age discrimination, though I haven't experienced it personally. What I want to point out here is that there were a lot fewer of us in total when I first started (I'm 58 now). I find very few peers my own age now, but I also found very few peers my own age when I was 25. So just going by percentages may be misleading for a relatively young discipline.


I wonder about that, too, although I'm "only" 45. I still have tons of people pinging me with new job offers, and they don't look like the sort of job offers that they're going to offer a 25-year-old. Regardless, I put a lot of effort into making sure that they need me more than I need them.


> information that will be often be outdated and useless in a few years

but this is was HR believes, not the actual reality of software engineering nor of software development.

the concepts between persistence, object model mapping, handling user events, propagating user intent to business logic, share data between heterogeneous systems and present everything coherently to the user are not going to change so all the solutions are going to look and feel the same since stems from the same problems.

I mean for example chaining template for code reuse isn't something that only react ever did, I remember turbogear doing something very similar conceptually with how nesting widgets and widget having each their own template and dictionary of inputs that took from the model state directly and the lesson you learn on problem solving and code reuse do stay with you a long time, longer than any single framework.


I'm always unsure about how to judge whether the lower percentages of older engineers I see is due to age discrimination or just a low percentage of older engineers period. Software developers are young in general. And interestingly the United States has the highest average age [1]. At my workplace I can count at least one "greybeard" on most teams. I don't get the sense that they are discriminated against because of their age. I've always enjoyed talking with them about how software development used to be back in the day. I remember talking to one guy that worked on a text editor back in the 80s that was backed by a mainframe. The terminal didn't have enough computing power to manage the whole document, so it only stored a few pages locally and swapped them in from the mainframe as the user scrolled to them. Things like bulk find-replace were done via an RPC. It's interesting how many parallels this has to modern client-server web-apps. I especially like to hear from people that programmed on punch cards - that's kind of stuff is fascinating to me.

I also wonder how much of the perceived age discrimination is due to expectations of an ever-increasing salary. I remember one older co-worker that interviewed for a job, liked the company, and got an offer that he dismissed as "not much higher than entry level" and even called the offer insulting. My line of reasoning was that if he didn't have relevant domain experience why wouldn't get paid not much more than a new grad? It was still well into the 100-200k range - in the Bay Area but in a cheaper city (San Bruno I think). More than enough to save and live a comfortable life. I wonder how much of the perceived age discrimination is more about being realistic about the fact that years of experience don't automatically translate into higher productivity, paying younger folk commensurate with their contribution - as opposed to other industries where it's entrenched that young people get paid less and older people get paid more.

Not saying age discrimination doesn't exist. I've seen job adverts that explicitly specified an age cap of 40 (despite this being blatantly illegal).

1. https://www.businessinsider.com/silicon-valley-age-programme...

It's worth noting that surveying from Stack Overflow can mean significant selecting bias.


I think you hit the nail on the head. Absolutely age discrimination exists but there are also other factors at play in some situations. Without specific domain knowledge or management experience there is a ceiling to how much experience helps the company.

For a software developer working on standard CRUD database-backed applications, the difference in productivity and usefulness to the company at 5-10 years is really not that different at 20 years.

This effect is also compounded by the fact that the less experienced developer now looks a lot better if he is essentially doing the exact same job that a 20 year experience developer is doing.

Note that what I'm talking about has very little to do with "keeping up with the latest frontend frameworks" or stuff like that. Software engineering in this sense is like a trade - if your sink is broken and you need it fixed, would you hire pay $15 / hour for a plumber with 5 years experience or pay $30 / hour for a plumber with 10 years experience? You know that the sink can be easily fixed by most decent plumbers so the amount of experience they have really doesn't matter beyond a certain point.


If your broken sink is connected to a broken pipe under the street in front of your house on your property, and you find that you need to hire a Master Plumber with a team of juniors to fix it, you may find that the same price/years of experience equation exists.

The hierarchy of the trade union is what sustains this service model in the marketplace.


"hire a Master Plumber with a team of juniors to fix it"

In that situation I would consider the "Master Plumber" akin to a lead developer or project manager. Which goes back to my main point - in software development you eventually need to either move to a management/leadership role or specialise in domain specific fields like security, computer graphics, systems architecture etc.


Wouldn't that be the responsibility of the water company which is civil engineering


Every house has a connection to the water main - what happens after that connection point is not their responsibility to repair.

But they will shut it off if you don’t fix it in, say, 10 days...


"You know that the sink can be easily fixed by most decent plumbers"

Find a decent plumber who isn't so busy that they will do a small job like fixing a sink - now that is the real problem.

And bad plumbers can create chaos in ways that would make lawyers jealous - we had to call the police on a plumber once....


>I also wonder how much of the perceived age discrimination is due to expectations of an ever-increasing salary.

Expectations on whose part? Based on what I read here on HN, many employers don't want to even interview older applicants because they are just so sure that any older person is going to demand too much money.


Granted, the reaction of my older co-worker has demonstrated (albeit in only one instance) that this assumption does hold true.


> My line of reasoning was that if he didn't have relevant > domain experience why wouldn't get paid not much more than > a new grad?

Presumably because you're paying him for his ability to apply his broader knowledge and experience to this domain; he is not coming to the table with the same limited set of tools as the new graduate. He will be up to speed more quickly, and his solutions will tend to be more comprehensive because of his wider perspective.

If the interviewing company isn't looking for that, then the offer reflects their present needs -- not the candidate's capabilities. I could see how that's insulting, since that's a whole lot of wasted time.

> I've always enjoyed talking with them about how software development used to be back in the day. From your words I see that you value their knowledge of things past, but I don't see anything about enjoying the discussion of current/future development with them. Is that not something that you value as much, or that you find in some way lacking? Or something that you haven't explored because of age?


How much more productive is a developer with 20 years experience working on something [s]he has no direct domain knowledge about vs. one with 2-3 years? Probably not enough to justify a very substantial salary difference.

Re: enjoying talking about current development. I do enjoy that as well, but that's not specifix to age or experience. The sane discussions can be had with less experienced people. Older developers uniquely offer those experiences.


Yea. As a traditional engineer (non software) I shudder in horror at what y'all go through. My industry is all about what you know and there seems to be nearly infinite things to know. That knowledge takes years to accumulate, so a Senior Engineer with 10 years of experience almost always has an order of magnitude more value than a novice engineer. Although there are some seniors that I have no idea how they got promoted, it is generally rare.


Successful companies don't have this sort of framework churn. You see it in the startup world because companies are always starting up right when some new framework came out. But anything out of the MVP stage doesn't churn on frameworks, unless something went horribly wrong - like passing on experienced engineers.


>Successful companies don't have this sort of framework churn.

Sure they do. They're just slower at it. I've seen plenty of established companies jump on React bandwagon right after jumping off Angular, for example. One year and the "new" framework is thrown out of the window. (But all the software written in it remains and creates maintenance liability.)

Funny thing is, more often than not they don't even need SPAs in the first place.


It happens, but usually for some decent reason.

Some companies for instance have a very stable business and keep a stable stack, but then hit a wall when trying to hire. They'll see average people coming to them, but those are not as efficient as their current staff who is now super experienced and want people who can match them.

Or they'll try to find graduate level people to train forward, but newcomers have no interest in the old stack, as it won't pimp their resume that much to their eyes.

Solution: keep using trendy frameworks.

Veterans will be happy to see shiny things, recruiting becomes that much easier, buzzword capacity increases all other the map. And all of these have a real benefit, in people retention, hiring cost, marketing opportunities that can cover the man/hour cost of moving frameworks.


True not everything is like the crazy front-end JS world but when it comes to age we're talking about a very long timescale. Say ~40yrs in the business (20+40=60).

How many companies maintain a framework/stack from 20-30yrs ago? The average new company will die after ~7yrs from start date. Only a few major monopoly-style companies survive like IBM and Microsoft. Which is basically the only software that runs forever on that type of scale. That's only a percentage of available jobs.

And even within IBM and Microsoft there are countless sub-projects within the company...beyond say the classic Windows OS, Word, etc from the 90s there are tons of other programming work going on (for ex: VSCode is JS or IBM's cloud + consulting work). Very few of those newer projects are going to look much like the 20yr old one you cut your teeth on early in your careerr.

I don't think no one is saying age discrimination doesn't exist. But this is a unique problem in our industry rarely found in other fields.


    Very few of those newer projects are going to 
    look much like the 20yr old one you cut your 
    teeth on early in your careerr.
Maybe I'm too young to comment, but my first job as a developer was almost 18 years ago now & even tho I'm no longer using the same language & tools a lot of the challenges of software engineering are the same now as it was then (and you learn using new stuff incrementally anyway).

Overall the experience of developing a comparable-scale project in java on tomcat in 2001 is not that different from a modern one in ES6 on node.js in 2019.


I've been doing this about the same amount of time, and yes, everything is the same as it was 20 years ago. Frameworks come and go, but they aren't that different. And you are hopefully mostly writing application code not framework glue. So the framework doesn't matter.

All the popular languages are sadly still descendants of C, just with variations on the strongly/weakly typed spectrum, and if functions are first or second class.

The hard stuff is still identifying requirements, managing expectations, and writing code that can adapt to changing requirements overtime. None of the hard stuff has anything to do with the language or framework you are using.


That's even worse then: You are honing obsolete skills and will have a hard time finding a new job if you want or have to.

So you are an expert in Java service oriented architecture? Sorry, but we are now looking for developers with Spring Boot 2.x Microservice experience.


Well, software folklore seems to say that COBOL graybeards get paid A LOT.


Does this hold for everything? Do we have any other examples besides the fabled COBOL developer?

Are application server / Java XML SOA graybeards also paid a lot?

My current technological focus are Spring Boot applications, seasoned with everything that comes with that: SQL, devops basics, etc. If Spring Boot is still a thing in 10 - 20 years I'd be extremely surprised.


  most of the effort is keeping up with the constant churn of flavor-of-the-week 
But that only applies to new and recent code bases.

The age purge is ongoing even for long-established, mature code bases and projects, e.g. IBM, HCL, etc.


It's been awhile, but I interviewed at LinkedIn some years ago and it sounded very much like an anything-goes ethic. It was based on feature ownership, so if you had an idea you could implement it however you wanted as long as you also supported it. I was left to think that flavor-of-the-week is very much a part of life there if a programmer wants it.


Citations needed. You're basically saying "old people don't learn new things."

My experience has been very different from what you're suggesting. All the "older folks" I've worked with know everything about your favorite framework...they just don't care. After you've been through the cycle for 10 years or so you cease to be impressed.


> Most software jobs do not involve much engineering in the traditional sense; most of the effort is keeping up with the constant churn of flavor-of-the-week libraries and frameworks[...]

I'm not so sure about that. Yes, keeping up with the latest tech is a lot of effort, but the majority of software development is using those tools to actually solve problems. And the principles used to solve those problems don't change all that much. Patterns of Enterprise Application Architecture came out almost 20 years ago but is still useful today.


But companies are not hiring for software architecture and enterprise patterns. They are hiring for flavor-of-the-week.


Is that just Silicon Valley though? I'd wager there are just as many companies out there trying to support a legacy code base or just doing straight up SharePoint work than worrying about the latest and greatest flavour of the month.


Exactly. The flip side of the constant churn is the majority of companies have code bases that are not the flavour of the month that they need to support. Given enough time, most companies will end up with multiple generations of flavours of the month that require attention.


Are the people who are old now part of the flavor of the week framework frenzy? Or were they before AJAX was a hot term?


Software engineering is a new field, and therefore has fewer oldies.


It's really not. There were people long retired before I hit the workplace and I'm fast approaching 50.

There is a combination of seemingly relentless growth in demand and people deciding they've had enough and hitting the management track however. At least in London/finance. The number of people I started with that are still coding on a daily basis is very small.


Yes


I think a lot of companies don't realize the damage they do to themselves. I can understand the appeal to startup managers; to be blunt and a bit uncharitable, hire youngins' and you get cheaper people whom you can push around more and train up in your own particular pathologies, instead of dealing with imported ones.

But if the firm survives the startup phase, you really want anchors, both in technical and cultural dimensions. A certain type of tech-manager feels threatened by that, I think, so they jettison anyone who might be too independent.

Not to mention, experience matters. There are a few folks on my team who are the go-to folks, not because of their title, but because they tend to know the correct answer/are able to diagnose and fix your weird issue. Those people, without exception, are neither young nor managers.

"Sonny, that reminds me of the time I canceled a 3 month reporting project with two hour's worth of awk..."


Firms aren’t trying to survive the startup phase. That’s just it. A minuscule number of startups ever survive as an ongoing independent entity especially if they are venture backed. Their main goal is to get acquired. Look no further than YC funded companies. Only one has ever gone public.

I used to be idealistic about software development and architecture and wanted to do things “right”. When I realized that venture capital backed companies wanted me to just apply enough duck tape to get customers to survive until they got their next round of funding or got acquired, I stopped thinking long term.


There are still companies that build good products and focus on core engineering. Maybe not (all) startups, but despite the preponderance of every kind of startup, there are still many who at their core are solving difficult engineering problems.

Of course, reality gets in the way and they often have to cut corners every now and then.


That may be the case, but if they take outside funding, their primary focus is by definition not to be a “lifestyle company”, but to have an exit strategy. Statistically, that exit strategy is to get acquired.

Your investors don’t care about how well architected your code is or the amount of automated test coverage you have.


We could start right here on HN by calling out those who use "grandma" to mean "person who can hardly even use a computer".

People who are now old enough to be grandparents INVENTED computers and the internet.


I'm reminded of my dad, bought some surplus home security cams. They were surplus because they were discontinued on account of the firmware being shitty + spyware. Basic shlocked together embedded linux crap.

Found someone that had developed fixed firmware. Re-flashed them with that. Figured out how to get them to send a notification to his phone when the motion sensor goes off so he knows when the deer are eating his wife's plants.

My dad is 83.


One of the early Foscam pan-tilt-zoom IR cameras? Your dad did better than I did. I liked the hardware, for the price point, and wasn't aware of alternative firmware. I ended up putting it on its own LAN with an old OpenWrt router, and kludging simple motion detection with a little program that ran on the router. (Script pulled frames from the camera with some HTTP interface using wget or curl, and used ImageMagick for the hard part.)


Foscam sounds familiar. My dad just mentioned it in passing.

My dad is also retired. And the only thing he doesn't seem to be able to do is nothing.


My dad's in his 60s. Runs marathons once a year. Works on backend stuff in a ML startup.

I am not sure I can make 10 km these days...


I wish my dad was still that clever and he's almost two decades younger. Your dad is awesome.


We do a lot of digitisation in the public sector of Denmark, in fact we’re world leaders in it along side Estonia.

Being an old social democracy we tend to build solutions to be inclusive. This means you can opt out of a range of our digitised options, and it also means we do extensive service design and benchmarking to make sure meaningful software gets to the citizens and that they know how to use it.

Almost every elderly citizen in my municipality is a digitally competent citizen. The ones who aren’t, often suffer from sicknesses like dementia or mental disabilities.

By contrast we have twenty year olds who don’t know how to install a program that isn’t part of “the App Store” or don’t know double clicking with a mouse is a thing.

In the tech part of it, we have old developers who’ve been through decades of soa vs microservices and a billion frameworks who can build solutions that require minimal maintenance. While some of our freshly educated engineers build things that can’t even last a year without needing major updates or refactoring because their hipster packages broke. We also have extremely talented youngsters and old engineers that can’t write a for loop, but in general, age is extremely valuable if you want to actually operate the software after you build it.

Ageism is simply put silly, unfortunately it isn’t just a thing in tech l. I see it in several areas, even in the public sector of a Scandinavian country. I’m not sure what we can do about it, but we need to do something.


Fact. As someone who runs a startup that targets grandparents, they know the internet well. I’ve even had a customer say “why do young people think we don’t know how to use the web? We invented the fucking thing!”


Heheh. My grandmother literally was a programmer. Not a computer scientist by a mile but she wrote software as a Sr Analyst in the oil industry— I believe her lingua franca were FORTRAN and COBOL. She retired in the late 80s and was hired back for a few years in the 90s because even then they didn’t have enough people working in the language to draw from.

She passed away a few years ago now.


My grandpa once fetched cigarettes for Von Neumann.

Which is to say, he basically invented the computer.


When I operated mainframes, the raised floor area (where all the computers, drives, and major printers reside) was the only place one couldn't smoke.


Part of this is boomer performative incompetency at computers, which they do as a status/power move to demand humans serve them at various levels.


This is important to echo, I think. In service industries (I'm most familiar with property management) there's a very real tendency for folks in today's "Grandma" range to just flap their hands and yell when asked to email instead of call, even when they get a receptionist who can take the problem down and email it in for them. But it's unreasonable to admit that they just want a person to bow and arrow and treat them specially, so it becomes an "I can't [so you have to]". And now a lot of this performative incompetency has now seeped into the general reference pool.


This sounds more like the behavior of a narcissist than a generational thing (and there are plenty in that generation).


I remember I was sitting at a coffee shop and a lady sat in front of me and we started chatting.

She would have been in her late 40s or early 50s. I thought she worked in banking or sales as many do around here. Turned out she was at IBM building early Unix systems. I was so impressed by our chat. She had left the industry at the time.


Now I know plenty of competent and masterful tech pioneers but they are sort of the exception that proves the rule - it generally is or was their career or at least a hobby and it isn't expected for them to know it.

A young person from the first world who wasn't say a mennonite not knowing how to send an email attachment is seen as incompetent. An older person who doesn't is seen as not adapting to a changing world.

While stereotyping is grossly unfair on an individual level judging the group based on the right end of the bell curve isn't a good representation. It would be like judging the intellectual capabilities of all children by 12 year old college graduates. Sure they prove capability and not to dismiss them out of hand but certainly not universality - moving all elementary school students to high school wouldn't be too effective for most.


Let me start by saying that I absolutely agree with you - it's a dumb insult now and always has been.

That said, anecdotally, my grandmother recently passed away having never used a computer in her life. Never sent an email, googled anything, or had a Facebook account. She was in her 90s and simply never had to use one. I often wondered what that life was like in 2019, but she had nothing to compare it to and thus couldn't really share. All that is to say, there really are both ends of the spectrum out there.


I bet there are more 20 year olds that have never driven than grandmas who have never used a computer.


Soon its meaning will be replaced with "person who knows how to type"


This usage of "grandma" is sexist as well -- it's much more common than "grandpa".


Grandma testing refers to one's own grandmother, not a random person.


People can say whatever they want about their own grandma, but I've seen many comments that were clearly referring to grandmothers in general.


I think, by and large, "calling out" is something we ought to be doing much less of.


When I said "calling out", I meant responding to a post here, not doxing someone or stalking them on other platforms.

If people started posting blatantly racist things here, should we not say anything?


I did a coding bootcamp with a bunch of folks. A few older guys like me, and mostly younger folks. We all had a great time working together (I wish we could have more) and we compared notes after interviews.

Older folks like me, got lots of "culture" questions that were so vague. I'd ask what they mean but they can't really explain what they were getting at. I'd just explain that I've worked with a lot of different people, mentored new employees, etc.

When we compared interview notes younger folks, never heard that phrase. Now that could be nothing, but it felt like something.

One guy from the camp actually had the HR person call him up and say they were concerned about his age. When he asked her what that meant, she couldn't explain exactly. He thought maybe she realized what she said and was embarrassed, he was annoyed so he asked later what they were concerned about "oh your age, you're older".... nope, she apparently didn't think anything was wrong with that.

Meanwhile I got my job eventually. I see folks come and go. Younger folks realizing they don't like the work and moving on (nothing wrong with that) others invited to move on. The president of the company says to me one day "You just seem to get a lot of these things, you can talk to customers, our sales guys, I like your communication.." and so on. Like yeah, because I've done other technical things before, have experience. Experience pays in a lot of ways.


Honestly I think the best way to address this, is to call it out before it becomes an issue.

Tell them why you're still in an engineering role.

There is a reason, and some folks are just bad at their jobs, have no people skills or their skills stalled decades ago and they checked out.

Others, like yourself, are still interested in engineering and have no interest in management.

You're at an age where you will always be put on equal footing or above those you interview with BECAUSE of your age. Use it.


Yup, you have to sort of go on offense I think and say "I've got experience, that's an asset, here is why."


I have hired a good number of "grey hairs" in my time. Usually they're lead engineer IC types. They typically have a couple kids, have great stories about software development in the 80s (one guy was at NeXT with Jobs!), and know everything about your favorite framework but don't think it's world-changing. They usually have a story about how they took 5 years doing something wild and non-software related.

These engineers, in my experience, have the greatest likelihood of being great hires. They require less management, understand getting results, and have a much easier time working with more kinds of people. They write code with an eye for maintenance, and are more likely to stick around for the long haul to maintain that code instead of job hopping for promotions and raises.

Bad managers can be reluctant to hire them or keep them because they can be intimidating to manage. They quite often have more experience than their managers, and are more inclined to challenge their ideas. Inexperienced software engineering managers I've met think they have to know more than than their team or they'll be a threat to their position. There are also the usual "soft concerns" that are very similar to the ones leveled against hiring women, such as being more likely to choose work/life balance.

I was lucky in that I worked with my first grey hair for several years before becoming a manager and taking them on, so we already had a working relationship. Without that, I imagine I would've fallen into the traps above.


This is one of the reasons I am now contracting. Most of my clients have never even seen my face and I don't have to get involved in company culture clashes or politics.


If I look back at my career, the stress has never come from the technical responsibility of producing software, it’s always the politics and red tape. I don’t do large companies. I realized that I’m just not a fit for them after working at what was then a Fortune 10 (non tech) company.

Not dealing with corporate politics by either working for a small company as a salaried employee or working for any company as a contractor is the only way that I’m going to be able to keep doing this for another two decades.


How do you manage to never show your face? Do you mean sub-contracting where someone else does the work and interfaces with clients?


Remote work? I rarely have in-person client meetings anymore. And honestly at my old job it had offices around the country so even then there were people I'd worked on projects with for years and had never met in person.


Remote work. It's 99% over the phone/skype/webex (usually voice only).

On occasion, it's video.


Video or in-person - they're still going to see your face.


I with mental disorders would get more attention.

ADHD, PTSD, dyslexia, social anxiety disorder, etc.

Just because someone is white and male doesn't mean they're not struggling or discriminated against.


They have tried to push me out of the industry many times, I'm pushing 50 but my ability to learn new things rapidly has enabled me to hang on long past what some might consider my expiration date. To some extent the 21st century can seem like Logan's Run, really the Feds expect us to work until we're over 70 years old, but given tech is perhaps the only decent paying industry left the impact of age discrimination has a broad impact across a lot of areas including projected tax revenues.


> but my ability to learn new things rapidly

This is one of the issues in my experience, you might be in the minority there. I'm pushing 40 and notice I have a lot more interest in new technology and stacks than many of my colleagues (I've always been like that) - but the 'more experienced' they get, the harder it becomes to convince them of the advantages of new approaches, and disadvantages of their 'proven' way of working, especially seasoned developers.

They are also usually in more senior or team leader positions, which means they are very influential or can call the shots. I've seen months wasted on projects that could be just as well written in Python in a few days by a single developer, just because the 'senior dev' had something against interpreted languages and the only option for him was C++. As much as I liked the guy personally, and respected his skillset, he seriously limited technological progress within that company - which was a huge part of the reason I quit there and became freelance. Ever since - I've seen quite a few very similar situations.

Young people will jump into things without looking - which is not good, but saying no to them and blocking off their stupid ideas is a lot easier than saying no to a guy with 30 years of experience...


"If he hasn't made it to management / principal engineer by that age he must be a slow learner and therefore not [company] material"


I taught myself to code on a C=64. I took a detour in life and was in management of a completely non tech related industry while putting myself through an engineering degree. I've been programming professionally for some time now. Through it all, all I have ever wanted to do was program. Why is it so bad that that is all I still want to do that at 47? Especially when I'm damned good at it!?


I also started programming in 65C02 assembly in the 80s on an Apple //e and have been a professional developer since 1996. During that time, I’ve only been anything close to management (the dev lead for a medium size company) for 2 years. I hated every minute of the lead part.

I left the company to work for a small startup and negotiated not to be a team lead. I reiterated that at my last review. I’m much more effective just being a member of different teams and guiding the teams through just mentoring, advising and demonstrating.

If at all possible, I plan to be here at least another 4 or 5 years, but this will be my last software development full time salaried job hopefully. I’ll be 50.

I personally haven’t heard ageism being that much of an issue from other developers who are also 40+ who have kept their skills and their network current - ie we hardly ever get rejected from jobs we apply for. But, I definitely plan on contracting or consulting after I leave my current job.


The US Military used to have a separate track for technical specialists. The only rank left over from that track is "Specialist - E4". That line went all the way up to SGT Major, IIRC.

So, you aren't bad for wanting that; specialization (to the degree of artisan) seems to have fallen out of vogue (except for rockstar roles, which some exist in programming).


It was before my time, but I really love the Commodore 64's accessibility and learning curve in certain ways. One could mess around in Basic and slowly learn programming, as well as decide to drop into 6502 and manipulate things more intimately. Someone interested could slowly learn the ins/outs of their computer and become a competent operator while having fun making something interactive.

I really admire the generation older than me having that sort of experience, as I think by the time I was exposed to later PCs things had become more and more abstracted. Not that we should return to my romantic notion of Commodore 64s, but there's something that feels holistic about it than a more conventional PC setup today.


Greed. There's a lot of money in the industry and it's a common personality trait to reduce competition for it, so old people, self-taughts, deformed, disabled, brown, etc. are denigrated and run through gauntlets of interviews for the privilege of writing code that puts a number in a little red circle on a webpage.


If you know COBOL you should be fine.


Define "know."


If you move '123' to a field F1 with a picture of 99999, then move F1 to a field F2 with a picture of XX, what will be the value of F1 and F2?

Answer: F1 contains '123 ', F2 contains '12', because both of these are alphanumeric moves even though F1 has a numeric picture.


I've sat on hiring loops where this happened -- candidates were not hired because their current level was not high enough given their years of experience.


Part of the reason age discrimination does not get the coverage is that age discrimination disproportionately affects white males. This is due to the fact that as you go back in time in the US, white males made up a higher percent of college graduates and professionals than they do now. One side effect of this is that age discrimination likely makes your diversity numbers better.


I'm really confused here, anecdotally I see age-discrimination concerns about the same rate as female-representation concerns in my engineering-related social media (HN). But I'm open to being incorrect as I'm only a human; do you have any statistical media analysis to verify the lack of coverage?


Google search for gender discrimination silicon valley.

https://www.google.com/search?q=gender+discrimination+silico...

Front page articles from New Yorker, Guardian, NBC Affiliate, Wharton, NY Times, Atlantic, CNN

Now with age discrimination silicon valley

https://www.google.com/search?q=age+discrimination+silicon+v...

You get Entrepreneur, Wired, Axios, The Ladders, Dice, USA Today, Market Watch, FT.

In the mainstream press, gender discrimination is focused on much more than age discrimination.


Age is part of diversity as well


I agree, but not everybody sees it like that. I have seen companies talk about how they hired more people of a specific gender or race and increased their diversity with respect to gender or race. I have never ever seen a company ever talk about how they hired more older workers and increased their diversity with respect to age.


Interesting observation.


Age discrimination affects everyone. But older people tend to vote conservative, so left-leaning media has no interest in engaging with that group and right-leaning media is more interested in the "corporations are always good" meta-narrative. It's not politically opportune.


This comes up a lot. People are definitely biased towards young, white, males doing most of the coding because it is mostly young white males doing the coding. Part of this is simple demographics. Part of this is confirmation bias. And part of this is our education system and culture filtering out disproportionate amounts of women and non whites who for whatever reason never even get on the career-path for becoming an engineer. Some countries are much worse at this than others.

Uncle Bob has a nice article explaining that the number of programmers doubles every five years: https://blog.cleancoder.com/uncle-bob/2014/06/20/MyLawn.html

So the chance of encountering somebody over 40 in a project is about 2^4 or one in 16, assuming lots of people in their early 20s are outnumbering those in their forties. It jumps to 32 for people over 45, 64 for people in their early fifties. I know people who are still coding in their late sixties. I'm 44, and most people I deal with are below 30. Most of the people my age that I know or used to work are by and large still active in the field though a few of them have become managers. Also, seniority means they tend to be big earners and typically too expensive for small projects. Quite a few are doing very lucrative free lance gigs at premium rates, disappeared into big corporations in some senior role, etc.


Age discrimination for older workers everywhere is real.


Not in medicine and there are some legal roles and financial roles where it’s beneficial.


Not in the same way, but there definitely is in medicine. It’s less severe because you don’t finish training until you are in your thirties, so you’re good until your ... oh, fifties? Maybe sixties?

After that, you had better be visibly up to date on your field, because it will be people’s starting assumption that you are woefully behind the times. And, in fairness, it seems like many docs at that stage of their career are.


Sixties is retirement age.


You don't start working soon in Medicine either. Basically the decade you spend studying, the lost decade of early adult life of 20's gets shifted the 50's.


"Age discrimination for older software engineers is real."

Can't say I've seen this in Ireland, I found that good experienced developers are highly valued. Do you think it's worse in places like SF than the rest of the USA ?


I'm in my 50s, so I hope you take this the right way - is it actually age discrimination, or is it higher salary discrimination?


>Age discrimination doesn't get the same coverage as gender, race or sexual orientation discrimination.

That's because the vocal parts for the "gender, race or sexual orientation discrimination" are mainly white well-off younger people.

Gender causes naturally draw them in. And through they are predominantly white, race causes make them appear as hip and invested in other cultures.

For them being old is not a reality. If it's anything, it's obscene. Why don't these old people just die?

That's the same reason those giving coverage to "gender, race or sexual orientation discrimination" also get a free pass on pissing on poor people (whether "white trash" or black/latinos/etc when they're not subjected to race-driven but poverty driven abuses).


One reason for a lower proportion of older programmers is that the field overall has grown dramatically, and many older programmers move to management, while new people entering the field tend to be younger.

But median age for programmers is ~40.


Those youngsters will age too and be over 40 someday.


> median age for programmers is ~40.

That's encouraging, but a bit difficult to believe. What's your source?


web search -> data from the american community survey (done by the US census bureau)

But here’s a BLS page, https://www.bls.gov/cps/cpsaat11b.htm

Adding up a few related categories that’s only counting about 2 million workers, so it’s also possible that some younger workers aren’t being properly counted in the right category. Dunno...

Also keep in mind, a whole lot of programmers are working on some legacy enterprise applications instead of working at young companies on web apps. In some companies the age distribution is going to skew much younger.


While certainly age discrimination does exist, I'm 41 and I haven't experienced it yet. If anything, I've found that what I do is more in demand than ever, partially because there's been so much growth in the industry that there are proportionately very few people that have been around as long as I have. A big part of the reason you see so few gray hairs is that there just aren't that many of them to hire.


Yet the bigger issue is allowing only a handful of hands make these decisions while we give them the lionshare of our blood and sweat.


Not just for software engineers. Age discrimination is real. It exists for young people, but it also exists for the group at hand here: old people.

It is real in general and in the end of last century it has become severe because of our quickly shifting society (the "computer" and "networking" revolutions, among others)


It's really nasty. Imagine how bad the intersection of it must be, like the odds of getting laid off if you're old and black or old and female? I bet the odds approach 100%.


I’m Black and have a disability that only allows me to type with one hand. I can tell you with almost 100% certainty that I haven’t been discriminated against.

How do I know? My success rate from applying for a job to not getting rejected (ie I take myself out of the running after I get an offer) is close to 100% over the past 20 years. I also don’t blindly submit my resume without an internal referral or through an external recruiter.

Software development is very egalitarian.

I could say the same about age but no one can tell my age yet. I go to interviews clean shaven and most non Blacks can’t tell my age without any outward signs like grey hair or a receding hairline.


Hard to say.

Me = 35+ years in harness. Black coworkers in that time = 0 Female coworkers in that time = 3


It depends on what kind of work they're doing. If they're doing government contracting, they'll probably never get fired because they fill so many "diversity checkboxes" that their company will want to keep them on just for help winning contracts.


Some would say it's simply that cognitive decline due to aging makes older people less likely to be able to cut it as a programmer, especially given the higher rate of change in the field placing less emphasis on crystalized intelligence and more on adaptability compared to other fields.


> Some would say it's [...] cognitive decline due to aging

And I say that this assumption without evidence is a textbook example of a prejudice.

Therefore, those "some" are bigots but the good news is they'll stop being it in a few decades, when they'll become the target of this very same bigotry.


An individual can easily remain capable into late age, but it's not evidence of age discrimination if mostly young people work at/apply to some positions. Here's some evidence of cognitive decline: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2683339/


You just cited "mostly young people work at some positions" as evidence against age discrimination.


Skimming, that is an interesting article. I feel more productive in my newfound dotage than I was in my twenties. Nevertheless I suppose the data don't lie, do they? Or mislead?

> Results from three methods of estimating retest effects in this project,... converge on a conclusion that some aspects of age-related cognitive decline begin in healthy educated adults when they are in their 20s and 30s.

If you (and I hope you do) live well beyond your 20s and 30s I hope you'll remember that getting fucked by ageism is real and unavoidable if you work for the man in this industry.


For my anecdote, being in my mid 20s I feel a bit less sharp and with less energy compared to 5 years ago.


And those who say that would be full of shit. We have doctors, lawyers, judges, scientists, etc. all remaining productive and employable late in life, and those fields also see change that you have to stay on top of. The ageism in programming is a desire to avoid workers who have experience to see through the “work 100-hour weeks and you’ll get rich!” propaganda, and this explanation is nothing but a fig leaf.


I don't think those jobs change nearly as much as software. Winforms development on VSS/windows and react/node.js work on github/AWS have far less in common than what an allergist was doing 10 years ago vs today.


There are new medicine/procedures/tests coming out all the time, we (as software engineers) are just not aware of it.

On the other hand is winforms development that different from react/node.js? On the surface it is very different, but good UI principles -which I argue is what truly matters- didn't change all that much, if at all.


I would venture to say that 90% of what doctors learn in med school does not get outdated. That 10% that changes, at least for non-research doctors, is just about new treatments, new drugs, new protocols and algorithms for certain diagnoses, especially the ones that weren't treatable to begin with. A doctor in her 20's will treat 80% of the diseases in the same way when she's 70. Cognitive decline will not make a doctor less effective. Crystallized intelligence is valued.

The theory that you learn as you work towards your CS degree does not get outdated either, but most of what you use in the average software engineering job is not about theory. It requires knowing the latest languages, frameworks, and practices. These things change every six months. Even if you are not moving to a new language, the language is evolving. Even if you keep using the same framework, the API will change. Crystallized intelligence here is mostly useless.


> I would venture to say that 90% of what doctors learn in med school does not get outdated.

> A doctor in her 20's will treat 80% of the diseases in the same way when she's 70.

this is patently untrue. I'm in my 6th year of practicing Medicine. During my first day of classes, we were told that 50% of the knowledge we gained would be obsolete by the time we graduated. I took this as a metaphor for the pace of change. However, with the benefit of 2 cycles (Medical School, and then my working years) this has been absolutely true.

We have totally changed both how we approach heart disease/heart attacks (classifications) and treatments. We have a cure for hepatitis C. Dietary recommendations have been upended. Treatment of trauma has changed. That's just a brief overview.

Whilst the underlying biology may remain the same, treatments even over the last 6 years have changed significantly, and continues to change significantly


So googling most common diseases, the top results were diabetes, heart disease, cancer, asthma, arthritis.

With the exception of cancer has the treatment of these diseases changed that much since 2009? If you're a specialist I imagined it's changed more but for a general practitioner it seems like treatment hasn't changed a whole lot. Most of the people I know with these conditions are taking the same drugs in 2019 as they were in 2009.


Yes, it’s changed. The changes are just more subtle than non-physicians have insight into. They’re technical details regarding -when- to treat what and for how long, which medications are first line now, etc.

I know that seems less in your face than what your example was, but... to a non-programmer, your job is identical to what it was a decade ago, too. You’re just typing a slightly different pattern words into a compiler than you did before. Turns out, people outside of a technical specialty have a pretty shitty understanding of the internal workings of that specialty.


My doctor friends understand what a techstacks and programming languages are and some of what it means for those to change. And I understand what a different ordering of treatments mean or what a change in target hb1ac/trglycerides levels are or why doctor's might pay more attention to CRP and certain VLDL numbers now than 10 years ago.

If you could find an article that describes the changes over the last 10 years, or write a description that would be especially persuasive. I searched for articles online but all the ones I found seemed to make the changes in the field seem minuscule over the last decade.


I was at an Alzheimer’s talk the other day given by a neuro to the psych, Geri, and palliative departments.

You could tell the psychs in the audience hadn’t read up on Alzheimer’s in the last couple of years, because their questions were just so damned ignorant. And when I say “ignorant” I mean “knew 99% of the relevant information, but didn’t know about the current state of knowledge regarding diagnostic testing, biomarkers, etc.”

They knew more than they knew in med school. They didn’t know enough to competently manage an Alzheimer’s patient to modern standards. They wouldn’t know how to best (accurately, efficiently) diagnose it. They wouldn’t know when to start meds. They wouldn’t know when was the best time to discontinue meds. Most of the psych in attendance were residents - they were maybe two or three years out of school.

And Alzheimer’s has barely changed at all. That’s one of the slowest changing topics in medicine.

(Not a criticism of psych. Alzheimer’s in my institution, and generally in the medical field, is owned by neuro. They just happen to be a good stand-in for “folks a couple of years out of med school” here.)


> The theory that you learn as you work towards your CS degree does not get outdated either, but most of what you use in the average software engineering job is not about theory.

My brother just started learning to program last year, and some of his questions have highlighted just how much I forgot that I had to learn at some point. So much so that I think your 90%/10% ratio does actually still apply in day-to-day software development.


The number of new allergy medicines in the last decade was 10.

https://www.centerwatch.com/drug-information/fda-approved-dr...


I can see you point but it depends. Assuming a developer was half decent in the first place then moving from Winforms to React is easy, depending on what they've done along the way react is actually pretty similar to old school asp/php and adapting from desktop to web technologies is the hard part. On the other hand a lot of people that gravitated toward Winforms development weren't half decent in the first place, but that's an issue with individuals not a technology gap. VSS to git is similarly easy, assuming they're comfortable using the command line, which may be a big if.

And that's just the UI, a real developer would be doing a lot of logic behind the UI, database design, debugging production issues, talking to stakeholders, etc, that's an enormous wealth of transferable skills.


If you had one month to write an application on the MEAN stack and all you knew about two possible devs was one had 10 years of experience on winforms, and the other had 1 year of experience on the MEAN stack? Which do you pick?

I'd pick the MEAN developer everytime.

Sure in a year maybe the second one would be more productive. But there aren't any allergists that are a year away from productivity. Even if they hadn't learned anything in 10 years.


I'd let the person go that chose the mean stack, in favor of someone more experienced.


If you had a 1 month deadline and were still hiring I'd hope the guy with a decade of experience would see the looming tyre fire and select himself out of the running.

And you're kidding yourself if you think it takes a year to get up and running in whatever GUI stack was cool this year, the guy with 10 years of experience in winforms obviously knows a thing or two about picking stable mature technologies.


If I had a deadline like that then I'd pick whichever one has a track record of delivering to tight deadlines - familiarity with a particular technology stack is going to help but isn't everything.


It's ok, you can have all the JS development to yourselves.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: