
Is software development really a dead-end job after age 35-40? - rbanffy
https://www.quora.com/Is-software-development-really-a-dead-end-job-after-age-35-40/answer/Jeff-Nelson-32?share=1
======
tptacek
I was going to add this as a reply to a comment downthread but I think it's
too important to bury.

The fundamental rule of career progression in the technology industry is to
position yourself as a _domain expert in something more specific than
"programming"_.

It's very difficult to "own" "programming" in a way where you can use scarcity
to drive integer multiple increases of the median salary. It is not as
difficult to "own" distributed systems, sensor fusion, software security, or
OS kernels.

As a general rule, the people getting outlandish half-mil-a-year offers from
big tech companies are domain experts, and the people on Twitter shocked and
upset that they're never seeing these offers are either (a) generalists or (b)
people who have chosen to specialize on the craft of programming, rather than
a domain to which programming can be applied.

That's not a value judgement! There are a lot of ways in which refining a true
engineering discipline for assembling software is _harder_ than kernel
development or fast computer vision processing. It's just a statement about
supply and demand, and about ease of demonstrating value.

~~~
jordanb
The big danger is "owning" some domain that falls out of fashion. You might
"own" distributed systems and do great for a time, but then companies start
transitioning from that architecture and nobody returns your calls anymore.

Also I've noticed a lot of sub-fields like computer vision or self driving
cars where there's a great deal of nerd interest but very little actual
employment.

In fact, I have a feeling that computer programming is the stick that's
holding the entire STEM tent up---if not for programming as a consolation
prize you'd have a whole lot of physics and chemical engineers making lattes
at starbucks---and further that web development is the stick that's holding
the programming tent up.

~~~
tptacek
You can switch domains.

~~~
seanmcdirmid
By sinking your precious time invests sure. But you won’t be able to claim you
have 20 years of experience in X anymore, you will be a newbie for awhile.
That, and your PhD is already in something else...your papers are already
published in other conferences....it can be a problem trying to move from say
PL to ML.

~~~
kelnos
Sure, but those are the trade-offs. You don't get the reward without taking on
a bit of risk.

It's a little ironic to hear talk like this, since around here I hear a lot of
"sorry your coal mining job is going away, but you need to get with the times
and train for something relevant". Same thing applies here. If you pick a
programming specialization that eventually falls out of favor, buck up and
learn a new one. Maybe that'll mean a pay cut for a bit as you ramp up, but
that's just how it works.

~~~
rplst8
I don't think it's unreasonable for people to expect that they should be able
to work in a field for the majority of their careers. Retraining is not an
efficient use of ones productive years.

~~~
tigershark
I think that if someone chooses engineering then he must love to learn. For me
it would be too boring to do the same thing for my whole life, I always try to
learn more languages, more paradigms, architectures and whatever. I can jump
in the code of a different team and be immediately productive. Usually I
suggest and implement small changes that have a large impact on the
maintanability of the system as soon as I start to grasp it as a whole. I
couldn't ever do it if I stayed in the same field, in the same environment,
for all my life. I think that if someone expects to work in a field doing the
same thing for the majority of his career then probably should not choose
engineering.

~~~
emodendroket
But you are doing the same thing. This is the frustration. I've worked in
several languages with various tools and it's very common to just be learning
slightly different syntax to approach a problem in the exact same way (and
then eventually maybe you'll reach a higher plane where you approach it in a
way somewhat characteristic of the tool, but still not fundamentally
different). Technologies that really change the way you work or think about
problems are few and far between, and most of the algorithms and data
structures you'll use most of the time in typical applications were discovered
in the 1970s. It's not a big deal to pick up a new tool on the job, but I have
a hard time motivating myself to spend free time learning yet another MVC
framework or whatever.

It's a different story, I guess, if you go into a completely different type of
programming from what you're used to (say Web apps to embedded programming),
but I don't think that's necessarily easy.

------
ChicagoDave
There a couple of aspects to this issue. I'm 53.

Management: I would argue that it's critical to garner management skills well
before you turn 40. If you wait until 50, you're going to find it very
difficult to move from talent-oriented jobs to management ones.

Coding: I hate to generalize, but it's very likely you'll learn so much over
your career that you will become an ineffective developer. You will know how
to do things well and will have a difficult time doing things just to get them
done. It's fairly common for projects to need completion over correctness and
quality. This is where younger developers are great. They don't know they're
creating technical debt, so they have no angst over it. But you will and this
is bad for the project and for you. You probably need to find a place in
software development where you can mentor and lead, but reduce your
involvement with actual day-to-day coding.

Challenges: I personally suffer from "it-must-be-challenging-or-I-get-bored"
syndrome. The longer you write code, the harder this is to suppress and the
more you look for shiny things to work on. This is bad for you because it's
bad for your employer. If you don't suffer from this, you're amazing and any
employer would love to keep you until you're dead.

~~~
JimboOmega
I agree with your points, and also suffer from that syndrome.

So I have to ask - how do you do the management portion of that? Getting into
it, I mean, more than just developing the skills or interest.

I've been trying to get into the management side of things but get stymied
over and over, and typically people who express disinterest (and no particular
aptitude) keep getting chosen to do it. This has had a tendency to wind up
with most of the people involved (except the person who gave the promotion)
quitting, and it's really frustrating to watch it play out again and again.

I suppose in one case I did get promoted to lead, but I was lead of nothing,
because literally everyone else had quit.

The point is I want to move - badly - in that direction, and see lots of
opportunity to do lots of things there, but keep getting stymied. How can I
get past that?

~~~
jqgatsby
If you are looking for a smooth transition, get on a large team that is under-
managed (say, >14 people and only one manager/tech-lead), and in addition to
doing your regular tasks, start getting heavily involved in sprint planning
and technical & product specs. Gradually do more and more of that and less
individual work. Voila, you are a manager!

~~~
ChicagoDave
I think this is the primary path to management.

~~~
JimboOmega
When I tried this, what happened was one of the engineers who didn't want to
manage, but had been around longer than me, got promoted - and I got moved on
to his team. People came to me expecting me to be leading the team (or at
least know what's going on), but I suddenly got cut out of doing that. It was
chaos.

The person who was selected as lead left a month later, since they weren't
that interested in doing it anyway. The powers that be still didn't let me
lead the team, though by that point attrition had gotten so high, it kind of
didn't make sense. (There wasn't really a team to lead).

The team before that was a similar deal (chosen lead quit not too long after)
but I got made a lead... of a team with two people on it (including me). The
company went basically bankrupt, and having only 6 months experience with 1
report didn't impress people.

I don't think being a trans woman helps.

I really do try; I come up with new initiatives, I follow through on them, I
give talks to educate the team, but in the end, I'm always waiting some number
of years for the next magical re-org, which may or may not go my way.

------
Gargoyle
In the general sense, this is the wrong place to ask. It's a self-selecting
group in that most people over 40 here will be among the group that lasted in
the career. It won't give a sense of how large that group is in the wider
world, nor how many didn't stick with it.

On the other hand, if you want to hear _how_ to make it past 40 in software,
this is probably an excellent place to ask!

~~~
lliamander
Then let me ask: how do you make it past 40 in software? Specifically, how do
you position yourself so that you are actively sought after (rather than
merely employable)?

~~~
pmontra
I'm 50 and I've been a freelancer since 2006. I position myself either as
developer (Rails and jQuery back then, still Ruby and Python and Elixir now,
I'm starting to code with React) or architect and coordinator of developers.
That works well with small companies. I attend to tech events in my city
(Milan, Italy) and I organize an event myself. It's a good way to keep the
word of mounth going on. I don't know if this is a feasible strategy for the
next 10 years, but who knows what's going to happen by then anyway. I'll
adapt.

~~~
gozur88
The problem with freelancing is you spend a lot of unpaid time lining up jobs.
Does that really pay off?

~~~
svennek
But that is why your rates are (hopefully) so much higher than an employee...

Rule of thumb, your business should be viable at 50% billed time...

------
maxxxxx
I am 50 and I do OK. I also see people around my age and older who do well
too. It seems to me that a lot of people who get filtered out in their 30s
should never have been in the profession either for lack of motivation,
interest or talent. If you are not self motivated to constantly evolve you
have a problem. Moreso than in a lot of other professions.

~~~
pmoriarty
_" If you are not self motivated to constantly evolve you have a problem.
Moreso than in a lot of other professions."_

I was self-motivated to constantly learn, and had no trouble doing it... when
I was young. It was the right profession for me then, when I had the interest
and passion.

After a while, though, much of it starts to seem the same. The towering vistas
that were once full of mystery, adventure, and discovery turned in to endless
plateaus of rinse and repeat learning of technical minutia and buzzword tech
of the day. I also developed lots of new interests, and started to want to
have an actual life outside of work.

So then I very consciously decided not to strive to excel in my field anymore,
because it would just take way too much of my time, which I'd rather spend
doing other things. Then, before too long, I burnt out, and took a long break,
eventually coming back to the field because I burnt through all my savings and
needed money. This happened a bunch of times, with ever longer breaks in
between.

Every time, I was able to brush up on the technology knowledge and skills that
I needed to get a job, but I was never as excited about it as I was when I was
young, and actually started to dread working with it, as I found it mind-
numbingly boring.

I should have definitely completely switched careers after my first major
burnout, but I didn't, and I've come back to the field again and again
instead. This has definitely been a mistake, but here I am. I'm good enough at
what I do to get work, and to even impress my managers... while I still
haven't burnt out this time around and am still capable of putting in the
overtime to get a lot done. But it's just a matter of time until I burn out
again, and this pattern of not working for extended periods of time looks
horrible on my resume, I haven't learned nearly as much as I would have had I
stayed employed the whole time, and my career is nowhere near as advanced as
that of people who can hack full-time employment long-term.

I don't think my case is typical, as most people seem to stay employed
continuously in the long run. But I can't, and I feel I'm way too old for a
career change now... and, anyway, I suspect whatever it is that I'd switch
careers to would get boring before long and I'd burn out again. My interests
are far too varied and I can't stick to doing any one thing for long before
getting bored.

This is not to mention all of the endless corporate bullshit one has to put up
with at work. Some people are really career-oriented and can deal with it. I'm
not.

~~~
LargeWu
That describes me exactly. Coincidentally, I turned 40 a few months ago.

I took my current job with the goal of transitioning into a leadership role,
either product or management. I was walking into a situation where I knew
people already here and was hoping to leverage that. Those people left a few
months after I started, and now I'm kind of stuck on an island. I've
approached my current boss but he's completely uninterested in promoting any
sort of career development.

Bottom line is I'm burnt out, depressed, and bored out of my mind. The idea of
learning Yet Another Web Framework fills me with dread (I'm currently doing
Node/React stuff and hating it), not because I don't think I can learn the
tech, but because it's no longer fulfilling in any kind of personal or
professional sense.

So, I really don't know where I'm going, or what I'm going to be when I grow
up.

~~~
JimboOmega
I know that feeling.

A lot of times I feel like there is not career track after you hit "Senior
Software Engineer", especially outside of super specialty tech. It feels like
the only real track is management, and most places don't want to promote or
change the management structure at all.

It's honestly very hard to get excited about going from Senior Engineer to
Staff or Principal or whatever the text title is. Nothing will change in terms
of the job. Pay is pretty well pegged to what you started at with single-digit
percentage increases every year or so.

Skill wise? Learning new frameworks is just not as exciting as it used to be.
Even then - the reality is that whether you're the most skilled dev in the
world or a mediocre dev with only a 9 week bootcamp of experience, you're
going to not understand the new environment you're dropped into when you
start. It's full of weird quirks and historical oddities. It'll take time to
understand those and get productive in whatever the particular stack is.

All of which feels like... every time you start a new job, you're starting
over. With a little more insight and vision, but fundamentally, doing the same
thing over and over.

------
herf
I think this bias needs to evolve, and maybe birth year is more descriptive
than age.

In 2000, a 40 year old was born in 1960, when the home PC was nearly 20 years
off.

A programmer who is 40 today was born in 1977, and they could learn to program
while they were in diapers.

These are very different experiences, and the bar will move over time.

~~~
bungie4
I am your 1960 born example (my bday was yesterday!). I'm 57. I've been a
professional programmer (read, I've been getting paid for it) for 30 years. I
live in a small town in Northern Ontario. I'd like to be paid more, but I'm in
the hunt on the payscale. My resume says I'm a full stack dev. You'd believe
it if you saw it.

That being said, if you've been in the occupation long enough, you figured out
that its a continuous learning occupation. The thing is, the fundamentals I
learned in the 80's and 90's still do me in good stead to this day. I don't
write in assembler or even C anymore, but concepts they taught are still
deeply ingrained.

I've got another few years in me before I can retire, and when I do, I'll
continue writing code for fun. Simply because I like it.

(Oh ya, first computer was 3.5Kb (3583 bytes!) VIC 20. The first computer I
ever SAW was a neighbours PET 4040 he brought home from school over the
weekend. I bought the VIC-20 the next day.

~~~
agentultra
Southern Ontario here. 36. Programming professionally for 14 years or so.
Picked it up as a hobby when I was 9 or 10.

The "fundamentals" predate you and I by quite a few decades. Alonzo Church,
Turing, Gentzen, Liskov... their work really paved the way for us all. I
suspect the lambda calculus will be as useful 30 years from now as it is
today. As long as I'm working in a language with first-class functions as
values I think I'll be okay.

It's funny that many people still hold the belief that even mathematics is a
young person's game. There are plenty of examples of mathematicians making
significant contributions after the age of 30.

For me I think the life of a programmer begins at thirty.

------
ChuckMcM
The answer is pretty reasonable in the Quora post (Answer: no). In my
experience, people who get something more out writing software than a salary
tend to stay in software development, at some level, for their entire career.

That said, if you're a software developer and you're also good at
communicating and managing people, seriously consider moving into management.
While I think the stories of the '10x' developer are true, I also think a good
manager can double or quadruple the effectiveness of their entire team. That
has a huge impact both on the careers of the people being managed, and at the
company.

~~~
zoul
Isn’t it a big loss to move into management when one loves to code?

~~~
ElatedOwl
Personally, I loved to code, but management has been much more fulfilling for
me. Helping my team grow, professionally and personally, is a hugely rewarding
experience. I still get to exercise some problem solving skills (though I let
my developers make the technical decisions) and I still help craft a great
user experience, which were my favorite parts of being a developer anyway.

------
weeksie
I'm 40. I work 6-9 months out of the year. When I'm consulting I get great
contracts, just wrapping up an idyllic green field Elixir and React product
development. Zero to product in six months. Happy customers, happy colleagues.
Now the weather here (NYC) is getting a bit cool so last night my girlfriend
and I booked tickets to Thailand for the months of January and February.

Being an old software developer is pretty nice. Fuck, man—being old is pretty
nice.

~~~
OhHeyItsE
A long-time dream of mine. Am envious. Wish I had the confidence to do it.
Wish I knew how to get "Client #1"

~~~
weeksie
The best advice I can give is to reach out and talk to people. Cold emails,
calls, etc. . . . It's uncomfortable as an engineer, believe me. But the way
to get the work you want is to reach out and search for it.

I have a pretty deep network but I get more than half of my gigs from new
contacts. The deep connex are far more important for references and social
proof than they are for generating work (though they're good for that too)

------
saluki
I'm in my 40s and still doing well.

If you still have the passion for development and for learning/improving you
should be able to keep going.

It seems no one is 100% safe from layoffs or companies making bad decisions.

I would encourage everyone to explore creating products/SaaS if those things
are interesting to you. There no better job security than running your own
business.

startupsfortherestofus.com is a great podcast to learn about this. Rob details
his rise from consultant, to small successful sites to a $XXM exit. Amazing
story.

And this is inspiring, still my favorite talk @DHH Startup School:
[https://www.youtube.com/watch?v=0CDXJ6bMkMY](https://www.youtube.com/watch?v=0CDXJ6bMkMY)

"Calling your own shots, running at your own pace, that’s pretty great."

------
everyone
I'm frankly flabbergasted why silicon valley (apparently, from reading
articles here) has this youth fixation. In my software dev experience the
least useful people on the team have invariably been the youngest. My pet
theory answer for my own question goes thusly: Young people are more easily
indoctrinated / brainwashed and dominated and thats what Google and whoever
_really_ want in their employees.

~~~
watty
It's not rocket science. Younger devs can be paid less and generally will
voluntarily work longer hours for free.

Sure, you need some senior developers mixed in as well but young energetic
devs are more bang for the buck.

~~~
busterarm
'more bang' depends on what metric you're going for.

From a "getting things done" perspective, I would vehemently disagree with
you. If you care about things like 'having more reports' and 'spending
investor money', then yes, you're correct.

The correct definition for senior developer vs junior developer is 'delivers
company value without handholding' (vs 'with handholding'). If you've lucked
into a young, hardworking dev who can do the former, remember to pay them well
and don't burn them out. That crop will produce year after year for a while
instead of just once or twice.

------
pjmlp
Currently mid-40's and hope to keep going at it.

Never stop learning, even tech you might dislike may provide a path to keep
you relevant.

Also work on your soft skills.

A developer that can jump between technical meetings, discussing with users,
other department, understands architecture and domain knowledge is much
valuable than someone that just codes all day long.

When all else fails, you can always try to go consulting on the domains you
love.

------
misja111
I'm 48 and I'm doing better than ever. The key is to do what you enjoy and to
keep developing yourself. And I happen to enjoy programming, I liked it 35
years ago when I learned how to program and I have a feeling that I will still
like it 35 years from now when I'm 83.

------
SubuSS
At all the companies I have worked at till now (MS/Amazon and Snap) - we
always have a hard-time finding good experienced engineers. So I would contend
the reverse: It is actually awesome after 35-40. By this age group - I think
many engineers have moved on to careers in management etc., So the ones who
remain are in high demand.

There are a few big catches though:

\- You better be really good in both development AND engineering.

\- You better be able to work with people. You may not be a manager by now,
but mentoring takes on a giant role few years in. And very few opportunities
arise where it requires a single heroic effort (capitalize when it does
happen).

\- As @tptacek covered elsewhere, you better have one field you are really
good at.

\- You better be very good at picking up 'new' stuff and identifying
similarities to what you have done already: most of the learnings carry over,
you eventually figure most of it is pretty much the same ketchup in a
different bottle. BUT there are usually some incremental advances: your
ability to catch on to these matters a lot.

\- Companies have always liked the 'T' candidates: Who can operate in a broad
set of areas and have real deep knowledge in one field.

I don't know how to say the following without sounding proud, but I think it
adds relevant data points - so I will just put it up here: In my case (15
years?) I have done a ton of server development, I am trying to do some actual
client(ios/android) work in addition to generic consulting. But my depth is
around data - I have worked on multiple storage engines by now, built a bunch
of database systems. I have never really sold my resume based on languages or
technologies (they come and go - I would estimate I have worked on anywhere
between 20-40 languages based on how loosely we define that, most experience
has been with c/java/python). Last time I was looking to switch jobs 2 years
ago, I had offers from almost all the big companies in cs within a month.

Sadly I don't have data points on how easy it is to enter this field beyond 35
:(.

------
whatyoucantsay
Rumour is, in Silicon Valley they take you out back and knife you after your
35th birthday. I hear autonomous smart-knives are in development.

------
readams
I think the biggest reason this reputation exists is that the industry has
grown so quickly and the industry itself is still so young relatively. This
naturally causes the median age to skew younger, as there just hasn't been
enough time for the larger, newer cohorts to age!

------
pavlov
Definitely not, but you should steer clear of the baseline jobs at large
corporations. They usually have generic titles like "Software Developer" or
"[Technology] Engineer" (iOS Engineer, Android Engineer, Front-End Engineer,
Node.js Engineer, whatever). Those jobs are designed to be filled with recent
graduates who will be doing rote implementation work using a specific
technology. They'll give you a pointless whiteboard interview where you're
quizzed on things that you learned at college but will have nothing to do with
the actual work.

Don't be pegged down to a specific technology box, because at 40 you've
probably already seen plenty of them come and go. Use that experience to an
advantage. Either get into consulting or work with startups that need a wider
perspective.

~~~
jonnycoder
How does one get into consulting work? Do you have any blog or book
recommendations?

~~~
Danihan
You need to have lots of contacts, generally.

------
wimagguc
From this blog post: MIT alumni in their 50s
([http://blogs.harvard.edu/philg/2015/04/30/mit-alumni-in-
thei...](http://blogs.harvard.edu/philg/2015/04/30/mit-alumni-in-their-50s/))

"Lesson: Unless you are confident that your skills are very far above average,
don’t take a career path that subjects you to the employment market once
you’re over 50 (and/or make sure that by age 50 you’ve saved enough for a
retirement that begins at age 50 or 55 and during which you won’t have
employer-provided health insurance for up to a 15-year gap between age 50 and
Medicare age)."

------
swah
This is depressing. I'm 33 and still haven't really find a niche inside
software dev that I'm willing to stay...

On the other hand, nobody asks doctors and lawyers if their are planning to
retire at 35.

~~~
southphillyman
Yea I'm getting depressed reading the advice in here. I'm around your age and
not an expert in any domain. I pick work based not on a particular domain or
industry but more so tech stack and perceived work environment. As a result my
domain expertise is the equivalent of "10 years of 1 year experience" .

~~~
emodendroket
I mean, are you distressed by "only" making a salary in the low six figures?
It's still pretty good.

------
freetime2
With software engineering salaries paying as much as they do right now (in the
U.S. at least) it should be feasible for many of us to retire in our 40s. Or
if not retire outright, at least build up enough financial security to
transition into freelancing, fund your own startup, go work at starbucks... or
whatever else interests you.

Plan for the future, live modestly, and invest diligently. If there ever comes
a time when the work is no longer enjoyable or you are unable to get a job -
go do something else!

Edit: I realized this is insensitive to people who are facing ageism and might
not be in a position where they can retire or change careers. Not everyone
will be able to retire early - everyone has different circumstances and luck
plays a big role in life. But for anyone who happens to be in your early 20s
and pulling in a 6 figure salary: if early retirement is something that
interests you - now is the time to start saving.

------
tabeth
I'm not anywhere close to 35, but from being on this site (HN) for a few
years, I can guarantee you that if you read this site on a daily basis and 3
times a year complete a project based on the "trends" reflected on here you
will be fine. The people on here are pretty ruthless, IMO.

------
artmageddon
I'm 35.5 years old and I just started a masters in CS program(have a BS in CS
already), so fuck I hope not

~~~
cema
Good luck! There is plenty of demand for mature people with a solid
educational background.

~~~
wccrawford
Or just people with good business sense. We hired someone a while back that
put on her CV/resume that she had experience working for companies. I forget
how she phrased it, but "good business sense" catches the general idea.

It turns out she's _amazing_ because she knows how business works and how to
get things done efficiently and what the business really wants from her:
Quick, stable code.

Others we've hired that didn't have this skill have not fared nearly so well.
I'm definitely looking for that kind of thing in future hires now.

------
indogooner
The answer depends on location, company and job role. There are some companies
(Big 4) where there is a path to growth as an individual contributor even
after 35-40. Please remember though you tend to spend a lot of time in
meetings in these companies as you grow. A lot of popular Open source projects
have senior developers as contributors and these people are sought after by
multiple companies.

I have also seen a lot of senior developers go into consulting although they
have to do a lot of other stuff than coding. I think as a senior developer you
do need to be good at little bit of project management (ex: guiding junior
devs, de-risking a project completion, contributing to product management
decisions). If that is the case and you have a leadership who can recognize
the technical value you bring to table, you should be handsomely rewarded.

------
pfarnsworth
No. I'm the happiest I've been in my career and I'm almost 50. I'm a
programmer, not a manager, not a tech lead, not an architect. I still love
programming and I love solving problems. I just recently made a huge change
that decreased load on our systems by 90% and I'm still stoked 3 days later.

~~~
spacecowboy
Those moments are always awesome and a great feeling :)

------
ttiurani
37 with 17 years in tech and absolutely love writing code every day. Because
I've always been good at keeping my expenses low, I'm also now making a good
enough living to never have to think about money.

But what has kept me constantly improving is trying out many diffent things
over the years: aside from having all of the roles of a software team at one
point, I've also been a researcher, coach, consultant and CEO. Also in non
tech-related fields.

But now I'm again back to being a programmer. It's the position where you can
make the biggest difference.

------
nvarsj
In London, it seems like the median age for senior engineers is 40. So hop
over to this side of the pond if you’re feeling underappreciated. Young people
have it much tougher here though, I think.

------
shadowtree
No, not in enterprise.

All my architects are over 40, every single one of them.

Working on a 10 year old code base, multiple stacks (mobile apps, Java
backend), on AWS.

You need clear headed people that know how to spot bad stuff about to happen
and then clean it up, keeping the big ship stable. Constantly removing
technical debt.

SaaS is the best thing that ever happened for job stability for engineers.
Constant updates, upgrades, etc. The guys at Salesforce.com, Workday,
ServiceNow, etc have a long road ahead of them.

------
graycat
To get paid well, in simple terms, need (1) luck, (2) a bubble of some kind,
(3) someone with more money than brains, or, (4) finally, (A) to deliver some
economic value that (B) can be seen by someone with money.

Taking (4), a bottleneck here is part (B). So, there is something better --
(5) with (A) deliver some economic value that (B) a lot of people with time
and/or money can see. That is, with (5) do a startup and own and run the
business that delivers your (A) economic value. Then to heck with finding (A)
just some one person to give you a _job_ with good financial security and,
instead, (B) find a lot of people, say, on the Internet each of whom give you
a little time and/or money.

From one person, it' a lot easier to get a little time and money than a lot.
And it's a lot more stable to be getting the time and/or money from many
people instead of just one.

If you have some good economic value, then hopefully you can _cut out the
middle man_ of your boss, his boss, his CEO, his BOD, their HR department,
sales department, marketing department, legal department, etc. and deliver the
value fairly directly yourself.

------
ryandvm
If you decide to stop learning new technologies - yes.

If you want to continue learning new tech and position yourself as a truly
experienced engineer, there is plenty of headroom for developers willing to
continue to grow.

I'm 40 years old and I just had my best year yet - by far. Obviously a big
part of that was the decision to move into contracting, but I'm not
particularly worried about getting put out to pasture just yet...

~~~
vba
can you quantify how you just had your best year? Did consulting bring your
more free time, money, satisfaction ? and by how much?

------
HumanDrivenDev
I'm just about to turn 30 and I'm looking for a way out. One issue is that
it's simply less lucrative where I am (New Zealand) than it is in the US. Here
it's a solidly lower middle class career trajectory.

Another reason is I don't think software development is very respected. Look
at job advertisements - the most important skill you can have is to already
have experience with a given tech stack. This trumps domain knowledge,
communication skills, or even total experience in the industry. How much more
clear can society make it? We're highly replaceable cogs who need to have
limited responsibility and autonomy.

My job is half business analyst, which is a good thing, but transitioning to
pure BA would mean starting again at entry level. To me my options are pursue
management aggressively, start my own business, or accept that I'll have about
the same standard of living as blue collar workers a generation ago.

------
watwut
Depends where exactly you live and what kind of companies you work for. I see
older programmers and developers around. It tends to be expected that you work
more independently including communication with other departments/customers.

A lot of people leave on their own before they get old through. Some burn out
due to bad luck or wrong choice of employer. If you buy into believe that
development must be late night thing, then you are likely to burn out and then
seek different profession instead of just different employer.

Many many guys actually seek non-development positions that are sort of
"infected" with a bit of tech. So they become managers, analysts, those
architects that do just documents etc. This is where most people seem to
leave. That sort of work creeps into your job more and more regardless as you
age, simply because less experienced people often can really do it and it
tends to be critical.

------
codewritinfool
Not in my opinion. 51 here and doing better than ever. I don't know how long
it will last, but the trend for me at least has been better every year for a
decade or more.

------
tolger
As someone approaching 50 myself, I've seen my career growth options limited
as an individual contributor. I love coding and have never been interested in
management, and I think this has limited my salary increases. As an
experienced Java back-end developer there is no shortage of employment
options, I get contacted by recruiters all the time, but the salary range I am
being offered seems to have reached a plateau.

I would prefer to stay in the technical track, but I probably need to
specialize in a hot field, i.e. machine learning, in order to become more
sought after and less of a commodity.

------
jankotek
Sitting in an office 9-5 is dead-end job.

Most people move into independent consulting, remote work, their own
business....

~~~
Koshkin
Sitting in the office, undisturbed, for eight hours, coding - sound perfect to
me!

~~~
outworlder
If you are in an office, and also undisturbed for 8 hours, that tells me you
are not in a 9 to 5 job.

~~~
lgas
9pm to 5am, perhaps.

------
john_moscow
Well, you need to do the value proposition analysis basically. When a company
is hiring a software developer, what value do they expect to bring in (i.e.
what would change if the position was never filled) and why would they prefer
an older candidate over a younger one? As long as you can definitively answer
this question (and find employers that share the same point of view), you will
stay employed.

In reality there's one problem though. I don't know if this is specific to
software engineering, or just a part of the human nature, but the reasoning
behind many hires I've seen is dead simple: get someone at the bottom of the
food chain so that the other participants can move higher. What would change
if the position would not get filled? Nothing business-wise, the product would
still be around and would solve exactly the same problems in exactly the same
way, just Alice the Department head would have fewer head count and Bob the
Developer would be still writing the code himself instead of mentoring the new
hire. As you can see, in this scenario there's no benefit at all of hiring an
experienced person - instead you need to hire someone who would desperately
_need_ mentoring and would be just smart enough to follow orders.

So if you want to stay in the industry past the age of a cute aspiring busboy,
you need to learn how to spot job opportunities where the experience you would
bring in is actually beneficial to the business. But if you learn to do that,
you may be much better off starting your own consulting business, or growing
into product management.

Of course, many of us (me included) are introverts and absolutely hate dealing
with people, preferring solving the logical puzzles in solitude. The trouble
is - a huge part of your puzzle solving skill is specific to the type of the
puzzle, and this knowledge tends to get quickly outdated when the technology
changes. On the other hand, experience in being nice to people and convincing
them to do something that would benefit the business (a.k.a. management) is
pretty universal (as well as the political skills) and won't get outdated when
a company switches from scrum to kanban or vice versa.

P.S. Yes, the general ability to think structurally, break down complex
problems, etc. is portable between different tech stacks, but you would never
convince a non-technical person about it, unless you have invested a lot into
your persuasion skills.

------
joachimH
I did a retraining as a professional application developer at the age of 37 in
Germany. I don't care about age. Of course I knew already that is a little bit
crazy to do a retraining in a highly competive field with so much obsession
about youth and self-exploitation. I'm 40 now and somewhat a junior dev in the
transports and logistics domain but I have a lot of fun doing this stuff and
constantly growing and learning in my spare time. I have no technology
background and programming experience besides working as a professional online
poker player from the year 2008 on. xD Before that time I didn't even own a
computer. Some people are really old at the age of 40. My advice would be to
put on a really hard physical and mental training program. So you are always
in shape and have a clear focused and somewhat young and fresh mind. Do this
to the end of your days. Who cares anyway at least you have learned a really
great skill. The human craft of computer programming.

------
rvshchwl
I just started my first job in CS this year, at 25. And after a few months of
working on products, which are themselves actually quite fascinating, I don't
see myself working in Software Development for more than 5-6 years.

The thing that stands out to me is how much more successful product and
project managers are at my company, and they are doing much less work and have
less hectic jobs. Software dev is interesting, but I plan to transition into
management because I think a software development background can actually help
me propel much further in the career than just sticking to programming will.
And the other thing is that as a developer, I have to continue to keep up with
newer technologies and make sure that I know what's new, or be at the risk of
being replaced eventually.

CS is a great field, but I think that the pace at which most big companies
hire and lay off employees is too significant to ensure a stable job for too
long.

------
ascended
Your 2 examples. C and JacaScript are dying if not dead already. We have
consensus on Web Assembly now and that’s allowed a lot of languages into the
browser with a better developer experience and performance then JavaScript
ever offered.

And Rust. What’s not to say about Rust. One thing that kept C alive so long is
there wasn’t anything viable to build operating systems with until Rust.
There’s a lot more to Rust too, it’s compiler LLVM is used to compile so many
other languages like Apples ObjC and there’s wrappers for others like Apple’s
Swift. I mention these due to the heavy usage and development upstream into
LLVM for these. You can even use Rust to create better performance code for
other languages like Python modules.

You’re (OP) definitely accurate in your post saying C and JavaScript are
comparatively static but even they’ve gone through feature development and
drastic syntax and paradigm changes (in the case of JavaScript)

------
Fraztastic
I don't know if anyone here has exposure to the recruiting side of things.
Friends who have worked recruiting for Facebook have told me of very blatant
and direct age discrimination for the older set; regardless of their talent &
experience. It's not "dead-end" but there are certainly issues.

------
kemiller
Depends what you mean by dead-end. If you want to remain a pure individual
contributor, there will be an asymptotic decline in your wage increases
because, to be honest, there are diminishing returns when it comes to coding.
You may be amazing at it, but you are still only one person. If you want to
continue growing in impact and compensation, you will have to figure out how
to add leverage to the team around you. Management is the obvious path for
some, but it can be mentoring, teaching, open source, speaking, domain
expertise, etc. You also have to stay current and engaged. There will be bias
some places, for sure, and you have to be more proactive and strategic, but
there are plenty of teams that value their older developers very highly.

------
mgleason_3
Ageism in programming isn’t limited to a few jobs that require special
snowflakes. It’s a problem virtually across industry and area of expertise.
Whether it’s due to perception, belief or prejudice, companies want young
programmers.

A friend likes to say “Show me a 40yo programmer who hasn’t moved to
management and I’ll show you a person who’s being passed over for promotions
and new opportunities. God forbid if he looses his job, because he’s gonna
have a hell of a time finding a new one - even if he’s kept his skills
current.”

Given all the talk about sexism, it’s incredible that ageism isn’t being given
the same attention. Frankly, it seems like a much bigger issue.

------
brooklyndude2
Not dead end, but after decades in this business you realize cabinet making is
a most awesome job. And growing food can blow your mind.

Sitting in front of a screen for decades, hunched over? Much more fun to build
a chair for someone.

At least in my life.

+60 now. I slept with wires as a baby my mom told me. Coding since almost
birth. :-)

Suggestion? Take a woodworking class, glassblowing, sailing.

I focus on Swift now. A beautiful language. Looked at React, Vue, Angular. So
much overhead, put that time into learning how to use a router (a real one!)
Just my 2 cents. :-)

------
giancarlostoro
Where I work most of my coworkers are Senior Devs and a number of them are
around that age range and older. There's like 3 of us who are in our 20's. It
depends on companies, and the person applying for the job. Not everyone is
"perfect" for your team despite having years of experience, or being fresh out
of college. There's also those COBOL job ads I see all the time, they pay a
ton for experienced devs and a number of those are not going anywhere.

------
mandeepj
Depends. If you look up to - John Carmack, Jeff Dean, Jon Skeet (a lot of more
names), and keep learning, growing and outpacing yourself from yday then sky
is the limit.

~~~
myth_drannon
These are genius level people, not someone we can actually ever become one.

~~~
darethas
Most of the recent psychologists who study expert performers all tend to agree
that "genius level" just like "innate talent" is a cognitive distortion and
discredits the amount of actual effort, practice, and honing of their craft
these individuals put into it.

We are all born with the same brain* (edit: see the ted talk on the "After
83,000 brain scans"). Some of us just aren't born in the right environment to
curate it and never learn the best ways to use it ("learning how to learn")
given the current dominant socio-economic factors. It gets harder as you get
older not because of age but because your anxieties, fears, and distortions
become more reinforced, so breaking down those thought patterns becomes harder

*: I mean this more or less, not literal. To clarify, I am speaking more specifically to neuroplasticity and neurogenesis. Maybe some things come easier for other people out of the gate, but this wasn't because of some "innate" talent, but rather some factor of their development, both internal and external, provided the acuity and propensity towards excelling that specific thing, but if you molded another brain from scratch this same way, you would more or less get the same result.

edit: With the TED video,I was again referring to the take away: "You are not
stuck with the brain you have, you can make it better." So if you were "never
born with the ability to be good at math" this is a distortion, just as much
as "I am only mediocre at math and will never be great at math" is
[https://www.youtube.com/watch?v=esPRsT-
lmw8&t=599s](https://www.youtube.com/watch?v=esPRsT-lmw8&t=599s)

~~~
mandeepj
You answered way better than I could. Thanks.

Besides this, I think, focus among other things also plays a big part in your
abilities. If I am checking FB every 5 mins then I will never be able to match
the learning abilities of someone who does not even care what is happening
around him while he is learning.

------
otakucode
It depends highly on how you approach development I imagine. I'm 38 and I've
got no problems. But I'm also single with no kids and spend basically every
spare minute outside of work in front of a computer, as I have done since
about age 9. I've worked with many people who just want a simple job,
something they can coast on... and there are absolutely jobs for people that
want that sort of position. Management is typically like that, since they
rarely do anything challenging or unusual or requiring taking risks or being
creative. But as developers, there are also lots of antiquated systems which
will continue to be maintained until they fail catastrophically and
completely. Young developers are usually far less capable of dealing with such
systems than older ones are.

Just take a modern full-stack developer and ask them to describe what a
processor is actually doing sometime. They are used to working at such an
extreme level of abstraction above the hardware that they don't usually have
the slightest idea what's actually going on in the hardware. To them
transpiling other languages into javascript didn't even sound like proposing
the inmates get to repaint the asylum in their own scat for a long time.

~~~
jdmichal
> Management is typically like that, since they rarely do anything challenging
> or unusual or requiring taking risks or being creative.

I think there are a lot of mediocre managers with such behavior. I'll tell you
right now, the best managers I've had absolutely take risks all the time.
They're typically political risks, rather than technical ones. [0] But a lot
of good team management is clearing the way for your team to get work done,
which involves putting _your own_ butt on the line. Which is a really scary
prospect, when you dig into it. You're sticking your neck out and risking your
reputation to clear a path for your team... And if they fail, it's reflected
onto your reputation equally or even more!

Oh, and this actually gets _worse_ as you move up. You become responsible for
broader swaths of action, so you're taking larger risks to clear larger paths.
But at the same time, you have less direct influence over execution.

[0] And there are some number of technologists who abhor politics and maybe
therefore don't recognize it.

------
cleanbrowsing
I think the software development field is still pretty new and evolving. Think
about it, 25+ years ago very few people were hired straight as software
developers.

Most came from other industries to capitalize in the market need.

It will likely change as the current generation that started as developers go
to 40+ and continue in the field.

will se...

------
dmh2000
not always. i'm about to retire at 65 and I've been a hands-on software
engineer for 35 years.

Pro-tip : one type of work that can last is in the Defense industry. Projects
in that industry can last 10-20 years or more, and experience seems to be
valued much more there.

~~~
maxxxxx
Same for medical. Progress is often annoyingly slow but it's definitely a
place where experience counts.

~~~
AnimalMuppet
More generally, embedded systems (medical and defense, yes, but it's wider
than those).

------
bootcat
A similar question i asked, got good responses.
[https://news.ycombinator.com/item?id=14290025](https://news.ycombinator.com/item?id=14290025)
. But i have the same question and thought too.

------
billylo
Software is being added to light bulbs, garage door openers and coffee makers.

It's actually quite the opposite. Older software designer/developers can
better support our needs on healthcare and mobility of an aging demographic.

------
m23khan
It may have been the case in the past but now, I would say the more senior you
get as a Developer, the more valuable you are and more salary you will draw.

just do yourself and keep upgrading your skills and keep curious!

------
Teichopsia
I would like to hear how to make it _in_ software when nearing 40 :)

------
nfriedly
Personally, I plan to retire, or at least be financially independent by age 40
or 45. Tech pays well enough that this isn't infeasible, especially if you
retire somewhere cheap.

------
davehtaylor
What if I'm currently in college, having returned after 15 years. Currently
35, a junior, CS major. How is it _getting into_ the industry at this age, not
just staying in it?

------
tyingq
There is more opportunity in the IT departments of non-tech large companies.
Ageism still exists, but the larger amount of legacy tech means they have to
be more flexible.

------
RickJWag
I'm 52, been programming for 27 years. About 10 to go, things still look good
at this time.

I'd still advise my kids to go into programming. It's been a great gig.

------
busterarm
I sure as shit hope not. I started my dev career at 31 and I can't imagine
doing anything else for a living other than being retired.

------
ben1040
36 here. I'm happier in my job than I ever have been.

I'm working for bigger names, on bigger projects, for way more money than even
5 years ago.

------
CalChris
You had better be an architect, manager or a kickass maintainer after 40. And
you better keep your day job. Can be done but difficult.

------
josteink
This answer seems overly fixated on Silicon Valley.

The world is a hell of a lot bigger than that.

------
toddan
It is not. Just work at a large and stable company and you are set.

------
jm535
Just got a six figure job offer as a Sr. Developer. I’m 49.

------
arisAlexis
Just come to Europe mate they like experience here

------
purplezooey
Let's just say, dear God, I hope not.

------
mattmurdog
When you claim to be a senior engineer with 20 years of experience and you
don't know what ES6 is then you don't deserve a job.

~~~
halfknot
Says someone that insinuates javascript is applicable to all forms of software
engineering...

This is what's really wrong with software engineering: we have young, cocky
and mostly ignorant people doing the hiring. From CEO's riding daddy's coat-
tails while trying to pretend to run a company, all the way to college grads
that think their training as a flaming-hoop jumper is the pinnacle of
engineering.

You do this to yourselves.

~~~
mattmurdog
To say that it is not is also makes that person not hireable.

------
bg4
Only if you suck at it.

------
smoyer
I hope not (current age = 53). Fortunately, Betteridge's law of headlines will
probably keep me employed for quite some time.

------
danjoc
Ageism is more than hiring young. It's letting people go or burning them out
as they age too. These companies expect excessive overtime until people burn
out. As developers and IT staff age, they self select out of it, because it
isn't healthy.

[https://www.quora.com/How-many-hours-a-week-does-a-
typical-G...](https://www.quora.com/How-many-hours-a-week-does-a-typical-
Google-engineer-work)

"10am to 8pm on weekdays, no work on weekends? That's not a lot, not by a long
shot."

See, they have such stockholm syndrome, they can't even accept that they are
being overworked. How are you supposed to challenge such unhealthy company
policy when "It's not a lot, not by a long shot."

~~~
HN15718653
That answer is quite bullshitty. I was there for many years and a few teams,
and 8pm was NOT the norm. In fact, it's ludicrous to even imagine a busy
Google office at 8pm.

6pm it starts to slow down, by 6:30 half the office is heading out.

Some people would get there super early and leave early-ish.

Look, at the end of the day it's about getting shit done and COMMITTING CODE.
That latter part is something a lot of people refuse to accept. It doesn't
matter how smart you are or how much experience you have or whatever... if
you're an IC, then _deliver high-quality code_ (and a lot of it), and you'll
have a great career.

~~~
SailingShip
It's about getting shit done and COMMITTING CODE. No it's not, it's about
proprietary android code and a bullshit kernel. That latter part is something
a lot of people refuse to accept. It does matter how smart you are and how
much experience you have, Google will never be acceptable, it is the biggest
piece of spy-ware and mal-ware in history!

------
eighthnate
All jobs for almost all people are "dead-end" jobs after the age of 35. Given
the pyramid structure of corporations and the workforce, unless you are a
select few who are on the track to upper management/executive positions, you
are most likely going to peak by 30. It's why so many people change careers.
It's either accept the dead-end job or see if the grass is greener elsewhere.

------
jstewartmobile
" _Capricorn 15, born 2244, enter the carousel. This is the time of renewal._
"

[https://www.youtube.com/watch?v=_wjXpTDuHiE](https://www.youtube.com/watch?v=_wjXpTDuHiE)

------
SailingShip
It's very difficult to "own" "programming" in a way where you can use scarcity
to drive integer multiple increases of the median salary. It is not as
difficult to "own" distributed systems, sensor fusion, software security, or
OS kernels.

Not true, anyone can use scarcity to increase there median salary. After
reading about Chip manufacturers and how hardware is becoming less open
source, I'm kind of glad to know which one's will rock on with things like
OpenBSD on the PowerPC - there's a lot of those old Mac PowerPC's still
knocking around with an open firmware bootloader! :)

------
Boothroid
Just here to say the coding/management dichotomy I see repeated many times
here is false - there are plenty of jobs in service management for example,
and they don't require you to turn everything upside down in terms of
technology every few years.

------
fahayekwasright
I’m 35 and I hear from recruiters every day. If I’m about to fall off a cliff,
I can’t see it from here. I’m not an exceptional dev by any means but my code
works.

~~~
pacomerh
Sure I don't doubt your capacity to find new work. But hearing from recruiters
every day doesn't mean anything. Recruiters say whatever they need to get you
to an interview.

------
Danihan
Depends on who you know. Ideally you should have built up a lot of contacts to
tap by that age.

------
british_india
I didn't start being a developer until I was 35. Going strong 20 years later.

------
paul7986
..

~~~
codingdave
I've found that today, that list of skills you have is a equivalent to a few
years ago only knowing HTML & CSS, but nothing else. The bar is higher. So
yes, you need to pick up new skills. That being said, I'd concentrate on your
core coding skills, not just adding "Angular" to your resume. Be able to knock
the whiteboard-coding style interview out of the park, show them you really
know your stuff, are smart, have some CS chops, etc... and then ask them to
let you learn the frameworks on the fly.

------
bamboozled
Ask Linus Torvalds

~~~
brianwawok
You cannot prove the goodness or badness of a thing by a single data point.

~~~
Koshkin
Sometimes, a single data point is all it takes.

~~~
6ak74rfy
No.

