> If my generation hadn't made tech such a toxic work environment by ensuring that people had little or no recourse when treated unfairly by employers, I'd be tempted to feel sorry for us.
What is this referring to?
Anyway, the usual response to this topic on here is someone in their 60s talking about how they’re still going so you should suck it up and this problem isn’t real.
I'm 30s and feel old. The biggest thing is that I don't have the motivation to be fast and work extra hours. I look at the new college grads and remember those days when I didn't have a family and could put in extra hours, believing I had a career.
Yeah at around 35 - pulling all nighters actually just kinda starts to hurt… like for more then a day. Also I think no matter the age you’ll always feel old but just remember your not actually old until literally no one else is older then you… think 90s then appreciate being 30s you have 60 years left at least!
Trust me you have plenty of time, and your family is more important. Kids grow up fast though, so don't blink - you don't want to miss a thing.
Best skill is to manage your work time well and set boundaries. Working overtime is a sign of not having the right structures in place, and being disciplined about those boundaries is a force multiplier - it'll force you to be rigorous about what's valuable. You can make up for the lack of discipline by working overtime to an extent, but it's less effective.
My 2c (im 40. Been IC dev for 10 years, CTO, VP, and now an 'aerchitect'):
[Your current company] doesn't matter. Your family matters 10000 times more. Dont expect to grow in your company. As a 30 year old there are TONS of companies and startups looking for you. In fact now that you dont need a job is a good time to comb the market and apply to a couple of them. That way you get some experience in the current hiring process, you tune your "value" as a professional and you can ask for crazy money (knowing that if you ask for 2X your current salary plus WFH, if a company gives it to you, you score, otherwise you are cool on your job).
My 30 to 40s were amazing professional years. I was in 3 startups and grew 2 of them from the ground up. That also helped me grow myself to where I'm now.
Yeah, but I need the money to support my family and there aren't many options in my region.
I did apply to one, but never heard back. It was about 2x salary. It even seemed interesting - Android dev for a medical device startup. I guess my Android skills weren't advanced enough (I just have a couple very simple apps).
Change employer if you can. When I moved from small webshops to a consulting corporation that served very rich clients pace dropped by an order of magnitude while salary increased. As a rule of thumb you should change employers every two years to avoid underselling yourself and stagnation. You'll rarely get your market worth if you remove yourself from the job market to stick with a single company for years.
> If my generation hadn't made tech such a toxic work environment by ensuring that people had little or no recourse when treated unfairly by employers, I'd be tempted to feel sorry for us. Instead, all I can say is, "Whatsoever a man soweth, that shall he also reap."
I feel like this comes up a lot and it's something I think / worry about as a developer at the 'old' age of 40. I posted this comment below on a similar thread
Essentially I think this is hopefully a temporary effect of the doubling of programmers every five years for the past twenty plus years. I expect this to level out and thus shift the ratio in favour of older developers.
Yeah… I mean. I’m in my mid-40s and I feel like I’ve got a lot of productive / happy peers. Numbers-wise, sure, there are Devs older than me, but in raw numbers, not that many.
I'm not so confident that's true. There's seemingly this prevailing attitude in IT that new is always better. The latest gadgets, the latest complicated tech stacks, and the latest languages. Rewrite everything again so it's all fresh and free of 'legacy cruft'. Don't fix bugs, prioritize slapping a new "modern" GUI on it so people don't think it's old. Why wouldn't that same mentality apply to people?
True, but it might not be a zero-sum argument. I think the point I'm making might not explain ageism in it's entirity but I feel it's a factor. Time will tell I guess.
Even here on HN we see plenty of articles that are "Like X, but written in Go!", which seems to have been replaced with "Like X, but written in Rust!".
> which made [Baltes2020] a particularly interesting read. Its subtitle is, "How popular media portrays the employability of older software developers," and the first blow is what the tech press considers old
Do we have any better sources than a small survey of tech press articles?
I always feel like ageism in tech articles are borderline clickbait: They aim to induce outrage by implying that ageism is rampant in the tech industry but the best we can do for evidence is a few anecdotes and, in this case, a survey of other tech press articles.
Ageism is a thing in the software industry. However, every company I’ve worked for that has had an ageism problem has, not coincidentally, been a terrible place to work with long hours, unreasonable demands, and bad management. Ageism is the perfect tool to select for hires who are too inexperienced to recognize that the situation is bad.
Most of the good companies I’ve worked for have had a broad distribution of ages. Again, not by coincidence, but because experienced developers settle in to roles at companies that are reasonable and treat people well.
I think he's referring to the datatype (class) and associated operations (so not a literal Python module that you import, which may be where your confusing is coming from).
That's new in Python 3 (or maybe 2.7). When sets where first added to Python it was a module you imported.
That's a another downside of being an old programmer. Changes that happened 'very recently' also happened before many of your colleagues started programming :)
Not a fan of the way the author has framed this. The title reads as if it’s condoning that such discrimination is acceptable or understandable if age 60+.
I don't doubt this, and I'm truly sympathetic to the author's experience. However it doesn't match my experiences. At this age I find I'm getting better and better job offers. Too senior has never been a problem, these offers have been at principal or senior staff levels.
I don't think I've been managing my career particularly well (15 years in and 5 jobs), and I've avoided management as best I can, but it doesn't seem to be slowing down. Looking at my peers, there are plenty of people 10+ years older than me in IC positions.
I'm curious what the difference is. Is it 40 and only one job? Industry or programming language focus? Location?
as long as that job keeps you up-to-date with the current state of the art?
That is of course the crux. If you're the person that knows how the old stuff works (because you where there when it was the new hotness), you risk being responsible for the old stuff, while the new guy they just hired gets to work on the greenfield Rust project they just started. Had a friend of the family who spent his entire career at a Fortune 500 company. Started programming their back office mainframe systems in the 80s and spent the rest of his career working on those same systems. He knew those systems back to front and was revered as the local mainframe guru. 2002 he lost his job when the company decided to retire that old system and move on to something else. He could not get hired anywhere and ended up having to take a job a petrol station for while.
But what is state of the art? My interviews since 2013 have let me know that Perl is not any good as a language. Perl is bad and programmers who use Perl are bad. If I describe my experience in the industry from 1993 to 2003 which involved lots of Perl in the abstract then it often sounds good in interviews, but if I describe that experience as having been steeped in Perl then it is a huge, useless turn off.
The problem is that the state of the art in programming is whatever is shiny and new and often unnecessary. Lots of employers are hiring for Kubernetes experience when they absolutely do not have enough demand for their services to justify messing around with Kubernetes, but it doesn't matter. They also don't have the patience and depth to bother listening to some old person explain in detail why Kubernetes is the wrong tool for them and a waste of resources.
Corporate programming has become all about idols and mystery such that Perl has been cast out and Kubernetes is pure awesome no matter how irrelevant. As long as some old person can suck up to confused young people about what counts as cool code and frameworks then they might count as up to date with the current state of the art. And with this the unfortunate reality emerges that for older and experienced contributors starting a company is becoming as easy or easier than actually getting a job.
Employees need to tell employers to f** off with all the overtime, extra work, working on weekends, etc. The video game industry is loosing its creative people for years, the film industry is milking their 3d artists dry, and the normal software companies have unrealistic expectations how long someone should work.
On top of that we have weak seniority ranks. Products and tools are not developed as good as they could be. Topics like security still show that honing products and skills are needed, but this is not happening when we don't build a layer of experts that still want to program and dig into these problems.
Excellence comes with experience and that is only developing over time with making the mistakes and fixing them.
I wonder how much ageism is due to the fact that basic coding skills can really atrophy in senior developers who quit writing code years ago and are full-time architects/managers.
I’ve interviewed more than a handful of highly accomplished people with decades of experience as developers and then engineering managers who couldn’t answer extremely basic coding questions (I’m not talking about Leetcode-esque BS, I mean stuff closer to FizzBuzz). Places that are looking to hire senior developers who are actually still proficient coders will of course pass on those people, which can lead to a self-perpetuating cycle of ageism.
I have no doubt that when these people were actually still coding, they could have answered my questions in their sleep. Quitting coding for engineering management really does one a disservice IMO. I’ve also had the pleasure of working with people with decades of experience who never quit coding even as senior managers and their level of competence and productivity is astounding.
The 'I can't code architects' is definitely a common thing, but I suggest it's kind of a different problem.
But for dudes that are coding though, it's cool to see how 'I have solved this problem 100 times already' comes through in solving a problem sometimes.
Charity Majors wrote a couple of blog posts on the subject that I’ve tried to bring in to my workplace with varying levels of success. But still I’ve had colleagues express surprise that as an engineering manager I still wanted to get my hands dirty with the code of the systems I own.
Do EM's own systems? Or do they own the teams that own the systems? It's a pretty vague role. We had an EM for about a year, but when he left we didn't replace him. Nothing much changed.
Depends on the team I guess, but if I’m going to be responsible for the quality of the technical implementation then I’m definitely going to understand the implementation, and have input on the choices behind that (even if I will defer to the engineers for most of them).
It’s baffling to me that managers are given coding screens. As an IC I really don’t want to deal with a manager’s half thought out PR’s slapped together in between meetings.
Perhaps some shops give a light meeting load. But “manager code” has a stigma for a reason.
IMHO management should fix at least one bug per annum. I've suffered way too many management types who fold to business pressures which result in friction to development volition. I feel like if they maintained a small level of experience in dev they wouldn't fold so easy.
I think there are way more companies than you think that give manager-level devs a light enough management load that they are able to (and are expected to) write extremely high quality code (indeed, some of the highest quality code in the whole company). They are also expected to carefully review code written by their subordinates.
When hiring, these people are given coding tests just as a pulse check to make sure they can actually code, since so many manager-level devs have apparently lost that ability.
I think there is a disconnect between manager-level devs who expect a glorified project manager position with zero coding requirements (and are thus insulted and shocked and assume it’s ageism when they’re given coding tests they cannot pass) and companies that expect their principals to hack on code until retirement. And while blatant ageism is clearly a problem in the industry, I’d bet that at least some of it stems from this disconnect.
A lot of managers go back to being ICs because they don’t get enough time to code. Also, spending too much time in people management can set your career back as switching jobs is much harder (its easier to switch jobs as a senior SWE than a senior manager since people management cultures change a lot between companies). At some point, people managers specialize beyond coding into something else other than a SWE…they are no longer acting also as tech leads.
I've had similar experiences interviewing candidates, but it's been across the age range. I've never interviewed anyone who has forgotten how to code, but I have interviewed a lot of people who never learned in the first place.
If this is the case, then it would only compound the problem. Early 20s and never actually learned to code? If you stumble through the interview, a company might still take a chance on you, attributing your apparent lack of coding ability to being junior. 40+ and never learned to code, yet “fell upwards” into a management role that doesn’t require any actual technical skills? Good luck getting hired anywhere else; when your lack of actual skills becomes apparent during the interview, it will not be charitably brushed aside.
i agree with your point and it is why I have resisted becoming a manager at my current role at a FAANG.
I was previously a manager for my team at my previous company. However I got to both manage, and continue developing.
After switching companies, I've been offered management positions multiple times. However the reality is that at a FAANG, you rarely see managers who get time on the box anymore.
I know a lot of managers who are happy to not split the time between management and dev work, and power to them. However I don't want to risk the atrophy of skills.
When I interviewed here, the biggest concern most people had in my interview panel was "you've been managing. Can you still dev in a non management role?"
Frankly that's how a lot of the industry is. Managers don't get the time to dev. Many like that aspect, but if you're planning to leave, well good luck because you won't be able to hold your own against the people you managed when vying for a non managerial role.
I've seen decided my best path is to be an individual contributor who has more weight. Effectively a lead (currently) or principal dev. It's the closest I can get to both ends of the spectrum.
Management is a different career path though and coding is not one of the skills they require even for software management jobs. The problem is really more applicable to senior technical roles like tech leads, architects, where it is actually reasonable to expect them to be able to code.
The problem is that it's not really treated as a different career path by many people.
Lots of people leave management roles and try and apply for IC roles at other companies. It's also really difficult to go from management at one company to management at another for many people.
I went to a few interviews during covid. The only companies hiring during lockdowns were startups.
I went to 6 interviews. Every time, I was the oldest at the table, sometimes by 10 years.
The music always went the same... "We need experience, you have a lot of it", 2 weeks later "You don't know React like we do". Best one was "you didn't use an env variable here in the front end".
I've been building the web since 1999. I'm 40. I got a job in a large company, much better pay, WFH most days, predictable timelines.
Yeah this sounds familiar. A manager at a company I worked for didn't want to hire a 45+ SE because she might be looking for a job to hibernate till pension. she was highly qualified and a great SE/person.
(after some discussion she was hired and everyone was happy)
Hey, I’m 40! And I’ve personally seen very little of this in my little bubble. I’m usually applying for rails jobs which, in these terms, is an “old person’s framework” at this point. While being proficient in what would be considered an “old person’s framework” under the terms of this article has actually made things quite easy in my case (there are _tons_ of rails positions out there) I also don’t think it’s unreasonable to be expected to learn at least _some_ of those durned new technologies that keep popping up—-I feel like we should have known that’s what we signed up for when getting into this industry.
Of course, I’m well aware I’m speaking purely im the context of a web app developer.
What a weird concept. I am 41 and feel I am constantly learning new stuff and better ways to do things. I am working in a fairly deep field though (CAD). I presume the ageism present in a position depends on how much deep expertise is required in said position. OTOH I've been at my current employer for a decade so have no understanding of my actual market position within relevant market.
I sympathize, but I'm also starting to think there's a fountain of jobs that some devs have discovered and others haven't. There seem to be two camps of devs, one them is constantly harassed by recruiters and swimming in potential jobs, the other hardly ever comes across a job they'd want.
(get crucified at Amazon / work in the shady industry of sports betting / feed the cancer that we call IoT / drop fire on people in the name of defending America)
We all know that good developers retire in 35 to live the life of their dreams. If you're still in the field after 35, maybe you're not so good after all.
"while the experience that comes with age is valued in fields like music, it counts against you in tech."
Is the experience generic (e.g. I'm a Python guru and Guido knows me on a first-name basis), or specific (e.g. I've spent 25 years writing Python and web interfaces for high speed factory sorting machines)?
The latter makes you highly employable. The former means you're just going to be an expensive pain in the ass.
With startups writing software that is more akin to 'whipping together code which integrates components where the API's change every 4 months' ... I can understand the need for dynamic, youthful energy.
But doing anything else more historically understood as 'normal software' requires experience.
I consider anyone with < 2 years experience as an 'apprentice', who, without guidance will probably only cause damage.
After 5 years, you have someone who can competently do something in a specific area, but may not be particularly well rounded.
Looking back at my own career, writing embedded C++ fresh out of school, I can barely believe they let me do it. I don't think I would have hired me. I'm grateful.
There's enough thinking and experience required for most kinds of software the that the intense dynamism is probably overplayed. What you want is a team that consistently moves the ball forward, day by day, i.e. it's a marathon not a sprint.
It strains me to understand how Senior Devs would be undervalued on this context. I can see 22 year old founders having no intuition for this, but beyond that it's odd. My biggest worry with older Engineers would be that they'd be too expensive.
I'm in my 40s, and I build software at a scale-up.
They explicitly searched more mature developers, because of several failed projects with large over spending the past years. Management had enough of it, and now wants a more experienced dev team.
And it works quit well I must say, code quality is very high and we make our deadlines. Our product is stable and atmosphere in the office is great actually. Not much stress here, because we don't spend months building some never to be used generic-multipurpose-framework and we don't jump into every new technology which comes around..
Not hiring experienced developers is a big mistake! :)
I work in a senior-only consulting S-Corp (most devs hold equity). I'm 43 and everyone is nearly 10 years older than me. No one has ever been laid off, companies fired FTEs and kept all our guys during covid panic, and every one of our clients will take everyone from our group that they can afford or we will let them have (the consultants get to choose clients).
The amount of money they happily pay for us is crazy. We work along FTEs in all these companies for years who make a fraction of what we do. Companies take a diverse approach, stringing along FTEs under the auspices of being a special FTE with a career ahead of them at the company, and they hire a drove of contractors (permenantly) that cost twice as much and who are already wise to the FTE/career half-truth.
We get paid for every hour worked and are restricted to 40hours...at twice the rate of an FTE.
Search for a specialized software company helps. Don't go for the standard web bureau building webshops. I used to work in finance, with complicated calculation software, and at the moment I work at a bio-informatics scale-up. Very interesting field, and no average developers here.
I’m only 33 but I had 0 difficulty in finding employment, even a few months into Covid. However I’m also a ‘senior developer’ already, so there isn’t much room title wise to go in 7 years that isn’t management.
But that’s also kind of expected. As a senior developer, I can code faster and better than our junior devs but more importantly I can teach them to be better by reviewing their code. As I get older I am spending less time coding myself and more time reviewing others code.
A 40 year old developer is going to be telling stories of their first gig going through code printed out on paper reviewing it for a y2k bug… when I wouldn’t be surprised if 99% of this years college graduates never heard of y2k.
Do you local companies not have a staff/principal set of titles? They were once uncommon, but now I feel like most companies provide at least two or three levels beyond senior.
I'm ~40 with ~15 years of dev experience and 4 of management experience. I last year I decided to return to IC dev work and started applying for full-stack dev roles.
After two months and not getting few responses to applications, I put my resume in front of my tech recruiter friend:
"You sound ancient. Delete the first 10 years of your work history and take the date off your CS degree."
Whaaaat? I was incredulous at first, but eventually did as he said.
It would seem he was right though. I started getting significantly more responses to applications and inquiries from recruiters on LinkedIn.
At 40, I've done some of the best work I've ever done and my pay has been better than ever. I'm 52 now and the trend has only gotten better.
Why? Its because at 40, I had a much deeper understanding of the tech, I understood of the whole business process and I had the maturity to deal with people in a productive way. You won't find all of those in a 25 year old developer.
The only way that age becomes a detriment is if you do not grow. I worked with someone my age who only strong skills are a large enterprise storage system. He is a dinosaur and his future is limited. That's not his age, its the way he chose to build is CV.
I focused on learning new tech; Python, Go, Kubernetes, Cloud, etc. I've also spend a lot of time learning the business aspects of my industry and I've learned to be less of a jerk to people and how to communicate. At 52, I have recruiters contact me all the time.
Age is just number guys. Stay current, keep learning and stay strong.
The question is one of perception, trends, hiring - not one of materiality. In fact, the point is really about the likely dissonance between perception and reality.
Indeed, I keep being a jerk to junior developers that constantly comes to me with the same questions after I explained to them 10000 times and they say "Yeaah, I got it now". It is so hard to avoid being a jerk. What should I do?
* Ask why they keep coming? Maybe you aren't understanding their question, they want to build the relationship, or it's a really risky operation and they don't want to undertake it alone. This might be worth digging into.
* Write the answer down to the questions (wiki, internal doc, whatever). When they ask, point them to what you've written down. Will still take some time and interrupt you, but hopefully they will learn they can just go to the doc.
About that first point, that to me seem like a genuine and emphatic thing to do but I want to flag that this has the potential to go into the "soft" areas where feelings exist. For a crash course in "feelings and needs" read non-violent communication to be appropriately humbled by how hard (but important) this skill is.
I agree. I have a whole blog[0] about what I wish I had known when I was a new developer. Those "soft skills" (which are actually pretty hard) come up again and again as something I wish I'd known earlier.
1st, you need to help them get the RCA on why this question, and what context (that isn't often brought up). Its often that framing the question in context elucidates the actual problem they are working on solving, and they are seeing a misfit in concepts with the solution you've gone over with them. This is one (of many) areas where being a senior (experienced) dev/manager/leader is so critical in developing the less senior folks.
2nd, curation of notes, experiences, techniques is absolutely critical for team capability growth. Capture the problems, explain the use case/back story, explain the problems in explicit detail, explain the thought processes around the solution, and the solution. Cut-n-paste examples help. I did this when I ran my company, and found that it was quite helpful to the team. And they followed the example, and documented their own efforts.
Please don't be snide or dismissive with the less experienced. One of the reasons I see many orgs hire older/senior folks is to provide a calming, thoughtful, intentional influence on other team members.
As others have pointed out here, you need to continuously grow, learn new skills, add new capability. This should be a given. I don't want to bring "lifers" (people who hide in a company, doing only one thing, never interested in developing). I want to bring curious, intelligent people, with capability, and experience. Or if lacking experience, then a strong attitude of wanting to get their hands dirty.
It seems trivial to you, but only because _you know to trust the message and what’s written in the wiki already_. The hardest thing about documentation is establishing this chain of trust. By coming to you and getting a verbal confirmation they establish one tiny link in that chain.
Edit: just thinking out loud here. These error messages are equivalent to a random passerby without any skin in the game saying “oh just run this command” — how would one trust them when their job is on the line? I can think of a few common approaches:
- “oh just run this command because paragraph 1.2.3 in the universal code we all agreed to says so” (easy to confirm)
- “oh just run this command because senior engineer X said it’s safe” (assuming you believe that they did say that)
So maybe the error messages should include some equivalent of those.
Just now, one of the junior develops contacted me about a problem trying to start an application we are developing. I asked: "Did you follow the instructions in README.md file?". He said: "Yes". Then when I asked for him to show me the error, I could see he clearly had not made one of the steps in README to start the app. Just to confirm I asked if he had done it and he said: "No, maybe this is why I am getting this error then".
The problem is not reading, it's trust in the information. You telling them that the information is up-to-date and valid and useful is the reason why they read it.
I was the only English-speaking TA (&, thus backup lecturer) to "Intro to C 101" at a major mass-population state university. Class sizes were ~800 students. I had an open-doors/open-lab/open-office policy. By the 4th semester, I remember laying on the floor in front of the class, and yet another bro (blond hair; blue eyes; chiseled jawline; backwards cap) came up to ask me a, frankly, very well thought out question — and I just said "I know I've taught this to you, already". I had; I'd taught it to him & all his bros for years.
What's the quote? "Every year I get older, but the junior devs stay the same age."
I had 6 identical lab (secondary teaching) sessions per week, each 1 hour long. I handled lecture once a week, for two blocks of 400 students. It’s the equivalent of a decade teaching per school year.
This note makes me again feel industry was the right choice for me. In industry, the value of people asking questions is you get a very accurate way to identify talented people - by which I don’t mean gifted people but people with the understanding, curiosity and confidence to drill thru a brick wall in the way of their goal with the subtle arts reasoning.
> I remember laying on the floor in front of the class
Is there a nuance to this I’m missing? If my professor suddenly decided to lie down in front of the class I would not casualy amble up and ask a question, I’d be more likely to call an ambulance or burst out laughing.
When I worked with a lot of entry level college kids I would pretend I was a swami and I could divine the answer to the question only through supernatural means until they were too shamed to ask because obviously this isn't magic.
I think this needs to explicitly be handled by a role in the team. A common team might comprise of a project manager, architect, 1 to 4 more senior devs, some representation from a test team, and a number of juniors, interns etc.
One of the senior devs needs to handle onboarding new people and communicating the ideas of the architects and seniors over and over again to juniors. This is tiresome and boring to some. You need patience and empathy. It can be fun though as you get to meet lots of people and help them when they need it most. Most importantly you give the other seniors the time to work, without them getting involved in yeah just "make clean build" that away type issues.
I actually like the role and if the team doesn't have too much churn, you're just another senior dev.
Write a knowledge base, or Wiki, or FAQ, or whatever. A place where they can re-read the same thing 10000 times. Maybe add some examples too, in cases where it makes sense (i.e. code).
Even better, make them write it, and you just review it. It'll help them learn faster.
If you have a junior who already understand problem X, ask them to explain it to someone else too. It'll help solidify the knowledge, and at the same time offload you too.
Take my comment as wisdom that came with age and experience, if you will :). I don't think the above would have been my first thought 10 or 15 years back.
One approach I have been experimenting with is copied from surgeons: see one, do one, teach one. We have documents and so on, but for novel Devops-ish rocedures, I will document it, but then pick some to watch on screen share, then the next time they will drive, and I will watch their screen share, then the next time they will demo to another person. It is great for tasks in between we do it every day” and “we’ve never done it before”. Also it builds confidence (and often the docs are better after the train gets a good writer as the see one person).
Unfortunately, it is not only me that has these problems. But I agree that I am not the best teacher in the world. However, I do believe that they are not trying very much and keep calling me or stopping the team with meetings for small problems. I get it when you are new to the company, but for god's sakes when you have 2 years+ and you still keep asking trivial questions, there is some other problem here.
We keep telling people "there are no stupid questions - please ask before assuming anything" then get annoyed when they do exactly that ;)
Though I do get the frustration. I had similar with one of my juniors, and it took me ages to work out that his learning style didn't match with my teaching style. I ended up having to go right back to basics and walk him through everything painstakingly slowly.
I know :D
But, I am only get annoyed when the questions are recurring. I think there should be more effort from the developer to learn by himself if he does not get it from us explaining 100 times, then.
Stop giving them the full answer and only lead them part way there. They will then (hopefully) learn how to look up documentation for themselves. Essentially "teach a man to fish". They don't necessarily want to know the answer, but they want to know how you know the answer.
That is what I am trying unsuccessfully to do. I made a sugestion the other day and did not write the code. He understood the idea but implemented poorly. When I asked why did he implement it that way, he said "it was your suggestion". I tried very very hard to not explode here...
That is what code review is for. It shouldn’t be personal, it’s just here these specific changes will make it more robust or easier to understand or whatever.
Explain why the implementation is poor, e.g. if there is an unperformant loop that will struggle with large workloads, point that out and ask them to write a test to simulate this, then fix the implementation.
Make your rate of responding be proportional to their demonstrated ability via questions. At my last job, there was one person that would always ask, not simply new questions but new types questions. I would immediately get back to her. There was a group of people that would always ask a new question, generally either due to a lack of understanding of something or it was a real interesting bug. Them I would return to at the next break. Then there are the people that have no interest in learning how to fish and just wanted a fish. I would slow down responses quite a lot; when they escalate they are introduced to the ticketing system or Jira for assigning fishing tasks to the team.
There are people with such interesting questions I am happy to hear them and talk them they even from three jobs ago. I cultivate them, as these questions extend my detailed knowledge farther than it otherwise would extend.
You're not. It completely diminishes the whole point. I have met many younger developers who went through different struggles and are more mature than most 40-years old.
Opposite ageism is also real, this one is a proof of it.
I've seen a lot of good Programmers shown the door at 50-55.
Sure, some left expecting to find another job, but remained continuously unemployed.
I've personally known four homeless individuals in my life. Two were Programmers.
I have never seen an industry that just thinks employees are not worth paying when they hit 50.
And yes--I'm aware of the older high paid employee that's the first to go in a corporation. These guys I knew were not those guys. They were just enthusiastic employees, whom thought they were doing a good job.
My understanding is that you are exactly right. It seems to be common that we tend to stop learning and pushing ourselves, get comfortable or maybe even afraid. To each his own, but I think it is more fun and fruitful to keep at it.
So does keeping up with all the latest hotness when you already know it won’t fix your organizational problems.
Hell, I’m only 33 and when asked today what I currently want to learn, had to seriously consider that I didn’t want to learn anything new in particular.
I would feel more inclined to continue to "learn" (read: pick up shiny new frameworks, not actually learn new fundamentals) if the new stuff wasn't just rehashed old stuff. If I need to pick something up, fine, that's trivial, but "learning" for the sake of "learning" is best left to the juniors.
I tell them the truth: I wanna go deep in my stack (Ruby) to the point of learning C and VMs to understand how the Ruby interpreter works. This is what interests me; I really can't see how learning Node or Elixir is gonna make a better programmer than what I want to do.
As I understand the research the "struggle" is more cultural than inherent/biological.
It just so happens that a good chunk of people tend to stop learning and pushing themselves for what ever reason. But if you keep at it, or get back to it, your brain adapts over time and becomes more flexible to to speak.
And by "learning" they mean things that are just slightly outside of your comfort zone.
Anecdotally, people who do that for a very long time, tend to be really smart and interesting I found. It's such a wonderful thing.
Learning is hard - you are pushing the plasticity of your brain. It is like cutting grooves into your brain - but fortunately the experience of insight when you understand new things is quite pleasurable. I think it may take more “conscious intentionality” to choose that discomfort as one ages but it is surely worth it for a life of pleasure. I won’t say learning go channels and go routines was as big a sunflower burst as call back event based programming in C was as a young man, but it was unmistakably cool. Even learning the thought behind all the god-forsaken Java patterns or the dumb borrow checking for Rust make me a larger thinker and better reader and listener to technical ideas.
A life of constant curiosity and willingness to tolerate the pains of learning is a lifetime of childlike awe and playfulness.
How much do you need to learn though? Why not settle for .Net or Java or Node or Django or Rails (if doing web)? They didn't change that brutally in the past 10 years. Sure, there are changes, but nothing that 2-4 hours of catching up monthly won't fix.
I think the issue becomes worse when you change stacks a lot, that isn't very sustainable to me.
The point isn’t that techies over 40 can’t do good work or keep current or invent the future, it’s that they can’t get a job.
As someone a few years north of 40 and recently went looking for a new job, I can identify with much of the article. Although for me, in the market I’m in, I kinda felt the pay for a ‘senior dev’ didn’t really cut it either. The whole pay structure is for younger folks and veterans have a hard job finding work.
I'm in the same boat. Also "senior dev" doesn't mean what it meant 10 years ago. I just had a really quick chat last night with a engineering lead. The position was a "senior dev" with 5-8 years experience in multiple things. Usually those are taken is minimums. They were actually maximums. He was surprised I made it past the initial recruiter screen having 20+ years experience. We thanked each other for our time and said so long after just a couple of minutes.
SV has sort of broken the job search, especially for more senior people. It's not just JR/SR anymore, it's some weird mashup of: Staff, Sr Staff, Principal, Level 3-5, Distinguished... Every company out there is pretending they are a FAANG when hiring, asking for 4-6 hours of your time. I'm working full time with 2 young kids. It's a nightmare.
One has to adapt to the biases and reality for survival. Lie about your age if it ever comes up. Lie downward about your experience too. Fuck their discriminatory bullshit.
i know a career-agent from a job-center that told me the same thing after he had witnessed many qualified and experienced engineers beeing rejected because of age- or buzzword-based discrimination.
>At 40, I've done some of the best work I've ever done [...] Its because at 40, I had a much deeper understanding of the tech,
The blog post isn't about self-reported cognitive ability getting stronger (or not declining). It's about the job marketplace.
Maybe it's instructive to compare/contrast different professional careers that depend on mental abilities and how age affects marketability:
- computer programming : oft-reported industry bias against age 40+ and active recruitment (especially by software companies) for 20-somethings.
- corporate executive manager (e.g. CEO, COO, CFO, etc) : age 40+ is typically the target hire age. Being a younger 20-something actually works against being hired for these roles. (To be CEO at age 20, you'd have to be the founder of a startup.)
- surgeon : age 40+ doesn't seem to bother patients. They may rather have a 55-year old do their heart bypass rather than a young 30-year old just out of residency.
Why is experience valued for outside hires of CEOs but not as much for programmers?
In other words, a 55-year old programmer would have 35 more years of experience than a 20-year old but that "extra 35 years of programming" doesn't seem to be valued as much as the "extra 35 years of managing" that a 55-year CEO candidate has. Why?
I have pet theories on that but I'd rather hear what others think.
> Why is experience valued for outside hires of CEOs but not as much for programmers? In other words, a 55-year old programmer would have 35 more years of experience than a 20-year old but that "extra 35 years of programming" doesn't seem to be valued as much as the "extra 35 years of managing" that a 55-year CEO candidate has. Why?
I'll bite – I think it is because instead of licensing and regulating our profession like surgeons, we have opened it up to creativity and inclusion like artists or fashion designers.
As a result, programming job trends are far more similar to fashion or art than medicine. You always want the clothes from the hip new designer, but a few stalwarts (Yves Saint Laurent, Ralph Lauren, etc.) are evergreen and always in demand. They even end up influencing the larger trends of fashion. If you ask Ralph Lauren how things are going, he'll say "I'm 81 and I have no problems finding work!". You might even have individual designers who are discovered at 81 and become a hit. But that is not the condition for the average fashion designer who is 81.
Similarly, you'll hear from plenty of older programmers for whom things have worked out as they get older. My hypothesis is that they are also the ones who have kept up with changing fashions and paradigms.
> ...but a few stalwarts (Yves Saint Laurent, Ralph Lauren, etc.) are evergreen and always in demand. They even end up influencing the larger trends of fashion.
The "old" brands you are wearing are all the result of stalwart designers from the past.
Carhartt produces clothes designed by others. If you look at their wikipedia page, all the designers mentioned are either old and famous, or the young "hot new thing".
Something tells me you're not in the fashion industry.
The average customer doesn't give a shit about the hot new thing, be it fashion or web framework, but the customers aren't the ones hiring talent and shaping the industry.
Indeed, one of the things you'll hear from "older" developers is "you gotta keep learning new stuff" and "learn how to learn". You might find yourself with some extended contract for maintaining a legacy codebase that is too big or important or risky to migrate... then you may be "set" for some years, but that's certainly not a majority of cases I see. And... if you're early 50s and have some in-demand niche skills that might be out of fashion in say, 5-10 years, but you have work lined up right now, that may be enough to just double down and stay put, vs trying to learn a bunch of new tools. You'll still be 'behind' on the new tools, and you'll still be competing against some degree of implicit ageism.
The problem I've witnessed is this creates a perverse incentive to keep the organization using old tech even when its against the organizations best interest. I've seen developers essentially lie to non-software-minded managers as a means of not being forced to learn a new platform.
There's a lot of factors at play. Yes, there's incentives to 'lie' and say "this can't be upgraded". There's also incentives to say "this is old and is bad and we have to rewrite!" - I've seen a lot of resume-driven-development. There are people who will lie to avoid having to learn an old platform as well.
Very true. In my experience the rationale to lie to upgrade has a higher burden because it has to overcome the inertia of a status quo that has at least worked for some time.
It tends to be easier to advocate for a past solution than an unproven one.
To be fair, most of my experience is where software is an enabling function, not viewed as the end deliverable. E.g., control software for hardware. In most instances, the project managers were hardware folks and that tends to cause the problems you might be alluding towards.
This falls inline with what I was going to respond with, but your response puts a better angle on it.
I was going to suggest that the nature of software moves much faster than many other disciplines, even other STEM ones. At least in industry*, a mechanical engineer isn't as likely to have to un-learn and re-learn like a software engineer. This tends to make those industries a bit more slow moving which, in turn, makes experience in the traditional ways of doing things a bit more valuable.
I know NCEES toyed with the idea of a software engineer professional license, but it died on the vine because so few people took it up. I suspect the outcome would have been different if industry or regulation made it a priority, like it is for civil engineers.
>My hypothesis is that they are also the ones who have kept up with changing fashions and paradigms.*
This is my thought as well, but I think a lot of bias comes because of other life events. The SWEs I knew who felt left out just didn't have enough bandwidth to spend extra hours each week learning when they had many of the other commitments that generally start creeping in in one's 30s onward.
*(In academia, there's a bit more emphasis on 'state-of-the-art', I presume).
I always tell people that software development, as a career, is like being in college forever. You have to be in the learning mindset your whole career. Part of that learning, is learning technology, and part of that learning, is learning people and organizations. Organizations are very different, today, than they were in 1990. Less change than the underlying technology, but changed none the less.
Older programmers are judged more on their experience, a 55 year old candidate is expected to have 35 or so years of experience, but interviewing for that is tough. Instead, reputation is more important (having a bunch of people vouch for you so you be hired in as a staff/principal IC), but not everyone will have that, actually a lot of people won’t. So the 20 year old is an unknown quantity, they are all potential, a 55 year old candidate has to be the exact opposite (known quantity, not much accommodation for potential), and so…well, I’m sure we can see the problem with that.
And if you change your career late in life, you are even more screwed by these kinds of standards. A 40 or 45 year old can’t just get into the industry via an entry level position. Even if they would have a 20 year career ahead of them.
I think the (sometimes justified) fear is that an older programmer may have stopped learning X years prior, and gotten stuck in old practices. It's probably really easy to fall into a groove and say "it worked back then, and it still does". This attitude may be detrimental in a workplace that strives to innovate and wishes to test new technologies.
I agree with your sentiment. I was 51 when I last applied for a job at a new company. Initially I was getting very little interest in my resume. Then I cut out the first 10 years of my career from my resume (and LinkedIn), and downgraded the oldest position listed from a Senior Lead to just a developer -- essentially making me appear 40 instead of 50. Within a couple of weeks I started getting responses.
And it is not like my work from 1990-2000 wasn't valuable. I worked on a complex large scale analytics system in the early 90's and migrated to large scale web-based applications in the later half of the decade. I'm proud of that work and have some interesting lessons and stories from that time period, but they are telltale of my age and were working against me.
From the perspective of someone who has been on the hiring side, I see this a bit differently.
Senior developer positions are more common now, in part from title inflation but also the rise of more complex online interactions and businesses. By cutting the senior bit out of your resume, you no longer look overqualified for the more numerous junior / "regular" developer positions.
While your work from the 90's is likely very interesting, for many companies the soft skills and lessons learned will be more applicable to whatever role they have available, best included as a summary.
I promise that most hiring managers aren't going to read a 10 page resume, or even a 4 page one. 9 times out of 10, they just want to answer a simple question: should the team take time to find out more about this candidate? If the first page of your resume doesn't answer that, it likely won't make the cut.
On a final note, "30 years experience" really isn't a great sign. I have indeed worked with the type of person who has basically had the same experience over and over for 30 years, not growing, learning new technical or leadership skills, etc. That is totally fine for many positions, but it is mark against them for many others.
Ageism is real. It's not some sour grapes of under-performers who let their skills decline, or move or think at a dotard pace. It's essentially "We don't want anyone old because old = bad, new = good."
I think it is a lot about under-performers that want to hang onto their "years of experience" as a selling point and being angry that there is not much of a market for "years of experience" only.
Maybe they were not under-performers 10-15 or 20 years ago, but if someone gives 20 pages of resume and most of it happened in 90's I would not be interested. Because it is quite easy to see such person is hanging onto his past performance like Al Bundy to his 4 touchdowns in high school.
If someone would be 50yrs old or even 60 but his last couple of years are taking most of resume and they did interesting work at that age I would be curious to talk to such person.
It is not that they would need to have latest frameworks or libraries listed on the CV. It is more about if they did meaningful work in last year and not that they did meaningful work 20 years ago and now they are just hanging around doing whatever.
This is also true. Definitely can't slack off on the couch with a hand in their pants. Even someone with little experience can become perpetually stuck starting at the beginning of their career in low performance if they don't push themselves towards excellence. Slacking off at any point leads to a downward spiral of decay.
So my resume concentrates on the last five years, with the prior 30+ being mere bullet items, in the event you want to ask. You are correct that no one really cares about what you have done outside the last five years.
I was told it's unusual to include more than ten years of work history on your resume in most fields. So I stop at ten years now and don't include dates on my degrees, and I haven't had any trouble. It helps that I've somewhat deliberately kept learning new things at every job (otherwise I get bored!).
And of course it's BS that this is necessary. But until the entire culture shifts I'll just keep doing what I'm doing and then telling people how old I am after I've signed the offer.
"surgeon" is limited by the AMA cartel's supply controls, and requires 10 years more training than a programmer, so subtract 10 from effective age in job.
Experience is valued for leaders (managers), which OP refuses to do. Experience is valued for careers where the work is the same year after year, which programming is not. So much of a 40year olds knowledge is useless because fashions have changed. Wisdom is useful in managers, but individual contributors need continually upating deep detailed knowledge and constant analysis and Nobel problem solving, which favors the youngish. It's more like chess than medicine or law.
OP also gives hints that he has a bad attitude that may shine through in his interviewing and networking. He also didn't give any hint as to how many jobs he applied for and where.
The implicit assumption powering this is that programming experience from 35 years ago is not only irrelevant to today’s challenges, but undesirable due to having the wrong habits and patterns of thinking; this stands in contrast to surgery or management skills which are widely perceived to be more timeless with candidate value compounding with experience.
It’s plainly false for all sorts of reasons, but that’s the source of the disparity.
I've met plenty of older developers that refused to adapt and keep learning. On the other hand, the best developers I've known have all been older. It's not about the skills you acquired at age X. It's about you attitude towards continual learning and improving, regardless of your age.
> The implicit assumption powering this is that programming experience from 35 years ago is not only irrelevant to today’s challenges, but undesirable
I think the implicit assumption has it the wrong way around. It seems like the industry takes about 30 years to catch up with the mathematicians who had discovered the solution to our problems.
We create this problem for ourselves. Some hot new web framework rediscovers the continuation monad and treats it as a novel invention. Giving it a slapping new name, a slick logo, and talks at the hottest industry events. A whole generation of developers learn to talk the talk, walk the walk, and hit a wall. The next framework comes along and suddenly they're, "too out of fashion."
Computing hasn't changed radically in a long time and certainly not programming.
> Computing hasn't changed radically in a long time and certainly not programming.
This might depend on what you consider radical.
Web forms vs MVC vs react + restful API are fairly different coding paradigms.
Trying to create a windows service in net framework 2.0 is totally different than net core 5.
Or using SQLDataReader to read executed sql strings vs entity framework?
Even just dependency injection and scope definitions (transient, singleton, scoped) is very basic yet is something I’ve seen older developers tripping over. At least it’s an easy to identify run time error as it validates the container when running in development.
I’m not saying older developers are bad, but developers with the mindset that coding now is the same as coding 20 years ago are either using a language that never developed itself or are going to stumble over the changes that did occur.
This is actually the attitude that I find highly undesirable in "experienced" programmers. They recognize that Y is just X with some fancy dressing, but fail to appreciate the immense value added by that fancy dressing and thus treat Y as if it were X and never take advantage of any of the improvements, or expect Y to do things that X could be made to do but really is best done by Z nowadays.
You're still trying to accomplish the same goals, and there are only so many building blocks, so yes the big picture stays roughly the same and its only the details that change, but the devil is in those details. I find working with people who are not only ignorant of the details, but proud to recognize that they are "just" details, to be a nightmare.
As mentioned elsewhere in the this chat, I'm a 45 yo principal engineer at my current company who has seen nothing but an increase in attention from recruiters since turning 40.
I'm also directly involved in hiring for my team, having helped add 15 members over the last year, working directly w/ the director to review all resumes, handling maybe 30% of the screens, and usually the veto vote. We've interviewed a number of engineers in their 40s and 50s.
Experience is great and we're always welcoming of older devs... but there is a caveat. If that experience is tempered by a somewhat pessimistic attitude, which is often the case, there is rarely a chance to move forward. It's not being old - it's being worn out.
AFA the resumes of older devs, we often cut them out because they're an objectively terrible, wall of text mess that goes on for 4+ pages. Like 2/3 of the time this is the case.
I understand the need to fake overwhelming optimism to get by interviewers with mindsets similar to yours. Too much honesty can be bad in this industry, especially at higher levels, where diplomacy and soft skills are very important.
I have that optimism and it certainly is not fake. I love what I do. Yes, I bring experience to the table but not bad energy.
WTF would you want to hire someone who poisons the well? It doesn't matter what the job/industry is, in what situation would that be remotely desirable?
If you say so. But just as you doubt the vigor of the “somewhat pessimistic” candidate (in your words, you didn’t say they were toxic), others will doubt the sincerity of your overwhelming optimism. So is life.
When we discuss these types of candidates, that is always the tone of the discussion.
It's good to discuss the pluses and minuses of an approach, we encourage this in our architecture section of the interview loop and during the initial screen when discussing line items in the resumes.
It's having a general negative attitude... bad mouthing past employers, being negative to a tech stack (and literally not couching it with any reasoning what-soever when we try to dig in), being negative to past arch decisions by co-workers without providing what are better solutions, things like that. Sometimes it's implied, sometimes it's more direct, but it there is a distinct lack of social intelligence that seems to happen more w/ older candidates that just suggests someone is burnt out. Wisdom should bring skill, not attitude.
Forest from the trees here. You pay someone to bring value to the team. That is not valuable to anyone. We're not running charities.
You’ll find a lack of social intelligence in the entire age range, but younger candidates seem to get more of a pass than older ones (or perhaps because the senior candidates have more rope to hang themselves with). Over negativity about past employers is indeed a warning sign (though some negativity is fine, like if you ask the question “what did you dislike about your past employer? “), but pessimism in small quantities shouldn’t be taken as an automatic negative. I would definitely be suspicious if all the opinions a senior candidate had were positive. If they can’t list the bad as well as good about some tech, they probably don’t really understand it.
"You’ll find a lack of social intelligence in the entire age range"
But this is specifically an issue more prevalent in older candidates, and is in large part the reason for a pass. We pass on younger candidates as well for this reason, but most prevalently for skill.
"If they can’t list the bad as well as good about some tech, they probably don’t really understand it."
I literally just said we consider this a positive and that we specifically dig in for this. It seems like you're willfully misinterpreting the message here, which is underscoring the point I'm actually making.
Really, what you are saying is 100% spot on, but seems to be misunderstood for some reason.
If presented with a difficult problem, there are people that go "nah, that can't be done, here's a long list of reasons why".
There are also people that go "That's going to be difficult, but maybe we can try A, B or C and I recall reading about this cool new tech that could perhaps help"
Be open to change and open to accepting that new things could be good and interesting.
I'm 43. Hiring engineers. Working with some 50+ engineers that are the absolute best I've ever worked with.
This is 100% correct. As a hiring manager, the attitude of candidates was probably equally important as their skills when it comes to the decision of whether to hire. The baseline of is this someone I would enjoy working with every day? Is this someone my team would enjoy working with every day? If it's not a solid yes I'm going to pass on you.
You might be missing out on a lot of great people because of your high first impression bar. And I don’t mean good workers but bad social skills, but people who are actually really chill to work with even if they don’t show it so quickly. This is why most culture fit filters really don’t work well, people have a wrong or too narrow impression of who they would enjoy working with everyday.
This must be some kind of cultural difference in the purpose of jobs. Where I come from, the purpose of work is get things done, put food on the table, and hopefully not make the world a worse place in the process. Enjoying the company of everyone you work with is not a significant consideration.
Some pessimism is good. We're older, we've seen it fail already. Insanity is doing the same thing over and over again just in a different programming language. That's why you hire older programmers.
I can't stand the jaded senior engineer archetype. They're absolutely toxic to the junior and mid-level engineers who look up to them.
Years ago i was at a coffee shop and overheard a conversation between a college student and what had to have been an assigned mentor. This guy was going on and on about the very worst of his experiences in his career yet, in a weird way, bragging about them at the same. This poor kid was writing every word down in a notebook she had. He got up to the restroom and i walked over and politely told her this guy is only filling her head with poison and to run as far and as fast away from them as possible. She got up and left.
As long as you're not gonna be ageist that's fine to hate a certain type of engineer. Remember you will get old one day too and you'll be surprised how fast time flies.
I understand what you mean but I’m 45 and have been around the block a few times. I’m not sure if this analogy works completely but teaching someone how to climb a mountain safely is good.
Beating into the head of an aspiring climber the details of every injury/death disillusioning them of even an attempt is full stop unacceptable.
I get you buddy seems like you had a bad experience with some old dude. But you're no spring chicken yourself, you will get to that age eventually. Let's just all be humane to each other and judge each other according to merit as much as possible.
I'm 37 and wanna keep working 15 years from now...
I'm a 50+ staff eng, and I agree that I'm getting as much interest as ever from recruiters. Just gotta stay current and never take on the attitude I see from older engineers of "this new crap is just what we used to do back in the day". New stuff is different and has value, just accept it and stop whining.
As for resumes, I personally don't get the page limit, since I love long resumes with detail when I'm evaluating engineers, but understand the marketplace absolutely hates them. I don't know if it is HR or auto pre-filters or the hiring managers, but it doesn't matter. All I know is that when looking for a job most recently, I had a 3+ page resume and was getting some, but not many, hits. Then, as an experiment, I trimmed it down to a single page, making it ridiculously thin in my judgement, ran it through the various sites that judge the resume based on keywords, and came up with a custom resume (lightly so) for each posting. I suddenly jumped up to a 75%+ call back rate.
Keep your resume to 1 page, cut out the details on the old jobs unless it is really interesting, and basically just list the tech you know.
For me it’s all about communication style. I see those wall of text resumes and I see a person that is going to be a poor communicator and possibly a sloppy coder - not knowing when to self-edit and separate the wheat from the chaff on what actually brought value to the roles they took.
Detail is great but concision is greater. The resume is a marketing vehicle and it should be well honed. We can dig into what someone knows during the half dozen hours we spend interviewing them.
Why do you think they have a pessimistic attitude?
I´ll use myself as an example.
I started coding professionally at 23 (I´m 43). For years I pushed myself to be the best coder I could. At 35 I got laid-off. After that I just got sucky jobs were I´m treated like they have me there as a favor (and I work with the latest, and I´m, even with the pessimism, a top performer).
A coworker of mine that thought that coding was a losers job, coded for some months and went to work as a B.A and later as a PM, nowadays is an engineering manager which earns way more than me and is treated way way better. His whole programming experience is an 8-month part time stint with Winforms. And sadly he is not the exception...
With all due respect, there is no reason to have had sucky jobs over the last 8 years. The market has only gotten increasingly hotter... if you're in a tight spot career-wise, do the work to get into a better company working w/ better people.
If it's an issue w/ passing interviews at better companies, interviewing unto itself is a skill that should be regularly honed.
When I was a younger engineer I was stuck in a job that was unsatisfying for about 5 years... every 1.5 years or so I would interview w/ 3-5 positions, usually one or two would be close to an offer but I ended up empty-handed, would get deflated and give up.
Over the last decade I've taken the job search much more seriously, usually interviewing at 15-20 companies so I can end up w/ 3-5 offers to choose from. Yes, it's very time consuming (probably some 60-70 hours of my time over 5-6 weeks), but the quality of the companies I've worked at has been consequently more satisfying.
I've met plenty of toxic/ego maniacs/pessimistic people who were in there 20s or 30s. Sure age might correlate a bit with the pessimistic side of things but not terribly so imo.
Experience at that level is expensive and companies are less inclined to pay that much. They also are less likely to believe you'll be comfortable with taking a lower rate for a long duration. This is true for both CEO and high end programmer with decades of experience.
A lot of companies are run with the Taylorism hierarchy. The people at the bottom are making the widgets. The layer above them are the managers, who are good at managing workers. A layer above them are executives who are good at making strategic management decisions that the managers will implement.
That system worked well during WW2 and postwar America. Someone who was a manager at an airplane factory could move to another company and be a manager at a washing machine factory.
While it is true that some management and people skills can transfer between industries, the big problem with Taylorism in tech is that the skillset needed to make the right management decision is orthogonal to the skillset required to get into a traditional executive role. Andy Grove, from Intel, was very successful at adopting a new management framework for this scenario as described in his book "High Output Management"
Not everyone is as a good of a manager as Grove, so you still see a lot of managers following Taylorism hierarchy. And that requires that engineers assume the lowest level of the system and accept that their "managers" are qualified to make decisions. Young people without much exposure to the business side of things are much more likely to accept these positions. Managers are afraid of hiring someone 40+, who may know both the tech side and business side of things and be aware of management mistakes due to the manager's lack of technical expertise.
People don't look at a surgeon aged 55 asking themselves why that surgeon failed to move on to the next level. Unfortunately the same isn't true at all for programmers, for some reason it's assumed to be an entry position. If the path to surgery would be through nursing experience, aging nurses would have a much lower standing amongst all their future surgeon peers than they have now.
Seen from this angle, the ageism seems to be an unsurprising outcome of the relatively informal qualification structure in software tech: apparently opportunity for all cannot come without a bit of stigmatization for those who refuse to strive for it.
> The blog post isn't about self-reported cognitive ability getting stronger (or not declining). It's about the job marketplace.
C'mon! You don't expect someone here to have actually read the story.
He didn't even get the irony of the title (Usually the expression goes the other way, i.e., "50 is the new 40") which means he didn't even read the title too well, either.
Is it because large swaths of the industry use non experienced people to do the hiring? Experience values experience. Lack of experience values perceived longevity, ability to pay less, and zeal.
Also, age is not experience. Age is usually an ingredient to experience (though some make use of less age than others to gain experience). But in and of itself, it does not create useful experience (maybe wisdom is the word we’re looking for here). I’ve worked with many older engineers who hadn’t gained useful experience. They’re still making the same mistakes they did years ago. And I’ve worked with younger engineers who I can tell are going to be old dinosaurs from the get go. They like the high paying career and the problem solving aspect, but the desire to evolve and improve their game play just isn’t there.
> Why is experience valued for outside hires of CEOs but not as much for programmers?
In my experience, it’s that younger devs are cheaper, much cheaper, than older devs. Most software development is easy enough that you don’t need someone with 20 years experience. I can hire 2 or 3 people for the same price. There’s always a budget for resources, and that budget is usually as small as it needs to be. Web dev, CRUD apps, mobile apps are the norm, not Facebook scale. The tools are mature enough that a 20-25 year old can do the development, and their salary expectations are much lower.
Because let's face it: writing code is seen as digging trenches.
I hear all the time from fellow developers how important we are. We get a lot inside jokes how non-devs don't understand things and all the self importance of devs that comes with it.
I have a friend that is hanging a lot out with musicians/artists where they do the same thing as devs - thinking they are important.
While developers earn more than musicians - a lot of musicians are just menial workers performing what they are told - coding is still menial work to be performed. So it is implementing other people ideas or they can just get another violinist.
Surgeon while is quite physical and menial, everyone agrees it is occupation that deals with life and death - most developers are nowhere close to such responsibility.
Ok, but dev managers are also managing people digging trenches, not people in life and death situations, and they don´t face the same problems devs face. And they tend to be more "self important" than devs.
- computer programming : oft-reported industry bias against age 40+ and active recruitment (especially by software companies) for 20-somethings.
I think this is rational. 20-somethings have the least to unlearn, so you can get them to do things your way instead of the unique independent ways an experienced person would.
Secondly, 20-somethings are much more easily abused with long hours and intangible or possible future rewards.
20-somethings are also really fun to work with. Sponges for knowledge and so much energy.
>only strong skills are a large enterprise storage system
Are you describing uploading data to and S3 bucket? Or maintaining tape decks? Depending on how to interpret this, this could be an advanced skill.
For context, I'm learning about how to build a Data Lake that supports a Feature Store for an ML platform. Feature Stores are relatively recent (4ish years?) and only make sense in Enterprises
I’m 45 and have never gotten more attention from recruiters, despite the fact I entered the job market during the height of the dot com era. My graduation date is clearly marked on all resumes in circulation, as is my experience showing my first internship all the way back in ‘96.
It’s not only the number of ops that hit my plate, but the sheer aggressiveness of the recruiters. Very often am I contacted repeatedly, sometimes up to 5 times, by a recruiter for an op. Many times it’s directly by the hiring manager, the director, cto, or even ceo of the company.
In fact, only in my 40s have most of the major tech companies reached out to set up interviews (Google, Facebook, Amazon, and Apple), and a ton of pre-IPO unicorns. During the pandemic I had the former CEO of Zelle personally interview for his new venture and Brian Acton personally reached out to schedule an interview for One Signal.
I’m just a principal dev who does React and Rails. Been a tech lead in a few startups, never held a title above that, never a de facto people manager and certainly not a director.
I remember the sheer terror I was feeling toward the top of the my 30s because of discussions like this on Hacker News. Had a taste of management in my early 30s and decided it wasn’t for me, and remember toying with ideas for a career switch because surely, I would be dead as a programmer soon. The exact opposite happened.
Most refer to specific aspects of my experience, some specifically referencing my current role (ie. they've read my LI, which also clearly shows my grad date)... some are spray and pray. Probably 80% of things that come my way are applicable to what I do both in skillset and title (Lead/principal/staff/director roles).
Does it matter? If there is some way that recruiters are filtering based on age, my age is clearly discernable.
At least some of these are auto-filled templates with scraped data -- I got one where "I was really impressed by your experience at ." -- yes, just a space and a period. Probably slightly modified from the defaults provided by a hiring CRM platform. You can tell the ones that really are different, because they mention something a scraper or AI wouldn't figure out.
Even if they're taking the spray-and-pray approach, it certainly doesn't look like they'd be filtering for age. To compare, I'm 43, not even a tech lead and I've received more recruiter contacts over last couple of years than the 20 years before. Many of them were even somewhat relevant to my work experience.
The key here is Principal. 40 plus is considered fine and good for Architects/Managers and people in leadership positions. Try to get a senior engineer or below job where you are expected to be grinding out code instead.
I was a senior at my last 4 roles - IOW, I was a Sr. dev turning 40, and didn't get another higher level role until turning 43.
But yes, I have that experience in my background. I had my first principal role back when I was 32 (but prior to switching away from .NET development) and 2 other lead roles in my 30s.
So we're just going to move the goal posts then? Yes, having desirable skills is a given.
We have a bunch of .NET devs (our BE is .NET) and the average age of these folks probably right around 40, because in general they're going to be older devs who do that.
About the same age as the one you are replying to, usually the best way to work around that is consulting, where you are expected to be business analyst, architect, devops and coder in one package.
Granted, not everyone enjoys doing it, and it comes with lots of politics as baggage as well.
During my last job hunt a little over three years ago, I encountered what I think was some subtle ageism or at least discrimination based on family status (lots of questions about my family life when interviewed by the CTO and CEO, ultimately turned down because they didn't think I had the energy/disposition to be devoted enough to the company to put in extra effort when needed).
I ultimately got a job at a better company anyway and probably dodged a bullet, but it's pretty naïve to think it doesn't happen sometimes, especially at startups or places that pride themselves on a "startup mentality."
Yeah, it is, but honestly what am I gonna do about it? :/ I suppose I could've reported them to... somebody? Sue them for a job I didn't even really want?
In retrospect I probably should've left a bad review on Glassdoor explaining what happened, but it was so long ago I just sorta forgot about it.
I (closer to 50) always straight up say I've got two young kids and that I partake actively in their upbringing. One of them with special needs, even.
For me that helps filter out workplaces that would not be a good fit for myself.
There are a number of workplaces where a good balance is actively supported! When needed, everyone will put in extra but the expectation and in fact reality is to keep things 9-5:30 as much as possible.
Legal: "we don't think you have the energy/disposition to be devoted enough to the company to put in extra effort when needed"
Honestly, I'm surprised they even gave a reason. Our HR department has an email template that we must use, which is something along the lines of "we picked someone else, but we'll keep your CV on file, in case anything else opens up". You don't have to give a reason, so if you do, you're only opening yourself up to liability.
Yeah honestly I was surprised too... it was a while ago, so I don't recall if I asked for the reason, or if they volunteered it.
Like I said, I personally see it as dodging a bullet. I probably didn't want to work in that kind of environment anyway. But there may be other people with different situations than mine who would've been rightly miffed by it.
I'm pretty privileged as things go, so I tend to not complain a lot about ageism and discrimination based on family status because there are a lot of folks who have it far worse than I do (even though I recognize it as a legit problem and feel like I've seen it firsthand). This company sorta tipped their hand without saying anything illegal.
> It's absolutely possible for a 25-year-old to be a more experienced, more technically competent, and more mature than a 40-year-old.
It's also absolutely possible for a pig in a jetpack to fly past your window. Many unusual things are possible, but that doesn't make them any less unusual. In the vast majority of cases, older developers will have more experience and be more mature than younger developers.
No I'm arguing against ageism. I'm over 35 myself.
I'm just realistic that having been alive a long time doesn't automatically infer wisdom like people think it does. Someone who's spent 20 years not really learning anything or bettering themselves can be behind someone who's spent five years working hard.
They said:
> at 40, I had a much deeper understanding of the tech, I understood of the whole business process and I had the maturity to deal with people in a productive way.
Understanding tech, business process, and maturity don't necessarily take a long time to learn. Someone can spend 20 years not bothering to learn these things, while someone who's worked 5 years can have mastered them.
Highly effective people can be young. Don't assume you'll have more of anything compared to them just because you've been around for longer.
I took the gist of the original post as saying they didn't agree with the original article and didn't think age was the defining factor of employment problems at 40. That, by developing and demonstrating relevant skills they hadn't found there to be any problems.
I took the quote as meaning that certain skills take time to master and it's impossible (which I took to be hyperbole) someone with less time would be able to master /all/ of the them; reinforcing their first point about how someone who is older should find it easier to find employment.
Yes, a 25 year old genius developer can be as good as a 40 year old average developer and better than a 40 year old subpar developer. However, geniuses are, by definition, extremely rare, so it should be self-evident that the heuristic is generally valid.
Getting closer to 50 here and finding value in looking after my health. Quit all alcohol nearly a year ago, kept my lifting steady and am now getting close to setting some life long PBs for strength. (Barbell Prescription, garage gym).
This has really helped ground me and keep my focus in tumultuous times.
I feel like my tech and ability to see the bigger picture is only getting better. And I still maintain the same child like joy of tech that I had when I opened my Vic 20 not too far away from 40 years ago.
But still, what is your added level in say Go over a 35 year old who does Go for 5 years already?
Wouldn't it have been better to just stick to one or two techs throughout your career?
Better in what way? Only in ways that make people old rather than ways that make people young. Here is a repeatable path to security.
And say I am only just as good as the newbie in go. Isn’t that fine? I am seeking the pleasures of learning and learning with other smart people, not trying to win a contest. My method to do that is find problems, without a recipe answer, for technology problems that my employers are facing. But the motivating goal is to learn new things and build new things.
> And say I am only just as good as the newbie in go. Isn’t that fine?
Depends on how expensive you are, what the market is like, how well you compensate in other areas (people skills, analytical thought etc) but all in all the market will prefer the 35 year old because our industry is somewhat shitty and ageist. It is what it is. However you will have a very strong network for having worked so many years so you can probably easily overcome this.
> I worked with someone my age who only strong skills are a large enterprise storage system. He is a dinosaur and his future is limited.
At 52, that can be a good move, if that enterprise system will be around somewhere for the next ten years. Remote work makes it an even safer bet. During that time, he can devote more attention to his family, community, and hobbies, instead of trying to make sure he is employable by the maximum number of businesses. You only get paid for one job, no matter how many you're prepared for.
"I worked with someone my age who only strong skills are a large enterprise storage system. He is a dinosaur and his future is limited. That's not his age, its the way he chose to build is CV."
I suppose everything is a choice. I have worked on tech that doesn't have a future because the company needs someone to fill those shitty positions. I naively believed the company when they talked about them taking care of employees and being able to make a career out of it.
Yea, don't do that. Being able to sell your story to other tech people why your past projects are fun, interesting and maybe hard makes life so much easier and for the most part makes working more fun too. That doesn't mean every moment has to be amazing and developing but if it rarely is you're painting yourself into a corner.
Still, despite ambitions and knowledge you are less employable in the eye of HR/Recruiters. They seek very specific set of current tech stack and very recent experience posessed, as well as familiarity of specific management styles just yesterday, for specific tasks. For cheap! On the bulk. Ability to push them around and lower tolerance to eat any bull*t fed to them by (potentially incompetent or clueless) management is also highly valued.
Ideally more senior emloyees worked in multitude of situations and team structure and project is better for productivity, they also have more even performance in long term, but hiring practice seems to be unideal.
Perhaps they have a shorter attention span in mind, promoting replaceablity over long term stability and predictability?
> I focused on learning new tech; Python, Go, Kubernetes, Cloud, etc.
OK, but it's also completely legitimate to just say, "I already know Python so now I just want to focus on building better and better things each year, not getting better at tech." And yet that won't make you employable, even though it's probably the ideal strategy as an entrepreneur and product creator.
The really interesting question is whether you and the other N guys replying claiming that they're enjoying good careers are an outlier or the typical case.
Based on the multitude of threads and articles about ageism posted on HN alone and what we know about ageism in general, I'd say it's the former, but I'd be interested to see if someone actually studied this.
There are many companies that don't want to hire people over 40. I applied to the same company with 2 identical profiles, in one I gave my real age and in one 10 years less, I got invited to an interview on one profile and rejected immediately on the other.
Even my company rejects experienced hires if the job description is not specifically mandating senior-level experience. I just hired one such person that is a bit over 50 years old, I had to fight HR on this.
OP should have had offers pouring in: "using and teaching Python for over 20 years, and designed its built-in set module, but nobody would hire me as a Python programmer when I was laid off by RStudio in February."
If OP can't get an offer(for Python!) then something is really wrong. Where? Possibly they could not get past some silly HR filter.
If you were a Python shop wouldn't you want to have an interview with OP would you?
There is an advice floating around HN that one should contribute meaningfully to some popular open source project and/or write a book about something -> leading to better career prospects.
The above might be helpful but clearly not sufficient. (I've seen good book authors still looking for job prospects)
>>I came across your resume in a Google web search. You seem to have an awesome expertise on Python. I would be glad if you can reply my email and let me know your interest and availability. Our client immediately needs a PYTHON Developers at its location in ***, NJ. Below are the job details. If interested and available, kindly fwd me your updated resume along with the expected rate and the availability.
Don't even get me started (just take a shufti through my posting history on this very site. You'll see this is a subject that has my attention).
> while the experience that comes with age is valued in fields like music, it counts against you in tech.
Yup. The Jurassic-scale disasters that are becoming increasingly common, these days, are evidence of unsteady hands at the wheel.
I'm not saying that older folks are better. In many cases, we can be overconservative and overcautious, but that isn't such a bad thing, when the stakes for a blowout are so high.
I have always felt that tech needs to follow the same model as every other damn industry since the start of history, which is to have experience work with youth. They balance each other out.
I feel that when one of them gets too much power, Bad Things Happen.
In my case, I was finally laid off, after a 27-year run at one of the world's marquee imaging companies (which I think was overbalanced by experience). I started looking around for more work, as I wasn't really up for retirement (which I was quite capable of doing).
I was absolutely shocked at how shabbily I was treated, and fairly quickly gave up the search.
I find it offensive, that companies are so self-destructive; especially smaller companies, where a top-shelf employee could "make or break" the company. I have a fairly unique confluence of skills that would have made a startup very happy (I've been ARCHITECTING and SHIPPING software, since my very first engineering project, in 1987. I am quite used to production engineering. I've been doing it my entire adult life. I've heard that could be useful, to some companies). I was also quite willing to work for a lot less money than most, as my retirement was set, and I was looking for work that interested me.
Instead, I was rather quickly told -in no uncertain terms- "Go away, old man. No one wants you."
I took the hint, and found some non-profit folks that were doing work I find interesting, and started working with them, for free.
You post this all the time. You did 27 years at one single company, as you point out so proudly and often. After a stint like that, anyone would be unhireable. It isn't your age, as so many others on this chain have pointed out. You didn't build your CV to be attractive to new employers at all, and when eventually that became relevant again, you were out of luck.
I read your posts whenever I see them, it's obvious you're quite bright. I really don't understand how you don't see this.
Why does doing 27 years at one company make someone unhireable? It's one thing if he used the same old tech for 27 years, but without that assumption, seems like ageism to say 27 years at one company is an obvious ground for disqualification.
After a thousand threads on why tech hiring is hard, I don't think I need to re-hash that getting signal from noise is complex and imperfect. Out of the two signals, "this person was successful at 8 different companies" versus "this person stuck in one place for almost three decades", which do you imagine is going to get hired?
It isn't ageism, again go read the rest of this thread. It's the nature of making yourself an attractive candidate. If you don't care to play the game, you can't pout and cry "ageism" when you lose the game.
> After a thousand threads on why tech hiring is hard, I don't think I need to re-hash that getting signal from noise is complex and imperfect. Out of the two signals, "this person was successful at 8 different companies" versus "this person stuck in one place for almost three decades", which do you imagine is going to get hired?
One can also take this as: "this person jumps jobs often, everything I invest in them will probably have not a good/long ROI" vs. "this person was a loyal employee that was so good he was kept for decades"
A few jumps surely do not hurt, are even good to get some different POVs and such, but if we get people that were barely one or two years at a company at max it always rings a few alarm bells.
But, either way its generalization, the reasons for why either situation happened are relevant to make a sensible decision.
I.e., the answer to "why switch so often?" or "why stuck for so long and why now?" are key.
> I.e., the answer to "why switch so often?" or "why stuck for so long and why now?" are key.
This is really the key.
As another anecdotal datapoint to add to this thread, I've held three SWE positions over the past four years and will be starting my fourth, at Google, next month. Naturally the recruiters and hiring managers asked about the short stints at each company, but given that my reasons for each departure were reasonable (company acquisition, COVID, and location), they didn't have any objections.
> Out of the two signals, "this person was successful at 8 different companies" versus "this person stuck in one place for almost three decades", which do you imagine is going to get hired?
Why is the assumption not the opposite?
"This person failed at 8 companies" vs "This person was success at one for almost three decades"?
Why is it a sign of success if you are at a company for a short stay before going to the next? If anything, I'd imagine that a short stay would be more likely related to getting PIPd or unable to get promoted/grow there.
Your counterpoint is valid only if reviewers are looking at the number of companies.
Resumes usually include the list of major achievements at that role.
It's the combination of the two that people look for.
Looking at just quantitative things like number of companies is terrible. Looking at the combination of qualitative and quantitative aspects of a CV/Resume are what make for an attractive candidate.
> You did 27 years at one single company, as you point out so proudly and often. After a stint like that, anyone would be unhireable.
Next time you hear someone complain about why programmers jump jobs ever 2 years, point them to this cynical and stereotyping comment.
In my opinion this is no different from saying "What, you didn't graduate from college? Well, obviously you are unhireable", but I bet 'Icathian would be much less likely to say that to a non college-educated programmer looking for work.
For some reason, stereotyping based on tenure, which correlates strongly to age, just seems to fly wild in our industry.
I said nothing about what is fair, or what should be.
I'm describing what is. Programmers jump jobs every 2-4 years (myself included) because it's the best way to reliably get good pay increases, and because staying more than 10 years at one company often makes it harder to get hired at the next place.
You can blame me for recognizing that all you want, but it's a pretty well-known truth of our industry. I want it to always be easy to find lucrative, interesting work, and I'm willing to play the game to keep it that way for myself. I'm not sure what about that you object to so strongly.
There are a lot of bad things about our industry, repeating the stereotypes that lead to them is still harmful. Which brings me to...
> I'm not sure what about that you object to so strongly.
Simple: If you were in a a position where you were screening resumes, I think you would rule out people with long tenures purely on the basis that the tenure was long.
I am saying that this amounts to age-based discrimination, and you should think about it rather than parroting the assertion "Obviously you're unhireable, you worked somewhere for 27 years". And even if you refuse to think about this, my hope is that other commenters will.
And maybe, just maybe next time they see a resume with 27 years of experience at one company, they will think "Wow, this person will bring an interesting point of view to the team – they have been through 5 times the tenure of an average VP and have seen the rise and fall of several projects. Let's hire them!"
If it makes you feel any better, I did the hiring manager thing for 2 years before deciding I couldn't stand it, and the average age of my team was 55. I did my bit to not exacerbate this situation.
My fervent goal is to stay an IC through retirement. Doing that successfully requires playing the game.
> I must say I am pleasantly surprised! Please accept my apologies, and an upvote.
I concur. I know that you're "just playing the game as set by the rule-makers."
I'm in an unusual position. I'm not looking for work (and, after a few years on my own, I couldn't be dragged into the rat race with a locomotive).
That means that I get to say things like "Oi guv! That bloke's starkers!" Won't make me popular, and probably won't change anyone's opinion, but I'll do it, anyway. It's my nature.
Honestly, as someone who reviews tons of resumes for my team, I wouldn't see 27 years at a company as bringing an interesting point of view by itself.
I'd look at what they've accomplished in those 27 years. This is no different than someone with 5 years or even 1.
If someone only has a couple notable things in 27 years , then I'm not sure what they're bringing to the table.
If someone has the same number of notable things in 5 years, then that speaks more to the level of work they're innovating at.
In short, it's really about the meaningfulness of what they've done during that time, relative to the tenure. Tenure alone is meaningless IMHO.
I've interviewed too many people who have careers longer than my life, who have basically just gotten by. I've also interviewed people who've done amazing things year on year.
The latter are the people I seek to build out the team. The former don't add much, unless they're really rock solid devs who've stayed in top of things. But if they're just alright? Then why wouldn't I hire someone more junior when they're giving me the same results, for cheaper, and are usually easier to mold and train?
Oh yeah...I'm a high school dropout with a GED, and some redneck tech school training.
I've managed to do OK, even with that. In fact, it has probably helped me to be much, much better at my job.
I call it "the Boy Named Sue" problem[0]. I have had to deal with so damn much adversity, in my career, that it has forced me to constantly deliver, and go "above and beyond," in everything I've done. I've looked up a lot of noses, and it does make me cranky, but it has also forced me to be pretty good at what I do. No one will take me at my word. I have to show them.
So since you are defending the practice, please explain what is it about spending your entire career at a single company that makes you unemployable anywhere else.
And please don't assume that that means never learning anything new during 27 years.
Can you name another career where holding one job too long makes you unemployable, and where people actually defend this?
It really depends on what those experiences were at the same employer. I'm not the OP and not in the same boat. But I've been at the same employer for more than 30 years.
It should depend on that, and perhaps to some degree it does. But in even the best case scenario, where every few years was brand new knowledge, you've still put the obstacle in your path of convincing new hiring managers of that when their default assumption may be otherwise.
You've added a degree of difficulty (we could quibble about how much of one but whatever) to the process that didn't need to be there.
Not proudly, but often. Be nice. I thought we were supposed to be nicer to each other here, than in other Internet venues, but I'm often wrong.
> You didn't build your CV to be attractive to new employers at all
I see things differently. Don't forget that I was a hiring manager for most of that time. My CV reflects what I would have considered to be a "dream employee" for most of that time. It is not one that current companies find attractive, and that's actually (IMNSHO) a real problem, in today's industry. In most other industries, it would have been a "We need to get this guy on board right now" kind of thing. In tech, it's "He spent all that time at one company? He must be terrible, and insecure."
I am quite aware that having spent 27 years at one company is actually considered a bad thing. I really do see how the industry works. I won't change my expectations to meet the new reality.
If no one wants me, then I'll do my own thing. I'm very grateful to have that option, and my heart goes out to the folks that don't have that option.
> After a stint like that, anyone would be unhireable
I've been with my current employer for 4 years, and all going well I'll stay with them until retirement (I'm almost 50 now, so another 15-odd years). The pay is good (for where I live), the work is varied and mostly interesting. It'd seem a bit crazy to jump ship just in case they take against me at some point in the future, no?
I think it would be in your case, but it is something of a gamble, isn't it. At some point I'll hit the job I want to (and think I have a good shot at) retiring from and probably try for it myself. I'm not really sure how that'll look for me.
Making that call at 50 is a lot different than making it in your early 30s, I would think?
> You post this all the time. You did 27 years at one single company, as you point out so proudly and often. After a stint like that, anyone would be unhireable
> In my case, I was finally laid off, after a 27-year run at one of the world's marquee imaging companies (which I think was overbalanced by experience). I started looking around for more work, as I wasn't really up for retirement (which I was quite capable of doing).
I understand that. I also have gotten advice to dye my hair.
I will do neither. That's dishonest.
If no one values me for the skills and experience I have, then I have no interest in working with them (not "for," "with." -A big problem, in today's working world, is the attitude that companies are doing people a favor by hiring them. If someone hires me, they don't get me as a servant. I've worked way too long and hard to be treated that way. Another problem, is that asking for simple, basic, human respect, is considered "arrogant").
I am very, very honest. This was actually a big plus, at my last company. It got me a seat at the "inner table" of a highly conservative Japanese corporation; something few Westerners ever experience.
I refuse to be dishonest. I won't hide my age, experience, or weaknesses. I also won't exaggerate. People often tell me that I'm exaggerating. Then, they take the time to look at my track record (which is very available -people like to lob insults before actually checking to see if they apply). Things get quiet, after that.
Do you think dying your hair is dishonest? I wear shoes with a bit of a lift because generally, at least in the west, taller men are treated a bit better in the workplace. Sure it's unfair, but it's certainly not going to change in my lifetime, so I happily play the game.
I don't see dying your hair as any different from wearing makeup or attractive clothes. Humans are social and visual creatures, we find it easier to trust other humans we like the appearance of.
To me, it is dishonest; if the reason is to convince potential employers that I'm younger than I actually am. I have my own standards of Personal Integrity. I won't project these standards onto others, but I feel that I need to adhere to them.
I'm also not particularly tall (5'6" -1.9m). I wear dorky shoes (at least, according to the fashionistas on HackerNews[0]).
> I have my own standards of Personal Integrity. I won't project these standards onto others, but I feel that I need to adhere to them.
I have to say that is quite well phrased.
I think that's a problem for those hiring; in itself. I see it when I ask people why they won't hire the Amish or Mennonite crew for some job they'd do well. It's not about the cost, there's no doubt the result will be better; it's not schedule... It's just "these people are odd" and don't have the proper attitude.
Dieing your hair in response to ageism is like running the coal-powered AC in response to global warming. It might be necessary in limited cases but in general is feedback that makes the problem worse.
> If no one values me for the skills and experience I have, then I have no interest in working with them
I generally take the same attitude.
You don't have to list everything on your resume. It's not dishonest to leave out experience that's no longer relevant. You also don't have to dye your hair, wear platform shoes, or get plastic surgery. (Although Converse was trying to push platform chucks when I ordered some new sneakers a few weeks ago.)
All your resume needs to do is make you appealing enough to get a callback. It doesn't have to list out every single detail.
But, I do need to point something out 20 years into my career: A lot of development shops don't know how to work with mature developers, nor are they budgeting to hire someone with 30+ years experience. The "people" challenge of onboarding into a team where I have more experience than my manager is often harder than the actual work.
> A lot of development shops don't know how to work with mature developers, nor are they budgeting to hire someone with 30+ years experience. The "people" challenge of onboarding into a team where I have more experience than my manager is often harder than the actual work.
Well, none of my attempts made it past the second screener, so I wouldn't know.
As far as "budgeting" goes...I was once told (by a recruiter), that I'd need to "ask for less," because I'm older.
I was already asking for peanuts, because I am not really interested in money, and was actually looking for the kind of place I could make a difference; where they often can't afford a lot of "top-shelf" talent. That's a trick I've always used in my career. I have worked for less, at places that interest me. It's still allowed me to get to a point where I don't need to work (I live frugally, avoid personal debt, and save like crazy).
I'm used to "making a difference." That may seem arrogant; but you haven't worked with me. I'm making quite a difference, right now. In fact, in the window behind this browser, I see that my latest TestFlight upload is done, and I'm about to make the team quite happy.
"I also have gotten advice to dye my hair." - sorry if this is a little off-topic, but, it strikes me how lucky us blokes are. That's about the most "appearance advice" we'll get in the workplace, while women feel pressurised to wear make-up at work, select their clothes super carefully etc. Maybe experiencing ageism might have a silver lining if it helps men empathise more with the kind of nonsense women go through daily in the workplace...
The kind of experience that ages well is operations and organizations i.e. knowing how to run the business, not technology. An advantage of having worked at many companies that can't be overstated is the exposure to many different ways of addressing myriad organizational and operational challenges in different business contexts in practice. My experience with technology 20 years ago is worthless. But my experience working in so many organizations and types of businesses is still extremely relevant -- humans don't change.
This is where working at a single company for 27 years works against you, it implies a lack of the kind of experience that makes older individuals uniquely valuable. There is little generally applicable skill around architecting and shipping software; the practical constraints on how those things can be done are often wildly different across companies and industries. Bright and capable people that have spent decades at a single company often struggle to effectively adapt their skills to an entirely different company context. There is practically a meme about Microsoft lifers only being able to work with other Microsoft lifers in Seattle, for example, because empirically it has tended to be true. What you don't have is 27 years of experience applying your technical skills across very different organizational and operational contexts, and that is valuable experience that only years can provide.
That isn't to say you can't, just that your experience doesn't provide much evidence of it. Anecdotally, as someone also getting up there in age, it has never been easier for me to find work.
It has been my experience that the mid-thirties are kind of a "golden window" for senior-level talent. Some people think of it as "older," but not that many.
We're old enough to have had the sharp edges worn away, but not yet old enough to make the management uncomfortable.
Once we start getting into the 40s (or, heaven forbid, the 50s), attitudes start changing -drastically. It's -sort of- OK to be a manager, but not a critical path engineer.
I will say that you seem to be an interesting chap, and I suspect that "the conventional rules" probably don't really apply to your work. Looks like fun.
For me, I like to make stuff that people use. I'm not particularly interested in changing the world (although I have, for a particular demographic -long story). I like getting my hands dirty, and Usability/Accessibility/Localization is a big deal. I like to put simple faces on complicated backends, and open tech to as many folks as possible. Most folks hate "computers," so I try to "decomputerize" tech. It's fun; especially when I see people using my work.
I consider myself to be more of a "craftsman," than a "scientist." It's a labor of Love; not just for my own satisfaction and work, but also for the users of my work. That's one reason I like working with an NPO. My whole family has been in Service, of one kind or another. My younger brother and I are the "redneck engineers." The rest of the family is a bit more Ivy League. My younger brother used to run group homes for kids that are wards of the state. He burned out on that, and became an engineer. He's worked at his [Fortune 20] company for over 20 years. It's a pretty big deal. He's self-taught, like me.
I was reading an article that said that age-compensating plastic surgery is very common in Silicon Valley, and that most patients prefer having the procedure done on a Friday, so they can heal over the weekend, and probably get away with it not being obvious when they get back to work.
New York's ageism problem (although many don't believe that it's a "problem," at all) is much more pronounced than SV (especially in Brooklyn). I'm wondering if a reason might be that NY has been a tech hub for a far shorter period of time, and we haven't had a "critical mass" of engineers "age out," yet.
I stopped going to (very good, and very energetic) NY meetups, a long time ago. It's abundantly clear that my just being there, is unnerving to a lot of folks. As I walk around the room, a big clear space automatically happens around me; like I'm in the eye of a hurricane. It's pretty obvious that I'm not usually a welcome addition to the milieux. And that's all before I even open my mouth. People don't seem actively hostile; but they avoid me. I don't get dirty looks. In fact, I don't seem to get eye contact at all.
Absolutely no one introduces themselves to me. I'm fairly affable, and have no problem reaching out to others. When I do that, we often have a good chat (although some, I can see, are looking for the exits).
Surprisingly, I often find that the people who avoid me the most, are the older members of the crowd.
That's interesting.
I can have some great chats with younger folks. I never try being "down with the kids," and I know better than to do an "OK boomer" thing. I'm a fairly good listener, and ask questions designed to encourage folks to talk about themselves, and their passions. That usually works well with younger folks.
Chris, I am approximately a decade younger than you, so in my 40s staring at 50. I started off my career at a pretty severe disadvantage, so it took off late. My golden age is now.
You are correct that my unique expertise affords me some significant advantages. For certain fascinating classes of computer science problem, I’m the person everyone calls. My true CV is far weirder than the public ones. But ironically, that isn’t what companies typically pay me for except tangentially. I mostly get paid to fix broken engineering organizations because apparently I am good at it and there is no version of “broken” I haven’t seen before. I still think of myself as an engineer, and remain extremely technical, but most days I am solving people and organization problems. I am valued more as an executive fixer than for my technical ability despite having some extremely unique technical capability. The market has made it abundantly clear which is more valuable.
I will always love writing code but it is more enjoyable as a (very serious) hobby and craft, albeit with an end product that has often been licensable. I’m not even sure this is a bad thing, since it allows a level of code quality that would never happen in a commercial environment.
FWIW, I’ve always been able to get on with young people and old people, whatever that meant for whatever age I was. I genuinely don’t classify people that way, I am more interested in their experience and knowledge. Especially for engineers, if you are doing cool shit age doesn’t matter.
I'm used to dealing with folks across pretty much all ages. I have an "eclectic" social circle that includes (but not limited to) kids still in high school, bikers, ex-cons, scientists, bankers, retirees, and CEOs.
380 comments
[ 3.7 ms ] story [ 290 ms ] threadWhat is this referring to?
Anyway, the usual response to this topic on here is someone in their 60s talking about how they’re still going so you should suck it up and this problem isn’t real.
Best skill is to manage your work time well and set boundaries. Working overtime is a sign of not having the right structures in place, and being disciplined about those boundaries is a force multiplier - it'll force you to be rigorous about what's valuable. You can make up for the lack of discipline by working overtime to an extent, but it's less effective.
[Your current company] doesn't matter. Your family matters 10000 times more. Dont expect to grow in your company. As a 30 year old there are TONS of companies and startups looking for you. In fact now that you dont need a job is a good time to comb the market and apply to a couple of them. That way you get some experience in the current hiring process, you tune your "value" as a professional and you can ask for crazy money (knowing that if you ask for 2X your current salary plus WFH, if a company gives it to you, you score, otherwise you are cool on your job).
My 30 to 40s were amazing professional years. I was in 3 startups and grew 2 of them from the ground up. That also helped me grow myself to where I'm now.
I did apply to one, but never heard back. It was about 2x salary. It even seemed interesting - Android dev for a medical device startup. I guess my Android skills weren't advanced enough (I just have a couple very simple apps).
It has nothing to do with age. Child prodigies can burn out at 20 because they are suffocated with work.
This feels like a category error.
https://news.ycombinator.com/item?id=28294734
Essentially I think this is hopefully a temporary effect of the doubling of programmers every five years for the past twenty plus years. I expect this to level out and thus shift the ratio in favour of older developers.
See this all the time on HN. Something hasn't had a PR in 2 months, must be dead! That uses React, why not switch to Vue!? Blah, blah.
Do we have any better sources than a small survey of tech press articles?
I always feel like ageism in tech articles are borderline clickbait: They aim to induce outrage by implying that ageism is rampant in the tech industry but the best we can do for evidence is a few anecdotes and, in this case, a survey of other tech press articles.
Ageism is a thing in the software industry. However, every company I’ve worked for that has had an ageism problem has, not coincidentally, been a terrible place to work with long hours, unreasonable demands, and bad management. Ageism is the perfect tool to select for hires who are too inexperienced to recognize that the situation is bad.
Most of the good companies I’ve worked for have had a broad distribution of ages. Again, not by coincidence, but because experienced developers settle in to roles at companies that are reasonable and treat people well.
That's new in Python 3 (or maybe 2.7). When sets where first added to Python it was a module you imported.
That's a another downside of being an old programmer. Changes that happened 'very recently' also happened before many of your colleagues started programming :)
I don't think I've been managing my career particularly well (15 years in and 5 jobs), and I've avoided management as best I can, but it doesn't seem to be slowing down. Looking at my peers, there are plenty of people 10+ years older than me in IC positions.
I'm curious what the difference is. Is it 40 and only one job? Industry or programming language focus? Location?
That is of course the crux. If you're the person that knows how the old stuff works (because you where there when it was the new hotness), you risk being responsible for the old stuff, while the new guy they just hired gets to work on the greenfield Rust project they just started. Had a friend of the family who spent his entire career at a Fortune 500 company. Started programming their back office mainframe systems in the 80s and spent the rest of his career working on those same systems. He knew those systems back to front and was revered as the local mainframe guru. 2002 he lost his job when the company decided to retire that old system and move on to something else. He could not get hired anywhere and ended up having to take a job a petrol station for while.
The problem is that the state of the art in programming is whatever is shiny and new and often unnecessary. Lots of employers are hiring for Kubernetes experience when they absolutely do not have enough demand for their services to justify messing around with Kubernetes, but it doesn't matter. They also don't have the patience and depth to bother listening to some old person explain in detail why Kubernetes is the wrong tool for them and a waste of resources.
Corporate programming has become all about idols and mystery such that Perl has been cast out and Kubernetes is pure awesome no matter how irrelevant. As long as some old person can suck up to confused young people about what counts as cool code and frameworks then they might count as up to date with the current state of the art. And with this the unfortunate reality emerges that for older and experienced contributors starting a company is becoming as easy or easier than actually getting a job.
On top of that we have weak seniority ranks. Products and tools are not developed as good as they could be. Topics like security still show that honing products and skills are needed, but this is not happening when we don't build a layer of experts that still want to program and dig into these problems.
Excellence comes with experience and that is only developing over time with making the mistakes and fixing them.
I have no doubt that when these people were actually still coding, they could have answered my questions in their sleep. Quitting coding for engineering management really does one a disservice IMO. I’ve also had the pleasure of working with people with decades of experience who never quit coding even as senior managers and their level of competence and productivity is astounding.
But for dudes that are coding though, it's cool to see how 'I have solved this problem 100 times already' comes through in solving a problem sometimes.
https://charity.wtf/2017/05/11/the-engineer-manager-pendulum...
https://charity.wtf/2019/01/04/engineering-management-the-pe...
Perhaps some shops give a light meeting load. But “manager code” has a stigma for a reason.
When hiring, these people are given coding tests just as a pulse check to make sure they can actually code, since so many manager-level devs have apparently lost that ability.
I think there is a disconnect between manager-level devs who expect a glorified project manager position with zero coding requirements (and are thus insulted and shocked and assume it’s ageism when they’re given coding tests they cannot pass) and companies that expect their principals to hack on code until retirement. And while blatant ageism is clearly a problem in the industry, I’d bet that at least some of it stems from this disconnect.
I was previously a manager for my team at my previous company. However I got to both manage, and continue developing.
After switching companies, I've been offered management positions multiple times. However the reality is that at a FAANG, you rarely see managers who get time on the box anymore.
I know a lot of managers who are happy to not split the time between management and dev work, and power to them. However I don't want to risk the atrophy of skills.
When I interviewed here, the biggest concern most people had in my interview panel was "you've been managing. Can you still dev in a non management role?"
Frankly that's how a lot of the industry is. Managers don't get the time to dev. Many like that aspect, but if you're planning to leave, well good luck because you won't be able to hold your own against the people you managed when vying for a non managerial role.
I've seen decided my best path is to be an individual contributor who has more weight. Effectively a lead (currently) or principal dev. It's the closest I can get to both ends of the spectrum.
Lots of people leave management roles and try and apply for IC roles at other companies. It's also really difficult to go from management at one company to management at another for many people.
I went to 6 interviews. Every time, I was the oldest at the table, sometimes by 10 years.
The music always went the same... "We need experience, you have a lot of it", 2 weeks later "You don't know React like we do". Best one was "you didn't use an env variable here in the front end".
I've been building the web since 1999. I'm 40. I got a job in a large company, much better pay, WFH most days, predictable timelines.
(after some discussion she was hired and everyone was happy)
Of course, I’m well aware I’m speaking purely im the context of a web app developer.
Both can be true at the same time, and in my experience often are.
(Cute blonde recruiter / bearded hipster recruiter)
with another opportunity to
(get crucified at Amazon / work in the shady industry of sports betting / feed the cancer that we call IoT / drop fire on people in the name of defending America)
Is the experience generic (e.g. I'm a Python guru and Guido knows me on a first-name basis), or specific (e.g. I've spent 25 years writing Python and web interfaces for high speed factory sorting machines)?
The latter makes you highly employable. The former means you're just going to be an expensive pain in the ass.
But doing anything else more historically understood as 'normal software' requires experience.
I consider anyone with < 2 years experience as an 'apprentice', who, without guidance will probably only cause damage.
After 5 years, you have someone who can competently do something in a specific area, but may not be particularly well rounded.
Looking back at my own career, writing embedded C++ fresh out of school, I can barely believe they let me do it. I don't think I would have hired me. I'm grateful.
There's enough thinking and experience required for most kinds of software the that the intense dynamism is probably overplayed. What you want is a team that consistently moves the ball forward, day by day, i.e. it's a marathon not a sprint.
It strains me to understand how Senior Devs would be undervalued on this context. I can see 22 year old founders having no intuition for this, but beyond that it's odd. My biggest worry with older Engineers would be that they'd be too expensive.
They explicitly searched more mature developers, because of several failed projects with large over spending the past years. Management had enough of it, and now wants a more experienced dev team.
And it works quit well I must say, code quality is very high and we make our deadlines. Our product is stable and atmosphere in the office is great actually. Not much stress here, because we don't spend months building some never to be used generic-multipurpose-framework and we don't jump into every new technology which comes around..
Not hiring experienced developers is a big mistake! :)
The amount of money they happily pay for us is crazy. We work along FTEs in all these companies for years who make a fraction of what we do. Companies take a diverse approach, stringing along FTEs under the auspices of being a special FTE with a career ahead of them at the company, and they hire a drove of contractors (permenantly) that cost twice as much and who are already wise to the FTE/career half-truth.
We get paid for every hour worked and are restricted to 40hours...at twice the rate of an FTE.
But that’s also kind of expected. As a senior developer, I can code faster and better than our junior devs but more importantly I can teach them to be better by reviewing their code. As I get older I am spending less time coding myself and more time reviewing others code.
A 40 year old developer is going to be telling stories of their first gig going through code printed out on paper reviewing it for a y2k bug… when I wouldn’t be surprised if 99% of this years college graduates never heard of y2k.
I'm ~40 with ~15 years of dev experience and 4 of management experience. I last year I decided to return to IC dev work and started applying for full-stack dev roles.
After two months and not getting few responses to applications, I put my resume in front of my tech recruiter friend:
"You sound ancient. Delete the first 10 years of your work history and take the date off your CS degree."
Whaaaat? I was incredulous at first, but eventually did as he said.
It would seem he was right though. I started getting significantly more responses to applications and inquiries from recruiters on LinkedIn.
Honestly, when I'm interviewing candidates, the only time I'm interested in their education section is:
- when they are fairly green (interns, juniors) because they don't have much experience yet
- when they keep bringing up "I did this in college" and I need to see how long ago that was to frame the rest of my questions
Anyone with a few years and an accomplished resume should strip their education out unless it's meaningful in some way.
At 40, I've done some of the best work I've ever done and my pay has been better than ever. I'm 52 now and the trend has only gotten better.
Why? Its because at 40, I had a much deeper understanding of the tech, I understood of the whole business process and I had the maturity to deal with people in a productive way. You won't find all of those in a 25 year old developer.
The only way that age becomes a detriment is if you do not grow. I worked with someone my age who only strong skills are a large enterprise storage system. He is a dinosaur and his future is limited. That's not his age, its the way he chose to build is CV.
I focused on learning new tech; Python, Go, Kubernetes, Cloud, etc. I've also spend a lot of time learning the business aspects of my industry and I've learned to be less of a jerk to people and how to communicate. At 52, I have recruiters contact me all the time.
Age is just number guys. Stay current, keep learning and stay strong.
Ahhhhhhhhhhhh..............
But that bit is so hard !
:-)
0: https://letterstoanewdeveloper.com/
1st, you need to help them get the RCA on why this question, and what context (that isn't often brought up). Its often that framing the question in context elucidates the actual problem they are working on solving, and they are seeing a misfit in concepts with the solution you've gone over with them. This is one (of many) areas where being a senior (experienced) dev/manager/leader is so critical in developing the less senior folks.
2nd, curation of notes, experiences, techniques is absolutely critical for team capability growth. Capture the problems, explain the use case/back story, explain the problems in explicit detail, explain the thought processes around the solution, and the solution. Cut-n-paste examples help. I did this when I ran my company, and found that it was quite helpful to the team. And they followed the example, and documented their own efforts.
Please don't be snide or dismissive with the less experienced. One of the reasons I see many orgs hire older/senior folks is to provide a calming, thoughtful, intentional influence on other team members.
As others have pointed out here, you need to continuously grow, learn new skills, add new capability. This should be a given. I don't want to bring "lifers" (people who hide in a company, doing only one thing, never interested in developing). I want to bring curious, intelligent people, with capability, and experience. Or if lacking experience, then a strong attitude of wanting to get their hands dirty.
Age doesn't factor into this.
We had a build prerequisite check that output "error: package xxx is out of date, run sudo apt upgrade - see wiki.local/XXX for more details"
They still copied the error to me and asked what to do. I said follow the instructions in the message. They said cool thanks and did so.
Edit: just thinking out loud here. These error messages are equivalent to a random passerby without any skin in the game saying “oh just run this command” — how would one trust them when their job is on the line? I can think of a few common approaches: - “oh just run this command because paragraph 1.2.3 in the universal code we all agreed to says so” (easy to confirm) - “oh just run this command because senior engineer X said it’s safe” (assuming you believe that they did say that) So maybe the error messages should include some equivalent of those.
I need a punch bag urgently...
What's the quote? "Every year I get older, but the junior devs stay the same age."
That's when I knew I couldn't teach undergrads.
Master your understanding of the topic.
Master your ability to communicate the topic.
Optimize your explanation to be thoroughly complete and time effective.
Is there a nuance to this I’m missing? If my professor suddenly decided to lie down in front of the class I would not casualy amble up and ask a question, I’d be more likely to call an ambulance or burst out laughing.
One of the senior devs needs to handle onboarding new people and communicating the ideas of the architects and seniors over and over again to juniors. This is tiresome and boring to some. You need patience and empathy. It can be fun though as you get to meet lots of people and help them when they need it most. Most importantly you give the other seniors the time to work, without them getting involved in yeah just "make clean build" that away type issues.
I actually like the role and if the team doesn't have too much churn, you're just another senior dev.
Even better, make them write it, and you just review it. It'll help them learn faster.
If you have a junior who already understand problem X, ask them to explain it to someone else too. It'll help solidify the knowledge, and at the same time offload you too.
Take my comment as wisdom that came with age and experience, if you will :). I don't think the above would have been my first thought 10 or 15 years back.
If you're having the same communication problem with multiple people, then I'm afraid that's you not them.
Though I do get the frustration. I had similar with one of my juniors, and it took me ages to work out that his learning style didn't match with my teaching style. I ended up having to go right back to basics and walk him through everything painstakingly slowly.
There are people with such interesting questions I am happy to hear them and talk them they even from three jobs ago. I cultivate them, as these questions extend my detailed knowledge farther than it otherwise would extend.
Am I being uncharitable to question if that’s ageism?
Opposite ageism is also real, this one is a proof of it.
But in the current context (of employment), ageism usually refers to discrimination against older people.
For example, the main U.S. federal law on age discrimination:
https://www.eeoc.gov/age-discrimination
> * It is not illegal for an employer or other covered entity to favor an older worker over a younger one, even if both workers are age 40 or older.*
Sure, some left expecting to find another job, but remained continuously unemployed.
I've personally known four homeless individuals in my life. Two were Programmers.
I have never seen an industry that just thinks employees are not worth paying when they hit 50.
And yes--I'm aware of the older high paid employee that's the first to go in a corporation. These guys I knew were not those guys. They were just enthusiastic employees, whom thought they were doing a good job.
There has been research about this as well under the term https://en.wikipedia.org/wiki/Neuroplasticity. Might be interesting to look at.
My understanding is that you are exactly right. It seems to be common that we tend to stop learning and pushing ourselves, get comfortable or maybe even afraid. To each his own, but I think it is more fun and fruitful to keep at it.
Thank you for sharing your experience.
It is a struggle to continue learning at this age. But it is worth it. Being a grumpy old fart sucks all the joy out of life.
Hell, I’m only 33 and when asked today what I currently want to learn, had to seriously consider that I didn’t want to learn anything new in particular.
It just so happens that a good chunk of people tend to stop learning and pushing themselves for what ever reason. But if you keep at it, or get back to it, your brain adapts over time and becomes more flexible to to speak.
And by "learning" they mean things that are just slightly outside of your comfort zone.
Anecdotally, people who do that for a very long time, tend to be really smart and interesting I found. It's such a wonderful thing.
A life of constant curiosity and willingness to tolerate the pains of learning is a lifetime of childlike awe and playfulness.
As someone a few years north of 40 and recently went looking for a new job, I can identify with much of the article. Although for me, in the market I’m in, I kinda felt the pay for a ‘senior dev’ didn’t really cut it either. The whole pay structure is for younger folks and veterans have a hard job finding work.
SV has sort of broken the job search, especially for more senior people. It's not just JR/SR anymore, it's some weird mashup of: Staff, Sr Staff, Principal, Level 3-5, Distinguished... Every company out there is pretending they are a FAANG when hiring, asking for 4-6 hours of your time. I'm working full time with 2 young kids. It's a nightmare.
The blog post isn't about self-reported cognitive ability getting stronger (or not declining). It's about the job marketplace.
Maybe it's instructive to compare/contrast different professional careers that depend on mental abilities and how age affects marketability:
- computer programming : oft-reported industry bias against age 40+ and active recruitment (especially by software companies) for 20-somethings.
- corporate executive manager (e.g. CEO, COO, CFO, etc) : age 40+ is typically the target hire age. Being a younger 20-something actually works against being hired for these roles. (To be CEO at age 20, you'd have to be the founder of a startup.)
- surgeon : age 40+ doesn't seem to bother patients. They may rather have a 55-year old do their heart bypass rather than a young 30-year old just out of residency.
Why is experience valued for outside hires of CEOs but not as much for programmers? In other words, a 55-year old programmer would have 35 more years of experience than a 20-year old but that "extra 35 years of programming" doesn't seem to be valued as much as the "extra 35 years of managing" that a 55-year CEO candidate has. Why?
I have pet theories on that but I'd rather hear what others think.
I'll bite – I think it is because instead of licensing and regulating our profession like surgeons, we have opened it up to creativity and inclusion like artists or fashion designers.
As a result, programming job trends are far more similar to fashion or art than medicine. You always want the clothes from the hip new designer, but a few stalwarts (Yves Saint Laurent, Ralph Lauren, etc.) are evergreen and always in demand. They even end up influencing the larger trends of fashion. If you ask Ralph Lauren how things are going, he'll say "I'm 81 and I have no problems finding work!". You might even have individual designers who are discovered at 81 and become a hit. But that is not the condition for the average fashion designer who is 81.
Similarly, you'll hear from plenty of older programmers for whom things have worked out as they get older. My hypothesis is that they are also the ones who have kept up with changing fashions and paradigms.
My clothes are either no name, or old old companies like Carhartt, levis, Wrangler, Dickies, etc...
You are wearing designer clothes! Just by a designer from 1873 [1]. The equivalent programmer would be John von Neumann, maybe.
--------------------
[1] https://en.wikipedia.org/wiki/Levi_Strauss
> ...but a few stalwarts (Yves Saint Laurent, Ralph Lauren, etc.) are evergreen and always in demand. They even end up influencing the larger trends of fashion.
The "old" brands you are wearing are all the result of stalwart designers from the past.
The average customer doesn't give a shit about the hot new thing, be it fashion or web framework, but the customers aren't the ones hiring talent and shaping the industry.
It tends to be easier to advocate for a past solution than an unproven one.
I was going to suggest that the nature of software moves much faster than many other disciplines, even other STEM ones. At least in industry*, a mechanical engineer isn't as likely to have to un-learn and re-learn like a software engineer. This tends to make those industries a bit more slow moving which, in turn, makes experience in the traditional ways of doing things a bit more valuable.
I know NCEES toyed with the idea of a software engineer professional license, but it died on the vine because so few people took it up. I suspect the outcome would have been different if industry or regulation made it a priority, like it is for civil engineers.
>My hypothesis is that they are also the ones who have kept up with changing fashions and paradigms.*
This is my thought as well, but I think a lot of bias comes because of other life events. The SWEs I knew who felt left out just didn't have enough bandwidth to spend extra hours each week learning when they had many of the other commitments that generally start creeping in in one's 30s onward.
*(In academia, there's a bit more emphasis on 'state-of-the-art', I presume).
And if you change your career late in life, you are even more screwed by these kinds of standards. A 40 or 45 year old can’t just get into the industry via an entry level position. Even if they would have a 20 year career ahead of them.
And it is not like my work from 1990-2000 wasn't valuable. I worked on a complex large scale analytics system in the early 90's and migrated to large scale web-based applications in the later half of the decade. I'm proud of that work and have some interesting lessons and stories from that time period, but they are telltale of my age and were working against me.
I also strategically drop items from my resume that I no longer wish to touch. Cuts down on recruiter spam significantly in the process.
Senior developer positions are more common now, in part from title inflation but also the rise of more complex online interactions and businesses. By cutting the senior bit out of your resume, you no longer look overqualified for the more numerous junior / "regular" developer positions.
While your work from the 90's is likely very interesting, for many companies the soft skills and lessons learned will be more applicable to whatever role they have available, best included as a summary.
I promise that most hiring managers aren't going to read a 10 page resume, or even a 4 page one. 9 times out of 10, they just want to answer a simple question: should the team take time to find out more about this candidate? If the first page of your resume doesn't answer that, it likely won't make the cut.
On a final note, "30 years experience" really isn't a great sign. I have indeed worked with the type of person who has basically had the same experience over and over for 30 years, not growing, learning new technical or leadership skills, etc. That is totally fine for many positions, but it is mark against them for many others.
Maybe they were not under-performers 10-15 or 20 years ago, but if someone gives 20 pages of resume and most of it happened in 90's I would not be interested. Because it is quite easy to see such person is hanging onto his past performance like Al Bundy to his 4 touchdowns in high school.
If someone would be 50yrs old or even 60 but his last couple of years are taking most of resume and they did interesting work at that age I would be curious to talk to such person.
It is not that they would need to have latest frameworks or libraries listed on the CV. It is more about if they did meaningful work in last year and not that they did meaningful work 20 years ago and now they are just hanging around doing whatever.
But then under performers are interviewing more so they cast bad impression on others that are their age/ethnicity whatever.
Just like the saying good developers are not on the market for long and one that make good impression are hired quickly.
And of course it's BS that this is necessary. But until the entire culture shifts I'll just keep doing what I'm doing and then telling people how old I am after I've signed the offer.
"surgeon" is limited by the AMA cartel's supply controls, and requires 10 years more training than a programmer, so subtract 10 from effective age in job.
Experience is valued for leaders (managers), which OP refuses to do. Experience is valued for careers where the work is the same year after year, which programming is not. So much of a 40year olds knowledge is useless because fashions have changed. Wisdom is useful in managers, but individual contributors need continually upating deep detailed knowledge and constant analysis and Nobel problem solving, which favors the youngish. It's more like chess than medicine or law.
OP also gives hints that he has a bad attitude that may shine through in his interviewing and networking. He also didn't give any hint as to how many jobs he applied for and where.
It’s plainly false for all sorts of reasons, but that’s the source of the disparity.
I think the implicit assumption has it the wrong way around. It seems like the industry takes about 30 years to catch up with the mathematicians who had discovered the solution to our problems.
We create this problem for ourselves. Some hot new web framework rediscovers the continuation monad and treats it as a novel invention. Giving it a slapping new name, a slick logo, and talks at the hottest industry events. A whole generation of developers learn to talk the talk, walk the walk, and hit a wall. The next framework comes along and suddenly they're, "too out of fashion."
Computing hasn't changed radically in a long time and certainly not programming.
This might depend on what you consider radical.
Web forms vs MVC vs react + restful API are fairly different coding paradigms.
Trying to create a windows service in net framework 2.0 is totally different than net core 5.
Or using SQLDataReader to read executed sql strings vs entity framework?
Even just dependency injection and scope definitions (transient, singleton, scoped) is very basic yet is something I’ve seen older developers tripping over. At least it’s an easy to identify run time error as it validates the container when running in development.
I’m not saying older developers are bad, but developers with the mindset that coding now is the same as coding 20 years ago are either using a language that never developed itself or are going to stumble over the changes that did occur.
You're still trying to accomplish the same goals, and there are only so many building blocks, so yes the big picture stays roughly the same and its only the details that change, but the devil is in those details. I find working with people who are not only ignorant of the details, but proud to recognize that they are "just" details, to be a nightmare.
I'm also directly involved in hiring for my team, having helped add 15 members over the last year, working directly w/ the director to review all resumes, handling maybe 30% of the screens, and usually the veto vote. We've interviewed a number of engineers in their 40s and 50s.
Experience is great and we're always welcoming of older devs... but there is a caveat. If that experience is tempered by a somewhat pessimistic attitude, which is often the case, there is rarely a chance to move forward. It's not being old - it's being worn out.
AFA the resumes of older devs, we often cut them out because they're an objectively terrible, wall of text mess that goes on for 4+ pages. Like 2/3 of the time this is the case.
WTF would you want to hire someone who poisons the well? It doesn't matter what the job/industry is, in what situation would that be remotely desirable?
It's good to discuss the pluses and minuses of an approach, we encourage this in our architecture section of the interview loop and during the initial screen when discussing line items in the resumes.
It's having a general negative attitude... bad mouthing past employers, being negative to a tech stack (and literally not couching it with any reasoning what-soever when we try to dig in), being negative to past arch decisions by co-workers without providing what are better solutions, things like that. Sometimes it's implied, sometimes it's more direct, but it there is a distinct lack of social intelligence that seems to happen more w/ older candidates that just suggests someone is burnt out. Wisdom should bring skill, not attitude.
Forest from the trees here. You pay someone to bring value to the team. That is not valuable to anyone. We're not running charities.
But this is specifically an issue more prevalent in older candidates, and is in large part the reason for a pass. We pass on younger candidates as well for this reason, but most prevalently for skill.
"If they can’t list the bad as well as good about some tech, they probably don’t really understand it."
I literally just said we consider this a positive and that we specifically dig in for this. It seems like you're willfully misinterpreting the message here, which is underscoring the point I'm actually making.
Seriously, don't be that person.
If presented with a difficult problem, there are people that go "nah, that can't be done, here's a long list of reasons why".
There are also people that go "That's going to be difficult, but maybe we can try A, B or C and I recall reading about this cool new tech that could perhaps help"
Be open to change and open to accepting that new things could be good and interesting.
I'm 43. Hiring engineers. Working with some 50+ engineers that are the absolute best I've ever worked with.
And a problem is that hiring managers, but especially recruiters are often relatively young, and thus biased towards people closer to their own age.
Years ago i was at a coffee shop and overheard a conversation between a college student and what had to have been an assigned mentor. This guy was going on and on about the very worst of his experiences in his career yet, in a weird way, bragging about them at the same. This poor kid was writing every word down in a notebook she had. He got up to the restroom and i walked over and politely told her this guy is only filling her head with poison and to run as far and as fast away from them as possible. She got up and left.
Beating into the head of an aspiring climber the details of every injury/death disillusioning them of even an attempt is full stop unacceptable.
As for resumes, I personally don't get the page limit, since I love long resumes with detail when I'm evaluating engineers, but understand the marketplace absolutely hates them. I don't know if it is HR or auto pre-filters or the hiring managers, but it doesn't matter. All I know is that when looking for a job most recently, I had a 3+ page resume and was getting some, but not many, hits. Then, as an experiment, I trimmed it down to a single page, making it ridiculously thin in my judgement, ran it through the various sites that judge the resume based on keywords, and came up with a custom resume (lightly so) for each posting. I suddenly jumped up to a 75%+ call back rate.
Keep your resume to 1 page, cut out the details on the old jobs unless it is really interesting, and basically just list the tech you know.
Detail is great but concision is greater. The resume is a marketing vehicle and it should be well honed. We can dig into what someone knows during the half dozen hours we spend interviewing them.
I´ll use myself as an example.
I started coding professionally at 23 (I´m 43). For years I pushed myself to be the best coder I could. At 35 I got laid-off. After that I just got sucky jobs were I´m treated like they have me there as a favor (and I work with the latest, and I´m, even with the pessimism, a top performer).
A coworker of mine that thought that coding was a losers job, coded for some months and went to work as a B.A and later as a PM, nowadays is an engineering manager which earns way more than me and is treated way way better. His whole programming experience is an 8-month part time stint with Winforms. And sadly he is not the exception...
In most places devs are being had.
If it's an issue w/ passing interviews at better companies, interviewing unto itself is a skill that should be regularly honed.
When I was a younger engineer I was stuck in a job that was unsatisfying for about 5 years... every 1.5 years or so I would interview w/ 3-5 positions, usually one or two would be close to an offer but I ended up empty-handed, would get deflated and give up.
Over the last decade I've taken the job search much more seriously, usually interviewing at 15-20 companies so I can end up w/ 3-5 offers to choose from. Yes, it's very time consuming (probably some 60-70 hours of my time over 5-6 weeks), but the quality of the companies I've worked at has been consequently more satisfying.
That system worked well during WW2 and postwar America. Someone who was a manager at an airplane factory could move to another company and be a manager at a washing machine factory.
While it is true that some management and people skills can transfer between industries, the big problem with Taylorism in tech is that the skillset needed to make the right management decision is orthogonal to the skillset required to get into a traditional executive role. Andy Grove, from Intel, was very successful at adopting a new management framework for this scenario as described in his book "High Output Management"
Not everyone is as a good of a manager as Grove, so you still see a lot of managers following Taylorism hierarchy. And that requires that engineers assume the lowest level of the system and accept that their "managers" are qualified to make decisions. Young people without much exposure to the business side of things are much more likely to accept these positions. Managers are afraid of hiring someone 40+, who may know both the tech side and business side of things and be aware of management mistakes due to the manager's lack of technical expertise.
Seen from this angle, the ageism seems to be an unsurprising outcome of the relatively informal qualification structure in software tech: apparently opportunity for all cannot come without a bit of stigmatization for those who refuse to strive for it.
C'mon! You don't expect someone here to have actually read the story.
He didn't even get the irony of the title (Usually the expression goes the other way, i.e., "50 is the new 40") which means he didn't even read the title too well, either.
Also, age is not experience. Age is usually an ingredient to experience (though some make use of less age than others to gain experience). But in and of itself, it does not create useful experience (maybe wisdom is the word we’re looking for here). I’ve worked with many older engineers who hadn’t gained useful experience. They’re still making the same mistakes they did years ago. And I’ve worked with younger engineers who I can tell are going to be old dinosaurs from the get go. They like the high paying career and the problem solving aspect, but the desire to evolve and improve their game play just isn’t there.
In my experience, it’s that younger devs are cheaper, much cheaper, than older devs. Most software development is easy enough that you don’t need someone with 20 years experience. I can hire 2 or 3 people for the same price. There’s always a budget for resources, and that budget is usually as small as it needs to be. Web dev, CRUD apps, mobile apps are the norm, not Facebook scale. The tools are mature enough that a 20-25 year old can do the development, and their salary expectations are much lower.
I hear all the time from fellow developers how important we are. We get a lot inside jokes how non-devs don't understand things and all the self importance of devs that comes with it.
I have a friend that is hanging a lot out with musicians/artists where they do the same thing as devs - thinking they are important.
While developers earn more than musicians - a lot of musicians are just menial workers performing what they are told - coding is still menial work to be performed. So it is implementing other people ideas or they can just get another violinist.
Surgeon while is quite physical and menial, everyone agrees it is occupation that deals with life and death - most developers are nowhere close to such responsibility.
I think this is rational. 20-somethings have the least to unlearn, so you can get them to do things your way instead of the unique independent ways an experienced person would.
Secondly, 20-somethings are much more easily abused with long hours and intangible or possible future rewards.
20-somethings are also really fun to work with. Sponges for knowledge and so much energy.
Are you describing uploading data to and S3 bucket? Or maintaining tape decks? Depending on how to interpret this, this could be an advanced skill.
For context, I'm learning about how to build a Data Lake that supports a Feature Store for an ML platform. Feature Stores are relatively recent (4ish years?) and only make sense in Enterprises
In fact, only in my 40s have most of the major tech companies reached out to set up interviews (Google, Facebook, Amazon, and Apple), and a ton of pre-IPO unicorns. During the pandemic I had the former CEO of Zelle personally interview for his new venture and Brian Acton personally reached out to schedule an interview for One Signal.
I’m just a principal dev who does React and Rails. Been a tech lead in a few startups, never held a title above that, never a de facto people manager and certainly not a director.
I remember the sheer terror I was feeling toward the top of the my 30s because of discussions like this on Hacker News. Had a taste of management in my early 30s and decided it wasn’t for me, and remember toying with ideas for a career switch because surely, I would be dead as a programmer soon. The exact opposite happened.
Does it matter? If there is some way that recruiters are filtering based on age, my age is clearly discernable.
I mean, I'm sure there's probably some of that, but not in any material way that I even have a hint of age discrimination thrown in my direction.
But yes, I have that experience in my background. I had my first principal role back when I was 32 (but prior to switching away from .NET development) and 2 other lead roles in my 30s.
We have a bunch of .NET devs (our BE is .NET) and the average age of these folks probably right around 40, because in general they're going to be older devs who do that.
Granted, not everyone enjoys doing it, and it comes with lots of politics as baggage as well.
I ultimately got a job at a better company anyway and probably dodged a bullet, but it's pretty naïve to think it doesn't happen sometimes, especially at startups or places that pride themselves on a "startup mentality."
In retrospect I probably should've left a bad review on Glassdoor explaining what happened, but it was so long ago I just sorta forgot about it.
For me that helps filter out workplaces that would not be a good fit for myself.
There are a number of workplaces where a good balance is actively supported! When needed, everyone will put in extra but the expectation and in fact reality is to keep things 9-5:30 as much as possible.
Move fast and break (the law) things I guess?
Legal: "we don't think you have the energy/disposition to be devoted enough to the company to put in extra effort when needed"
Honestly, I'm surprised they even gave a reason. Our HR department has an email template that we must use, which is something along the lines of "we picked someone else, but we'll keep your CV on file, in case anything else opens up". You don't have to give a reason, so if you do, you're only opening yourself up to liability.
Like I said, I personally see it as dodging a bullet. I probably didn't want to work in that kind of environment anyway. But there may be other people with different situations than mine who would've been rightly miffed by it.
I'm pretty privileged as things go, so I tend to not complain a lot about ageism and discrimination based on family status because there are a lot of folks who have it far worse than I do (even though I recognize it as a legit problem and feel like I've seen it firsthand). This company sorta tipped their hand without saying anything illegal.
Asking them isn't illegal per se, but if you do ask them and the candidate isn't hired, you've opened the door to a discrimination lawsuit.
If the candidate brings it up first, it's fair game for conversation, but still off-limits for hiring consideration.
What makes you think that?
It's absolutely possible for a 25-year-old to be a more experienced, more technically competent, and more mature than a 40-year-old.
Some 40-year-olds have 20x 1 year of experience, compared to some 25-year-old's 5 years of experience.
If you think you're inherently better as a 40-year-old developer than all 25-year-old developers then I think you're deeply mistaken.
It's also absolutely possible for a pig in a jetpack to fly past your window. Many unusual things are possible, but that doesn't make them any less unusual. In the vast majority of cases, older developers will have more experience and be more mature than younger developers.
That person has 20 years of experience in gaining short experiences. Something the 25 year old prodigy can’t have. Skippercat was just stating a fact.
I feel the way you expressed your opinion reflects some intrinsic ageism. Bigotry often seeks a plausible rationale for justification.
I'm just realistic that having been alive a long time doesn't automatically infer wisdom like people think it does. Someone who's spent 20 years not really learning anything or bettering themselves can be behind someone who's spent five years working hard.
They said:
> at 40, I had a much deeper understanding of the tech, I understood of the whole business process and I had the maturity to deal with people in a productive way.
Understanding tech, business process, and maturity don't necessarily take a long time to learn. Someone can spend 20 years not bothering to learn these things, while someone who's worked 5 years can have mastered them.
Highly effective people can be young. Don't assume you'll have more of anything compared to them just because you've been around for longer.
> I worked with someone my age who only strong skills are a large enterprise storage system. He is a dinosaur and his future is limited.
> You won't find all of those in a 25 year old developer
I took the quote as meaning that certain skills take time to master and it's impossible (which I took to be hyperbole) someone with less time would be able to master /all/ of the them; reinforcing their first point about how someone who is older should find it easier to find employment.
How about we just assess each individual without going in with any prejudice based on their age?
This has really helped ground me and keep my focus in tumultuous times.
I feel like my tech and ability to see the bigger picture is only getting better. And I still maintain the same child like joy of tech that I had when I opened my Vic 20 not too far away from 40 years ago.
Never stop learning, indeed!
And say I am only just as good as the newbie in go. Isn’t that fine? I am seeking the pleasures of learning and learning with other smart people, not trying to win a contest. My method to do that is find problems, without a recipe answer, for technology problems that my employers are facing. But the motivating goal is to learn new things and build new things.
Depends on how expensive you are, what the market is like, how well you compensate in other areas (people skills, analytical thought etc) but all in all the market will prefer the 35 year old because our industry is somewhat shitty and ageist. It is what it is. However you will have a very strong network for having worked so many years so you can probably easily overcome this.
At 52, that can be a good move, if that enterprise system will be around somewhere for the next ten years. Remote work makes it an even safer bet. During that time, he can devote more attention to his family, community, and hobbies, instead of trying to make sure he is employable by the maximum number of businesses. You only get paid for one job, no matter how many you're prepared for.
I suppose everything is a choice. I have worked on tech that doesn't have a future because the company needs someone to fill those shitty positions. I naively believed the company when they talked about them taking care of employees and being able to make a career out of it.
Ideally more senior emloyees worked in multitude of situations and team structure and project is better for productivity, they also have more even performance in long term, but hiring practice seems to be unideal.
Perhaps they have a shorter attention span in mind, promoting replaceablity over long term stability and predictability?
OK, but it's also completely legitimate to just say, "I already know Python so now I just want to focus on building better and better things each year, not getting better at tech." And yet that won't make you employable, even though it's probably the ideal strategy as an entrepreneur and product creator.
But can we make employers see that we are not dinosaurs at 38 years old? lol
Otherwise, we'll be stuck making our best work from the confines of our basement.
Based on the multitude of threads and articles about ageism posted on HN alone and what we know about ageism in general, I'd say it's the former, but I'd be interested to see if someone actually studied this.
Even my company rejects experienced hires if the job description is not specifically mandating senior-level experience. I just hired one such person that is a bit over 50 years old, I had to fight HR on this.
If OP can't get an offer(for Python!) then something is really wrong. Where? Possibly they could not get past some silly HR filter.
If you were a Python shop wouldn't you want to have an interview with OP would you?
There is an advice floating around HN that one should contribute meaningfully to some popular open source project and/or write a book about something -> leading to better career prospects.
The above might be helpful but clearly not sufficient. (I've seen good book authors still looking for job prospects)
>Do not send me email like this:
>>Hi Guido,
>>I came across your resume in a Google web search. You seem to have an awesome expertise on Python. I would be glad if you can reply my email and let me know your interest and availability. Our client immediately needs a PYTHON Developers at its location in ***, NJ. Below are the job details. If interested and available, kindly fwd me your updated resume along with the expected rate and the availability.
>I might reply like this:
>>I'm not interested and not available.
Guido van Rossum 2013-09-18T20:32:32.876Z
He was well over 50 at the time.
"So tell me about the kind of work you've done with Python..."
> while the experience that comes with age is valued in fields like music, it counts against you in tech.
Yup. The Jurassic-scale disasters that are becoming increasingly common, these days, are evidence of unsteady hands at the wheel.
I'm not saying that older folks are better. In many cases, we can be overconservative and overcautious, but that isn't such a bad thing, when the stakes for a blowout are so high.
I have always felt that tech needs to follow the same model as every other damn industry since the start of history, which is to have experience work with youth. They balance each other out.
I feel that when one of them gets too much power, Bad Things Happen.
In my case, I was finally laid off, after a 27-year run at one of the world's marquee imaging companies (which I think was overbalanced by experience). I started looking around for more work, as I wasn't really up for retirement (which I was quite capable of doing).
I was absolutely shocked at how shabbily I was treated, and fairly quickly gave up the search.
I find it offensive, that companies are so self-destructive; especially smaller companies, where a top-shelf employee could "make or break" the company. I have a fairly unique confluence of skills that would have made a startup very happy (I've been ARCHITECTING and SHIPPING software, since my very first engineering project, in 1987. I am quite used to production engineering. I've been doing it my entire adult life. I've heard that could be useful, to some companies). I was also quite willing to work for a lot less money than most, as my retirement was set, and I was looking for work that interested me.
Instead, I was rather quickly told -in no uncertain terms- "Go away, old man. No one wants you."
I took the hint, and found some non-profit folks that were doing work I find interesting, and started working with them, for free.
They are quite happy with my work.
I read your posts whenever I see them, it's obvious you're quite bright. I really don't understand how you don't see this.
It isn't ageism, again go read the rest of this thread. It's the nature of making yourself an attractive candidate. If you don't care to play the game, you can't pout and cry "ageism" when you lose the game.
One can also take this as: "this person jumps jobs often, everything I invest in them will probably have not a good/long ROI" vs. "this person was a loyal employee that was so good he was kept for decades"
A few jumps surely do not hurt, are even good to get some different POVs and such, but if we get people that were barely one or two years at a company at max it always rings a few alarm bells.
But, either way its generalization, the reasons for why either situation happened are relevant to make a sensible decision.
I.e., the answer to "why switch so often?" or "why stuck for so long and why now?" are key.
This is really the key.
As another anecdotal datapoint to add to this thread, I've held three SWE positions over the past four years and will be starting my fourth, at Google, next month. Naturally the recruiters and hiring managers asked about the short stints at each company, but given that my reasons for each departure were reasonable (company acquisition, COVID, and location), they didn't have any objections.
Why is the assumption not the opposite?
"This person failed at 8 companies" vs "This person was success at one for almost three decades"?
Why is it a sign of success if you are at a company for a short stay before going to the next? If anything, I'd imagine that a short stay would be more likely related to getting PIPd or unable to get promoted/grow there.
Resumes usually include the list of major achievements at that role.
It's the combination of the two that people look for.
Looking at just quantitative things like number of companies is terrible. Looking at the combination of qualitative and quantitative aspects of a CV/Resume are what make for an attractive candidate.
Next time you hear someone complain about why programmers jump jobs ever 2 years, point them to this cynical and stereotyping comment.
In my opinion this is no different from saying "What, you didn't graduate from college? Well, obviously you are unhireable", but I bet 'Icathian would be much less likely to say that to a non college-educated programmer looking for work.
For some reason, stereotyping based on tenure, which correlates strongly to age, just seems to fly wild in our industry.
You can blame me for recognizing that all you want, but it's a pretty well-known truth of our industry. I want it to always be easy to find lucrative, interesting work, and I'm willing to play the game to keep it that way for myself. I'm not sure what about that you object to so strongly.
Doesn't make it right.
Just sayin'...
There are a lot of bad things about our industry, repeating the stereotypes that lead to them is still harmful. Which brings me to...
> I'm not sure what about that you object to so strongly.
Simple: If you were in a a position where you were screening resumes, I think you would rule out people with long tenures purely on the basis that the tenure was long.
I am saying that this amounts to age-based discrimination, and you should think about it rather than parroting the assertion "Obviously you're unhireable, you worked somewhere for 27 years". And even if you refuse to think about this, my hope is that other commenters will.
And maybe, just maybe next time they see a resume with 27 years of experience at one company, they will think "Wow, this person will bring an interesting point of view to the team – they have been through 5 times the tenure of an average VP and have seen the rise and fall of several projects. Let's hire them!"
My fervent goal is to stay an IC through retirement. Doing that successfully requires playing the game.
I must say I am pleasantly surprised! Please accept my apologies, and an upvote.
I concur. I know that you're "just playing the game as set by the rule-makers."
I'm in an unusual position. I'm not looking for work (and, after a few years on my own, I couldn't be dragged into the rat race with a locomotive).
That means that I get to say things like "Oi guv! That bloke's starkers!" Won't make me popular, and probably won't change anyone's opinion, but I'll do it, anyway. It's my nature.
I'd look at what they've accomplished in those 27 years. This is no different than someone with 5 years or even 1.
If someone only has a couple notable things in 27 years , then I'm not sure what they're bringing to the table.
If someone has the same number of notable things in 5 years, then that speaks more to the level of work they're innovating at.
In short, it's really about the meaningfulness of what they've done during that time, relative to the tenure. Tenure alone is meaningless IMHO.
I've interviewed too many people who have careers longer than my life, who have basically just gotten by. I've also interviewed people who've done amazing things year on year.
The latter are the people I seek to build out the team. The former don't add much, unless they're really rock solid devs who've stayed in top of things. But if they're just alright? Then why wouldn't I hire someone more junior when they're giving me the same results, for cheaper, and are usually easier to mold and train?
I've managed to do OK, even with that. In fact, it has probably helped me to be much, much better at my job.
I call it "the Boy Named Sue" problem[0]. I have had to deal with so damn much adversity, in my career, that it has forced me to constantly deliver, and go "above and beyond," in everything I've done. I've looked up a lot of noses, and it does make me cranky, but it has also forced me to be pretty good at what I do. No one will take me at my word. I have to show them.
[0] https://www.youtube.com/watch?v=WOHPuY88Ry4
So since you are defending the practice, please explain what is it about spending your entire career at a single company that makes you unemployable anywhere else.
And please don't assume that that means never learning anything new during 27 years.
Can you name another career where holding one job too long makes you unemployable, and where people actually defend this?
You've added a degree of difficulty (we could quibble about how much of one but whatever) to the process that didn't need to be there.
Not proudly, but often. Be nice. I thought we were supposed to be nicer to each other here, than in other Internet venues, but I'm often wrong.
> You didn't build your CV to be attractive to new employers at all
I see things differently. Don't forget that I was a hiring manager for most of that time. My CV reflects what I would have considered to be a "dream employee" for most of that time. It is not one that current companies find attractive, and that's actually (IMNSHO) a real problem, in today's industry. In most other industries, it would have been a "We need to get this guy on board right now" kind of thing. In tech, it's "He spent all that time at one company? He must be terrible, and insecure."
I am quite aware that having spent 27 years at one company is actually considered a bad thing. I really do see how the industry works. I won't change my expectations to meet the new reality.
If no one wants me, then I'll do my own thing. I'm very grateful to have that option, and my heart goes out to the folks that don't have that option.
Apologies. I struggle when people I respect seem to miss things that are obvious to me, I should have kept my tone in check better.
Fair enough. If the winning move for you is not to play, that's hardly a bad choice. I don't think it would work for me.
I've been with my current employer for 4 years, and all going well I'll stay with them until retirement (I'm almost 50 now, so another 15-odd years). The pay is good (for where I live), the work is varied and mostly interesting. It'd seem a bit crazy to jump ship just in case they take against me at some point in the future, no?
Making that call at 50 is a lot different than making it in your early 30s, I would think?
IT is a sick twisted industry.
Are you "out of practice" in the job search?
This comment (https://news.ycombinator.com/item?id=28758320) states:
> Delete the first 10 years of your work history and take the date off your CS degree
> I started getting significantly more responses to applications and inquiries from recruiters on LinkedIn
I will do neither. That's dishonest.
If no one values me for the skills and experience I have, then I have no interest in working with them (not "for," "with." -A big problem, in today's working world, is the attitude that companies are doing people a favor by hiring them. If someone hires me, they don't get me as a servant. I've worked way too long and hard to be treated that way. Another problem, is that asking for simple, basic, human respect, is considered "arrogant").
I am very, very honest. This was actually a big plus, at my last company. It got me a seat at the "inner table" of a highly conservative Japanese corporation; something few Westerners ever experience.
I refuse to be dishonest. I won't hide my age, experience, or weaknesses. I also won't exaggerate. People often tell me that I'm exaggerating. Then, they take the time to look at my track record (which is very available -people like to lob insults before actually checking to see if they apply). Things get quiet, after that.
I don't see dying your hair as any different from wearing makeup or attractive clothes. Humans are social and visual creatures, we find it easier to trust other humans we like the appearance of.
I'm also not particularly tall (5'6" -1.9m). I wear dorky shoes (at least, according to the fashionistas on HackerNews[0]).
[0] https://news.ycombinator.com/item?id=28579724
I have to say that is quite well phrased.
I think that's a problem for those hiring; in itself. I see it when I ask people why they won't hire the Amish or Mennonite crew for some job they'd do well. It's not about the cost, there's no doubt the result will be better; it's not schedule... It's just "these people are odd" and don't have the proper attitude.
> If no one values me for the skills and experience I have, then I have no interest in working with them
I generally take the same attitude.
You don't have to list everything on your resume. It's not dishonest to leave out experience that's no longer relevant. You also don't have to dye your hair, wear platform shoes, or get plastic surgery. (Although Converse was trying to push platform chucks when I ordered some new sneakers a few weeks ago.)
All your resume needs to do is make you appealing enough to get a callback. It doesn't have to list out every single detail.
But, I do need to point something out 20 years into my career: A lot of development shops don't know how to work with mature developers, nor are they budgeting to hire someone with 30+ years experience. The "people" challenge of onboarding into a team where I have more experience than my manager is often harder than the actual work.
Well, none of my attempts made it past the second screener, so I wouldn't know.
As far as "budgeting" goes...I was once told (by a recruiter), that I'd need to "ask for less," because I'm older.
I was already asking for peanuts, because I am not really interested in money, and was actually looking for the kind of place I could make a difference; where they often can't afford a lot of "top-shelf" talent. That's a trick I've always used in my career. I have worked for less, at places that interest me. It's still allowed me to get to a point where I don't need to work (I live frugally, avoid personal debt, and save like crazy).
I'm used to "making a difference." That may seem arrogant; but you haven't worked with me. I'm making quite a difference, right now. In fact, in the window behind this browser, I see that my latest TestFlight upload is done, and I'm about to make the team quite happy.
I'm still a bloke, though, so I can't say I know how they feel.
This is where working at a single company for 27 years works against you, it implies a lack of the kind of experience that makes older individuals uniquely valuable. There is little generally applicable skill around architecting and shipping software; the practical constraints on how those things can be done are often wildly different across companies and industries. Bright and capable people that have spent decades at a single company often struggle to effectively adapt their skills to an entirely different company context. There is practically a meme about Microsoft lifers only being able to work with other Microsoft lifers in Seattle, for example, because empirically it has tended to be true. What you don't have is 27 years of experience applying your technical skills across very different organizational and operational contexts, and that is valuable experience that only years can provide.
That isn't to say you can't, just that your experience doesn't provide much evidence of it. Anecdotally, as someone also getting up there in age, it has never been easier for me to find work.
It has been my experience that the mid-thirties are kind of a "golden window" for senior-level talent. Some people think of it as "older," but not that many.
We're old enough to have had the sharp edges worn away, but not yet old enough to make the management uncomfortable.
Once we start getting into the 40s (or, heaven forbid, the 50s), attitudes start changing -drastically. It's -sort of- OK to be a manager, but not a critical path engineer.
I will say that you seem to be an interesting chap, and I suspect that "the conventional rules" probably don't really apply to your work. Looks like fun.
For me, I like to make stuff that people use. I'm not particularly interested in changing the world (although I have, for a particular demographic -long story). I like getting my hands dirty, and Usability/Accessibility/Localization is a big deal. I like to put simple faces on complicated backends, and open tech to as many folks as possible. Most folks hate "computers," so I try to "decomputerize" tech. It's fun; especially when I see people using my work.
I consider myself to be more of a "craftsman," than a "scientist." It's a labor of Love; not just for my own satisfaction and work, but also for the users of my work. That's one reason I like working with an NPO. My whole family has been in Service, of one kind or another. My younger brother and I are the "redneck engineers." The rest of the family is a bit more Ivy League. My younger brother used to run group homes for kids that are wards of the state. He burned out on that, and became an engineer. He's worked at his [Fortune 20] company for over 20 years. It's a pretty big deal. He's self-taught, like me.
I was reading an article that said that age-compensating plastic surgery is very common in Silicon Valley, and that most patients prefer having the procedure done on a Friday, so they can heal over the weekend, and probably get away with it not being obvious when they get back to work.
New York's ageism problem (although many don't believe that it's a "problem," at all) is much more pronounced than SV (especially in Brooklyn). I'm wondering if a reason might be that NY has been a tech hub for a far shorter period of time, and we haven't had a "critical mass" of engineers "age out," yet.
I stopped going to (very good, and very energetic) NY meetups, a long time ago. It's abundantly clear that my just being there, is unnerving to a lot of folks. As I walk around the room, a big clear space automatically happens around me; like I'm in the eye of a hurricane. It's pretty obvious that I'm not usually a welcome addition to the milieux. And that's all before I even open my mouth. People don't seem actively hostile; but they avoid me. I don't get dirty looks. In fact, I don't seem to get eye contact at all.
Absolutely no one introduces themselves to me. I'm fairly affable, and have no problem reaching out to others. When I do that, we often have a good chat (although some, I can see, are looking for the exits).
Surprisingly, I often find that the people who avoid me the most, are the older members of the crowd.
That's interesting.
I can have some great chats with younger folks. I never try being "down with the kids," and I know better than to do an "OK boomer" thing. I'm a fairly good listener, and ask questions designed to encourage folks to talk about themselves, and their passions. That usually works well with younger folks.
You are correct that my unique expertise affords me some significant advantages. For certain fascinating classes of computer science problem, I’m the person everyone calls. My true CV is far weirder than the public ones. But ironically, that isn’t what companies typically pay me for except tangentially. I mostly get paid to fix broken engineering organizations because apparently I am good at it and there is no version of “broken” I haven’t seen before. I still think of myself as an engineer, and remain extremely technical, but most days I am solving people and organization problems. I am valued more as an executive fixer than for my technical ability despite having some extremely unique technical capability. The market has made it abundantly clear which is more valuable.
I will always love writing code but it is more enjoyable as a (very serious) hobby and craft, albeit with an end product that has often been licensable. I’m not even sure this is a bad thing, since it allows a level of code quality that would never happen in a commercial environment.
FWIW, I’ve always been able to get on with young people and old people, whatever that meant for whatever age I was. I genuinely don’t classify people that way, I am more interested in their experience and knowledge. Especially for engineers, if you are doing cool shit age doesn’t matter.
That's always been my viewpoint.
I'm used to dealing with folks across pretty much all ages. I have an "eclectic" social circle that includes (but not limited to) kids still in high school, bikers, ex-cons, scientists, bankers, retirees, and CEOs.