Hacker News new | comments | show | ask | jobs | submit login
A comment left on Slashdot (chaosinmotion.com)
419 points by panic 256 days ago | hide | past | web | favorite | 287 comments

The funny problem is that when I was 32 I heard from one recruiter "Oh, so you are still a programmer? I'm sorry, we cannot offer you sending your cv to our client. You see, we have hundreds of cvs from people of your age, and all are managers, so if you are not, then there is something wrong with you".

Yea, 32 years old programmer is just too old, 32 years old surgeon is usually too young to work alone.

I keep on learning, I have accumulated lots of knowledge working in different areas of programming like system administration, database administration, programming etc. I have been payed to program using over a dozen of programming languages... At interviews I still hear "oh, you know, I'd love to have experience like yours"...

And I still hear "you are too old". What's more funny - people are not embarrassed saying that. Even though that's illegal where I live. Writing "we want to hire a woman/man only" is also illegal, but people still write that, and no one reacts.

I'm afraid I will be totally unemployable in a couple of years, just after my 40, which will come too soon. And I don't want to get into management only position (which is also hard, as I cannot get a management job "because you haven't worked on such a position, and you are too old to start that".

That's hilarious, but on the other hand that explains a couple of things like a-brand-new-hyped-technology, which is just a rewrite of what we had 20 years ago.

A slightly cynical explanation:

Startups need cheap workers who will work long hours. And honestly, for every one Google (who legitimately needed genius level scientists), you have 10 WhatsApps (which are glorified simple CRUD apps).

Now how are you going to get a guy (who sort of knows what he's doing) to work 15 hours a day for pizza?

You've got to trick him "Change the world", " we're the next Google ", " you get to use any stack you want"

When your a 20 year old kid, with no responsibilities and a future ahead of you, this sounds perfect. When you're 30 (and all the more so 40), you go to work to 1. Feed your family 2. If you want to "change the world", you work for a non-profit.

And all the skills don't matter. Your knowledge how to save RAM? Useless. Just spin up another VM.

So for the CEO of a startup, a 30 year old is simply too expensive for what he needs - a cheep code monkey. All the excuses are just that.

I'm 34 and I do work as a developer for a startup. But then again, I'm working in Germany where I saw 45+ lead developers in startups, and age is something that is mostly considered to be an asset, not a burden - as long as you're willing to learn every day. The good thing here is that you recognize hype better than when you're young.

I( worked as a developer for a startup aged 34 ... in the UK. I was the youngest person in the startup, too. (It went public via reverse-takeover and ended up being absorbed by Mastercard a decade later: as we were in payment services, you could consider this a win.)

There is an elephant in the room that the Americans on HN are reluctant to admit, which is that the US healthcare system sucks. Startups can't easily afford the corporate health insurance premiums they need in order to attract older staff, so they perforce rely on the young and healthy — who are cheaper, don't have families, and don't have expensive chronic conditions.

The US healthcare system thus applies invisible constraints to hiring practices that encourage unspoken discrimination against experienced adults.

(Whereas in the UK we had a working NHS to provide cover for us and our families, and in Germany the insurance system is at least sane. Sure, our VC and finance sector is (or was, in my day) less hospitable to startups, but: swings and roundabouts.)

American here, can confirm and will admit. Not only that but there is a lot of discouragement for developers to take time off, like a sabbatical, to learn and try new things, or to do consulting or contract work. Being able to count on healthcare equates to being employed. It doesn't suck as badly because there is an overall shortage of talent.

Things are going to be even worse IMO with the new adminstration.

I'm from a similar country (Belgium) but have seen both sides of it, both where age is an advantage as well as a negative factor.

At a startup I worked at, we were considering hiring a developer who was older than us (+20 years older), but in the end did not do it as we felt he might have trouble being managed by people significantly older than him. This was not my decision and I would have been in favor of hiring him - for the experience he could bring to the company.

Anyway, I now work in a team where most people (apart from 2) are older than me, and I consider that a priviledge. I get to learn from them in a great way, and I feel that I can teach them things as well. It goes both ways really.

And I do feel that in general here age is not such an important factor. Though that is just from looking at my colleagues, I am not in a comparable situation yet.

Just out of curiousity btw, does 'ff10' hold any relation to 'fast fingers'?

> we were considering hiring a developer who was older than us (+20 years older), but in the end did not do it as we felt he might have trouble being managed by people significantly older than him.

I am curious: Did something give you the impression he'd be bothered by a younger management, or was it just a general concern?

I am only 23, but I imagine I wouldn't have issues being managed by someone my age if I were 33. However, I know that I'd be pretty shit at management right now, and would definitely not want to manage someone older than me. Personally, I'd prefer to be managed by someone older than myself due to them having more experience. Then again, wisdom doesn't come solely from age; one can have more experience and wisdom at 15 than someone at 50.

My conclusion is that there is no conclusion, I guess.

> I am only 23, but I imagine I wouldn't have issues being managed by someone my age if I were 33. However, I know that I'd be pretty shit at management right now...

When you get to 33, look at the 23 year olds around you, and imagine taking direction from them.

Imagine them making blatantly/obviously poor decisions, and understanding that because of these decisions you may very well be out of a job in 6 months.

Imagine there are half a dozen or more folks in your org that have been in similar situations, and they all have experience in "domain X", and are available to be probed for info/insight on domain X to help avoid poor decisions. Now imagine them all being completely overlooked because they're "old" (40) or aren't in the "circle" of the 23 year old manager/ceo.

There of course are exceptions to these scenarios, but they tend to be just that - exceptions. Most 23 year olds simply do not have the depth of experience needed to understand how and when to best use the folks around them. Think about this when you're 30, 33 or 40, and revisit the idea of being "managed" by a 23 year old.

This doesn't mean no one younger can ever manage anyone older - not by a longshot. But it's not trivial, and getting it 'right' takes a lot of work.

> as we felt he might have trouble being managed by people significantly older than him

You didn't hire him because of his age. Isn't that illegal in pretty much the entire western world?

It probably is. But, given a reason as "not being a good cultural fit" does not have to describe that it is about age I presume.

I guess that you can always make up some kind of excuse other than just saying "too old". But I am unaware of how they corresponded this to the person in question.

It's hard to understand whether this was a concern backed by data (observation), or general discrimination.

The former is legitimate: "this person will have issues with management and cause problems". The reason for this is a moot point: the candidate has issues with younger people, the candidate has a chip on his or her shoulder, or some other reason.

The latter is questionable: "This person is old, and old people have issues working for younger people, so we won't hire him."

>but in the end did not do it as we felt he might have trouble being managed by people significantly older than him.

Why would he have trouble being managed by people older than him?

Thank you for pointing that out, that of course had to be _younger_ than him :-)

> Just out of curiousity btw, does 'ff10' hold any relation to 'fast fingers'?

Nah, I ain't that fast. There's a completely different story behind that but there's also a time and place for everything ;-)

Where do you live in Belgium? ( I'm also from BE ;) )

Live, studied, and currently work in Leuven :-)

A lot of what you read, particularly here on HN, tends to be more about silicon valley than about the US in general. The ageism issue is a particularly good example of this as the valley is so much worse in this regard than most of the rest of the country.

Sounds very sensible - I strongly believe in the benefits of having a diverse work-environment, and that includes diversity of age.

Out of personal interest (my partner lives in Germany. I'm considering moving there in the long term, and I'm your age), how would you describe the German situation when it comes to diversity in general?

Are you living in the US? That's a very broad question. Let me try to give you my impression in a few words...

I think the diversity situation is not as complex in Germany compared to the coastal areas in the US – if you're talking about ethnicity. Sexual orientation and identity is not as much of a big deal here as well. Not because those questions are frowned upon or considered unimportant, but because those things are looked at with a more relaxed, laissez-faire attitude, at least in the urban areas. It's much less charged with political and religious ideas and action, maybe also because those questions are considered _a bit_ more private as well.

Those are just my 2 cents though, maybe someone else can add his own view, I'd be very interested in that myself.

How is your German? Speaking the language is permission to play in most workplaces unless you are in some sort of ex-pat environment like the US military. Without language skills you are likely to remain an outsider in non-work situations as well.

(This is not a hit on Germany, which is a wonderful place. It's just how things work in the German-speaking parts of Europe.)

> How is your German? Speaking the language is permission to play in most workplaces unless you are in some sort of ex-pat environment like the US military.

This is contrary to my personal experience.

English was absolutely the lingua franca.

At my last jobs (I'm a freelancer, so I get around), Germans were clearly the minority. The language environment tended to be very fluid; people joining or leaving a conversation would cause a switch in language, sometimes mid-sentence.

I currently work with 3 Russians, 1 Pakistani, 3 Germans.

> Without language skills you are likely to remain an outsider in non-work situations as well.

If you're thinking of outings with the team, if they are halfway decent they'll take you under their wing.

If you're thinking of day-to-day situations, it'll be harder of course, but absolutely feasible. Many people speak reasonable English.

My experience has been more along the lines of https://news.ycombinator.com/item?id=12769385. I speak German and most people can't tell I'm a foreigner. It would be a lot less fun otherwise. You're really missing a lot if you only speak English.

To be fair a lot of my interaction has been in areas outside of large cities like Berlin, which are far more cosmopolitan than they used to be.

WhatsApp is not a good example. They ran a high scale messaging service with a very lean team. There are some interesting challenges there.

All infrastructure, all solved many times many years before. The challenge is usually choosing a solution which can be adapted to match the unchangable assumptions of the non-scaled code (or removing those assumptions).

Are you familiar with whatsapp or just making a general remark?

Whatsapp at 20 engineers delivered service to an audience comparable to Twitter, except with 1/100 the manpower (and hardware) and a couple of 9s more in reliability. They patched FreeBSD and Erlang to get there in the process.

it's a problem that was solved many times before, but not successfully at this scale or cost. These are not your run-of-the mill CRUD developers.

Also, I remember reading that the initial Whatsapp team had a much higher median age compared to most startups [1], so I agree that it's not a good example here.

[1] https://medium.com/the-story-of-grip/5-things-every-founder-...

Whatsapp is indeed a bad example for 'Code monkeyism', since it's quite the opposite.

The Whatsapp guys were smart enough to think about using the right tool for the right job in the first place, i.e. stuff like Erlang - which has been tried and tested for scenarios like this for decades - and applied it to a modern infrastructure.

Twitter OTOH was built with Ruby on Rails... That's more like a fitting example. :)

>> Whatsapp at 20 engineers delivered service to an audience comparable to Twitter, except with 1/100 the manpower (and hardware)

Twitter isn't really comparable to WhatsApp. How many people read a tweet compared to a WhatsApp message.

On average, each tweet is read by about one person, and an average whatsapp message is read by one than more person.

There are tweeter messages that are read by millions, but they are offset by many tweeter messages read by no one. The average no. of followers of a tweeter account is 1, and 5-10% of all tweeter accounts are bots.

The distribution is different, but there are a lot of similarities that warrant comparison.

While I agree Twitter's employee base is excessively bloated, comparing the two platforms is not really fair.

WhatsApp is a one to one messaging service.

Twitter is a one to many messaging service.

(that's a BIG difference, by many orders of magnitude)

Most of my Whatsapp inbox is from groups. Also, calls.

> it's a problem that was solved many times before, but not successfully at this scale or cost

I'm not familiar with the scale+cost of every every bank, stock exchange, flight search, messaging app, log transport system, telco CDR matching infra, etc. Can you comment re: similar scale/cost projects?

> They patched FreeBSD and Erlang

Neither of these are distributed systems, which I think is the interesting challenge part of messaging.

Do you have a link for this whatsapp info? It sounds like you got a lot of good information from it that others could benefit from by reading.

Here's a great talk from Rick Reed (a former mentor of mine at Yahoo!) about how WhatsApp scaled their Erlang infrastructure: https://vimeo.com/44312354

Here's another talk: https://www.youtube.com/watch?v=c12cYAUTXXs

> Neither of these are distributed systems

On the contrary - Erlang and its runtime were built from the ground up for use in distributed systems.

But it's not a distributed system: you use it to implement distributed systems. Each runtime is present on a single host & it provides some well-defined methods for RPC. Your application has to be aware of this to take advantage of it.

Hi downvoters,

Wow! I didn't know that asking for more information was frowned upon on HN! Here's me pointedly not asking for links to the HN commenting guidelines.

-- falsedan

I have to agree with the commenter here...a solved problem doesn't get you purchased for $20 billion with closer to $20 million in revenues.

WhatsApp is not a good example.

There's a reason that company's success drove a huge amount of attention to Erlang, led to the popularity of Elixir and caused a whole lot of experienced developers to look deep enough to go "Holy crap! This solves so many problems!"

Not meaning to praise WhatsApp, but infrastructure can by definition never be "solved".

Infrastructure is always messy and needs maintenance.

Yes, the challenge with infrastructure is usually, "how do we document the runbook for this?" & "how do we set up the paging schedule?"

WhatsApp is a glorified simple CRUD app? Lol I'd love to see you even approach the scale they had even after a year with a "glorified simple CRUD app." I wouldn't try if digging into the nuts and bolts of the Erlang VM isn't your thing.

My cynical response to your cynical explanation is that bottom tier engineers only see bottom tier solutions.

Basically this. I was going to contrast a couple of (heavily anonymized) employees we just hired - a smart but inexperienced twenty something and a smart and very experienced 40 something, when I just remembered that I'd run into the 20 something at the office on a Sunday.

I was just there to show the new office and some of our toys to my girlfriend, he was there because he was really excited about the job and just wanted to really kill it.

Twenty year olds generally haven't figured out what really matters in life, especially when it comes to work life balance. That's a valuable asset to most companies.

I told the kid to go home and have some fun, but I don't think he did. Later that day the 40-year old posted a picture in slack of him flying a drone with his kids, and just looking happy as a clam in mud.

See here's the thing... as a "seasoned" engineer who now has work-life balance, I was once a 20-something engineer working for pizza on crud apps in the office on Sunday, that time _is_ fun. It was super satisfying and fulfilling to learn new tech, create something, solve a business problem and get a raise and promotion because of it. Even doing that some weekends, I still had plenty of time to hang out with friends and fly drones (hack TiVos in my case) or whatever.

As I got older, got married, had kids, that time is now spent helping my kids grow up. I have other things that take precedence over it. Honestly, I still think it would be fun to hack out a project for work on a weekend. I just don't have that luxury anymore.

I like my life equally (or rather, I try to not constantly judge my life) now as I did then but it's different.

Hopefully your 40-year old employee brings something different to the table - domain expertise, ideas born of repetition, lack of mistakes, dedication to quality craft that is equivalent to the raw output of your 20-something.

Yep. I'm in my late 30's, being interviewed by 25-year-olds for jobs. These people do not want to be challenged intellectually.

Some (paraphrased) excerpts from conversations I've had recently-- "Would you be willing to do a coding challenge? "Sure, about how long is it?" "I'm not sure." "What subject is it on?" I'm not sure." "When do you need it?" "A week from today." "I'm going to be traveling starting tomorrow, can we do the test the week after next?" "No, I really need it on Tuesday." "So the only thing you know about this test-- is the due date? I can't commit to an unknown amount of work in a week where I know I'll be traveling."

"We only hire the best, absolutely best programmers." "Oh really? What would you say your average experience level is?" "3-5 years."

"We insist on the highest quality work, would you be able to perform at that level?" "How does your organization define quality?" ... what ensued was 5 minutes of stammering and "uhhhsss" until I let her off the hook.

Experience, at least in California, is a liability not an asset.

Whatsapp is often cited as an example of startup where both cofounders were not as young as in most startups[1]. I know you are talking about devs not cofounders, but in Whatsapp both cofounders were technical so it is very likely that they actively participated to the development at least in the initial period.

[1] https://medium.com/the-story-of-grip/5-things-every-founder-...

>Now how are you going to get a guy (who sort of knows what he's doing) to work 15 hours a day for pizza?

Offer tenure? Then you don't even need the pizza.

So to be honest they should rather change job descriptions from "employee" to "slave".

Slaves are property and cannot leave. People who willingly enter into terrible contracts are suckers, not slaves.

That's generally how I feel about it myself, I just hit 30 and I'm done with the "work hard play hard" mentality a lot of startups run with.

I want to do great, efficient work, and leave at 5pm every day to spend time with my family.

I don't give a shit if your office has free snacks, beer, and ping pong, I'm an adult. Life isn't work.

I think the cheap work, long hours thing is critical because companies will see an older person and think more expensive which is true and the added cost is justified. I've seen companies turn down more expensive and experienced people in favour of less experience and cheaper, only to go back to the older and more experienced person once they realised the management overhead of dealing with less experienced staff.

I also think startups have less experience running a company so assume if a developer knows x language and some experience with dbs will be able to build anything but then wonder why they have so many bugs / made so many bad design decisions.

WhatsApp is far from a CRUD app. Designing a messaging system to scale like they did, as cheap as they did, is a work of art.

You're halfway there -- the other ugly side of our profession is stated rather plainly by the author --

"Ours is also one of the fewest industries based on scientific research which blatantly ignores the research, unless it is popularized in shallow books which rarely explore anything in depth. We have a constant churn of technologies which are often pointless, introducing new languages using extreme hype which is often unwarranted as those languages seldom expand beyond a basic domain representing a subset of LISP. I can’t think of a single developer I’ve met professionally who belong to the ACM or to IEEE, and when they run into an interesting problem tend to search Github or Stack Overflow, even when it is a basic algorithm problem. (I’ve met programmers with years of experience who couldn’t write code to maintain a linked list.)"

I find it difficult to discern a common thread to the various claims made, but if I had to choose one, it's an obsession with novelty, which overlaps with your comments a little.

"... you have 10 WhatsApps (which are glorified simple CRUD apps)" - wow., just wow. So you are calling one of the most reliable, well architected, and secure messaging apps <- a simple CRUD app? Oh HN, you never fail to amuse me. This one's a certified entry for http://n-gate.com/hackernews/

The attitude of this content explains some of the bias against older workers. There is a good point about getting engineers that are happy to work long hours but dismissing something like WhatsApp as a "glorified CRUD app" is just wrong and will result in poor engineering.

Here in Berlin I've met programmers who were hired BECAUSE they were over 40 (or 50 in one case). I think this is a very American problem. And that's why I HOPE that we stop revering the U.S. myths and trends. Europe has a much less shallow approach to the social implication of work on one's life. We should keep it in mind, and pride ourselves that we can innovate and do this whole startup thingy without parroting the broken Silicon Valley work ethic.

I wouldn't call it an American problem. I would call it a Silicon Valley problem.

It's an American problem where some aspects are more obvious in SV. The attitudes that the US has towards employment is much more "kill or be killed" than most other developed countries, with very little recognition that it's a human being with non-economically quantifiable needs and value who's doing the work. Part of that is that wisdom (as opposed to CV bullet points) is hard to quantify.

America also gets a lot done due to that mentality, for better or worse.

Germany gets a lot done too, with the exact opposite mentality

Sure, they do alright I suppose. They're also not the most economically successful and powerful nation on Earth.

Agreed. I have yet to encounter any age-related problems in Europe and I'm 45. On the other hand, since I'm from Eastern Europe I might be cheaper - maybe they would object to a 45-year old British programmer. (I don't make Silicon Valley money.)

I'm happy to hear this because I've made huge experience related advancements in how I perceive programming, jumping on new trends, and so on since I became at least 30. History has a tendency to repeat itself and at some point you start to identify telltale signs, risks, and opportunities much better than when you were just hatched. And it does not (should not) need to be said how valuable such qualities can be at work.

I wish I could upvote this more than once.

I'm a 40+ years old life-long programmer with some academic science background, and it's not possible for me to actually get a job. A few years back I thought I'd try to get a full time position, to no avail. The only work that happens for me is freelance work with clients who already know me. It's not an uncomfortable life, but there's also a very distinct ceiling I'm always aware of.

I was instrumental, and often also the de-facto project lead, in launching several multi-million websites and other software, but as a freelancer I'm not really benefitting from these successes. In most cases I can't even legally advertise it. I'm stuck at a medium income level that I feel could dry up very quickly if bad luck strikes.

The job market appears saturated with programmers, and to make matters worse for everyone involved, companies lack the tools and the will to even select applicants properly - I suspect this is partly due to the fact that programming is considered such a low-value skill. At times it feels like it's the corporate equivalent of working as a burger flipper. It's not really considered a dignified position to be in when you're 30. Yet, perversely, the world is built on software.

There is a fundamental misunderstanding - even inside tech companies and SV startups - what the nature of programming-as-a-profession is. In my opinion it should not be some menial work that should only be performed by unskilled youth looking to advance to a "real" job as soon as possible. It's a skilled trade that takes time to develop.

Maybe you know this, but finding a good job is very different skillset than programming. And it's one that many talented programmers are incredibly bad at. Based purely on anecdotal evidence, the older are often worse because the self-promotional approach rubs them the wrong way.

They resist the self-promotion to their own peril.

Do you have a portfolio site, sample open source projects, a blog? None of those are golden tickets and can hurt you if done poorly, but they are examples of what I've seen missing when I talk to unemployed (or under-employed) programmers.

Time spent learning how to get a job is probably better spent at this point than learning your craft better. Just short term.

Ageism can lower the odds, but you probably wouldn't be happy in those places anyway.

I'm approaching 50, and I still get recruiters calling me -- and when I've interviewed for a job, I usually get an offer. That's been true for at least 4-5 job interviews over the past 15 years for me. I'm not saying this to boast, only to point out that, while some companies probably are ageist, they aren't all. And some of the larger companies offer really good salaries.

Another comment mentions the fact that interviewing or marketing yourself may be an issue. It also may be that you're not in the right geographical area, or that you're not interviewing at the right companies, or that your skill set on paper doesn't include the current high-paying buzzwords.

Oddly enough, Android development has been one of the highest demand items for me recently. I do think the full stack development world may be oversaturated, and that 98% of the developers in it are probably too green to do a great job running a project, so I agree with your assessment that most companies have a terrible interview process -- and that they consider programming to be a commodity, where it should be considered some combination of an engineering discipline and a craft that requires a skilled craftsman.

You wouldn't hire an artist whose entire portfolio consisted of collages of magazine photos, and yet companies are hiring programmers who literally can barely get beyond cut-and-paste coding. And you certainly wouldn't hire an unlicensed builder to create a skyscraper -- which is why we have so many companies' backends falling down like a house of cards the moment they get any traction.

I'm 41 and get a pretty consistent flow of recruiters emailing me. Maybe if I went on more interviews, I'd run into the kinds of problems you're describing, but as I usually decline, all I can go on is initial interest.

Also, what sort of contracts are you signing where you can't even disclose what you did? I've done some consulting work in the past (though admittedly not a lot), and I don't think I've even seen that sort of thing attempted. Obviously there are NDAs on the actual product of the work, but no one's ever attempted to prevent me from claiming I did it.

Are you in the US? Maybe look into the public sector. State government, e.g., perhaps in a state without a high concentration of tech industry. There's a definite ceiling in terms of pay if you want to stay technical, but I've found it very easy to get hired, and the hours and benefits offer a lot of stability, if that's what you value.

This used to be true, but the right's assault on the public sector since Reagan, during Bush, and now especially with Trump, has made this idea archaic. Many states have been maintaining hiring freezes for years and raises do not keep up with cost of living. Pensions are constantly under attack, and 457s are often hobbled because of those same pensions.

You work with a constant target on your back. Your bosses have no political capital to defend you in the media, if they aren't marching in lockstep with the demagogues running the budgeting process who are calling your work "government waste", etc. The list goes on.

I'm not a recruiter. At my work, we are always looking for folks with experience, especially with distributed systems. If you're interested in living in SoCal or Colorado and want more info, hit me up. Email is in my profile.

It's the world we live in though. 40+ here too, and looking to get into management largely for this reason. The clock is ticking on my employability as an individual contributor and I know it.

There will always be assholes and ageism.

However I also started programming when I was close to 30. I'm now near 50 and I'm still programming. I have to justify what I've learned. On the other hand I actually have learned. And it doesn't take too many rounds of, "Here is what I learned from X ... and so I suggest Y" working out in spades to demonstrate my value.

It is easy to work yourself into a career dead end. It is also easy to not stretch and find yourself with skills that were once great but no longer applicable. I have seen these happen to very good people.

But being unemployed because you are old is far from inevitable.

You can always start your own business writing code. Nobody else's approval is required.

Get into a big and mature company (think: 10k+ employees) instead of a startup or an smb. When I visit my friend at his company's San Francisco r&d building I see just as many old people as young or middle aged. Many of the older folks are very well respected due to their experience. Downside is that you'll probably be using some OOP language to make incremental changes to some ancient api call.

Are there big and mature companies which are also "remote first"?

Not everyone can or wants to live in Valley.

I heard that mainly from recruiters working for huge companies, so huge, that I couldn't apply directly, as they had outsourced all the recruitment so some external companies.

On the other hand I'm not from the USA, and what's worse - currently I need to have only remote job - which makes searching for a job even more hilarious.

Sorry to hear about your troubles, man. My only suggestion is networking. Get to know people in mailing lists/meetups/groups for the tech (languages, hw, whatever) you frequent and mention that you're looking for a remote assignment.

If none of that is an option, I guess you could always try Botox :( https://newrepublic.com/article/117088/silicons-valleys-brut...

I hope the botox thing is a joke :)

I'm 29 and slowly being pushed into a management position. I'm about 25% code (mostly R&D) and 75% management. I feel like only just hit my peak in coding knowledge and quality. It's such a shame to take someone away from code right as they begin to produce their best stuff. It's just that I can't exactly walk away from the opportunity and money, so I have to go along with it and hope my side projects keep my sanity.

I'm 49 and I feel like I only just hit my peak in coding knowledge and quality. I suspect I will feel the same when I'm 59 ;-)

But I have a question. Why can't you exactly walk away from the opportunity and money? I have exactly walked away from it and was better off for it. Not everyone will be, no doubt, but the fact that I exist means that it is possible ;-)

I'm near 60 and the code I wrote 5 years ago is crap. 5 years ago I thought the code I wrote 10 years ago is crap. 10 years ago I thought the code I wrote 15 years ago is crap. Etc.

About the only positive thing I can say about code I wrote in my 20s is it seemed like a good idea at the time.

Heh. I knew a variant of this as "if you look at the code you wrote six months ago and don't ask 'who's the idiot who wrote this crap?', you're not learning fast enough" :)

I'm in my 50's and have been coding since the 70's and still feel like my skills have not yet peaked. I learn new stuff every week. I am continually exploring and learning new stuff. There is a _lot_ to this programming stuff if you keep forcing yourself out of your comfort zone and learning new things.

Oh - and I work in a startup.

What about changing the nick rotten to something fresher?

> I'm 49 and I feel like I only just hit my peak in coding knowledge and quality. I suspect I will feel the same when I'm 59 ;-)

This is very comforting to hear! I'm 27 and feel the same way. I can only hope that I keep getting better at this whole thing, and that I can keep ahold of the feeling that I am getting better at it, as you appear to have.

Many organisations push experienced engineers into management roles. Some companies explicitly say they don't want to force this, they don't want to create a ceiling for engineers. But in my experience even those companies still do it, just less consciously. It happens by the design of their function definitions and associated salary ranges. But also by perks and status given to manangement.

How about navigating yourself to an architect-style role? You get to be very hands on, the work is more interesting, and it's "respectable" enough for older dudes like myself.

> I feel like only just hit my peak in coding knowledge and quality.

You will feel the same way in ten years and in twenty. Except by then you'll recognize the pattern. I have seen lots of good programmers (I am not one) and the more experience then accumulated, the better they become.

You can also move to some bigger org. Corporations with sufficiently big code bases are not shy to shell out director level salaries to individual contributors (people without anyone reporting to then), as long as they can have director level impact.

I'm nearly 40 and been programming for nearly 20 years for living and see no way to get out of this. I'd love to be pushed to a management position... Tbh the idea of doing this crap for another 20 years for this low pay check is not very appealing...

And here I am trying to hire developers with over 5 years of experience and struggling to get anyone in the door after over 6 months...

What kind of developer are you looking for (what skills), and where are you located?

Management is such a weird thing since nobody wants to hire you for it if you've never done it. But it feels like if you've done it once, you're on that track automatically.

I'd gladly head that way. Pure software engineering is gradually becoming less interesting to me over the course of my career - the people problems are the ones I like.

However... I'm older than you and have never gotten a "you're too old" vibe from anyone. In fact, if I have a complaint it's the opposite, it's that some companies want to treat me the same as someone 10 years younger - i.e. they don't see much difference between 2 and 10 years of experience, and you're a "Software Engineer" either way.

Come over to the ops side. We geezers still get respect here.

Until they throw you on the pager after years off it, and wonder why you might mind.

Sorry, still a bit bitter.

Where do you work? Because that's not my experience in London. Lots of experienced folk around here :).

Also in London, but having worked in Portland, Or (home of software side of Chipzilla) - not a problem being over 40 in either location. I also like working with older devs - they know their shit, not succumbing to the latest piece of half-baked language that was spammed on HN as the SolutionToAllYourProblems ^TM.

Same in Germany.

> Yea, 32 years old programmer is just too old, 32 years old surgeon is usually too young to work alone.

Wait, how are you supposed to be a senior level developer without at least 10 years experience?

Yeah they miss out on a lot of good talent. Most programmers in my team are older than 32 and they're amazing!

I worked with great 60-year old engineers, but I also worked with more than one 50 year old who had not learned much in his 25 year old career, in the sense that he was doing the same mistakes a noob would do (over and over again I assume), except he's churning code much slower, and without knowledge of modern tools (some of which are really useful and effective)

Knowledge and professional experience are not properly reflected by age. Naïveté and lower expectations however usually are, which may explaing agist hiring preferences.

I would be sceptical of hiring somebody that has been code monkeying for 20 years, as in still making the same mistakes they were making 20 years ago. It's a smell of somebody that doesn't warn to learn new things, and has no commitment to quality in any sense of the word.

On the other hand, somebody that has deeply learned their craft and is still actively learning makes a very attractive employee. Age and number of years on the job by themselves say nothing about ability.

The 20 year code monkey hypothetical is a bit of a red herring. A code monkey is... of limited use however old they are. You always prefer someone who's learning. However, someone who has been learning for 20 years is far more valuable than a curious noob. Those years on the job make a big difference in ability.

This is something that companies should pay attention to: knowledge, experience, will of learning. And that's more important than age, sex, location. However I doubt that it will change.

"Logan's Run" is more prophetic than I thought!

Don't be afraid - lots of serious companies hire older coders.

Those roles carry various titles - Principals, Architects, etc., but basically it is the non-management track.

In my team it's architects, senior programmers in both age and skill. Use them for code reviews, query tuning, investigating infrastructure/code improvements, etc.

Invaluable help, true multipliers.

I'm in my early 40s, live in a major metropolitan area and when I look for a job as a full stack c# developer, I have companies falling over themselves for me.

I am not even that strong with the latest whiz bang JavaScript framework of the week but I can architect anything with my chosen stack and I know what I know on a very deep level.

My all time favorite take on this silly "issue":


Don't put your age on your CV. It's irrelevant.

Thats crazy rude actually.

The problem is that the management can't tell who's any good. They see "the guru" struggle for several months on a "very difficult project" and then finally come through (with an added bonus that only the guru can understand the system afterwards so it MUST be very complicated) and just assume that he's been walking on water. He's young and went to a very good school... But then you find out it's a simple inventory control merging with the UPS API to ship widgets.

They took that old saw about only the grandkids being able to make the VCR stop blinking 12 and applied it to the entire frikkin world and they are unable to tell that it isn't even remotely true.

There's a lot of truth there. Much of what passes for "management" in IT is nothing more than black magic guesswork.

How many people do you need to do X? The answer could vary wildly depending on the actual people involved, yet you don't know the people when you're planning it. So it's decided that X will take 20 people, and guess what? At a minimum it will take 20 people. Magic.

Apply this same kind of problem-solving skills to any other problem you're facing. Is this new program going to involve a lot of difficult technology? The groupthink says we should give it to young 20-somethings. They're naturally smarter than the old dogs. Plus they're cheaper to pay and easier to get to work overtime. Their ego is more involved so they'll kill themselves before they'll push back on us for anything we've done wrong. Sweet deal all around.

> They took that old saw about only the grandkids being able to make the VCR stop blinking 12 and applied it to the entire frikkin world

I see this a lot. Companies where top management are not sure of the difference in skills between a guy they pay 80k and their cousin's nephew who is really smart.

To be fair...

if the guy they pay 80K is young and inexperienced like their nephew...

maybe there isn't as much difference as we'd like to think?

> the management can't tell who's any good

When they don't know what to do, they resort to the basics, i.e. "he will stay alive longer, he is underpaid, get him".

I'm almost 40, and I don't let articles like this scare me. Everyone has this fear they are going to be rejected for some reason or another. It's just another idea that you can obsess over at night wondering if you are going to be able to continue living the life you want.

Is this article true? Yes, partially. There will be companies and people out there who won't hire older programmers, and this is true for almost every other profession as well. 15 years ago there was the scare about offshoring all our jobs too. We were constantly told that the people in India were smarter, worked harder, and had cheaper salaries. They said we were lucky to keep our jobs. Is this true, yeah partially, but anyone who as any good found another job at a better company. Are the people in India hard workers and smart? Yeah there are a lot of them that are. I've worked with a lot of people from India, and many of them are great people. They are smart, passionate about what they do, and nice. Heck there is a woman from India sitting 10 feet from me who is brilliant, and a hard worker. Am I afraid of this? No. Sure there are companies that will pick her over me strictly because she is younger, but I don't want to work there anyway. A lot of times companies making decisions like that are the ones that are in real trouble and do it, because they know that older and more experience people won't stay long. You can keep those companies. I've already lived through that. Getting rejected by a company doesn't bother me, especially for a silly reason like that. I'll see where they are in a year, and I'll most likely get the last laugh.

> because they know that older and more experience people won't stay long. You can keep those companies. I've already lived through that. Getting rejected by a company doesn't bother me, especially for a silly reason like that. I'll see where they are in a year, and I'll most likely get the last laugh.

Indeed. You see things over the course of 5, 10, and 15 years. You start to see the same patterns over and over. Oh that high flying company with the big merger? Turned out they attempted a system integration, offshored most of it, laid off senior talent 10 years ago. Then 5 years ago started hiring like crazy. Turned out the integration was a disaster, all the organziation knowledge left. The only people who stayed were the 'don't move my cheese' types who didn't have any other options. Now, they're still hiring, and if they can't get their apps off of IE6 (or IE11 in IE7 compat mode) they're screwed.

That's when they start paying through the nose for senior on shore talent.

The marketplace always seems to fail in situations like this one. There are always groups that are discriminated against, based on race, gender, age, etc. Therefore a business seeking talent should view those excluded groups as a goldmine of available talent.

For example, imagine if most baseball teams started excluding non-white athletes again. If I owned a team, I'd immediately start hiring those athletes; I'd have by far the best team in baseball in short order (EDIT: To be clear, I'd have the best team because I'd have the market cornered on a large portion of the talent; it wouldn't be because of some imagined (and false) racial differences in performance.)

But in business (and in sports) it never works out that way. Certainly some executives have discriminatory attitudes, but that doesn't account for all. Certainly some will give into and/or are more exposed to social pressures, but not all. With the very high demand for talent, why aren't there businesses snapping up the older developers?

(There also is another problem: Excluded groups tend to avoid that marketplace. They are discouraged by their parents, teachers and peers, and they may not want to have to deal with discrimination every day for their whole careers. But that shouldn't apply as much to middle-aged developers; that labor supply is already in the pipeline.)

> why aren't there businesses snapping up the older developers?

There are, the problem is three-fold. One, older developers are too numerous for any one firm or group of firms to really hire all at once. Second, the job market is way more geographically constrained than people want to admit. (insert rant about "all companies should be remote" here) Third, older developers that need jobs need to be able to find companies willing to hire them.

The last aspect is the one that really matters from a social perspective. The market can come up with a matching service to pair job seekers with companies, but just having the service exist doesn't mean that all companies and all job seekers will use it. Motivated individuals will find it, but not all individuals are motivated.

The lesson here is that markets can't solve all social problems. Sometimes they exacerbate them. In these cases you really need a social solution.

> The market can come up with a matching service to pair job seekers with companies, but just having the service exist doesn't mean that all companies and all job seekers will use it. Motivated individuals will find it, but not all individuals are motivated.

And I'll add, few businesses are that motivated. Most look to get their hiring done as efficiently as possible; it's a burden, a delay, and a cost.

One huge factor in the U.S. is how broken the healthcare model is. Older employees tend to need more healthcare, if for no reason other than more commonly having families, and the employer is paying for all of it — and at a significant multiple of the base cost anywhere else.

I've heard plenty of stories about people who left startups or consulting because they needed BigCorp's insurance plan. That's understandable for the worker in question but puts a strong pressure on the employer in favor of hiring single 24-year olds.

If there would be such a lack of talent, salaries would be going up and working conditions would be getting better and better. So I bit doubt the lack of talent narrarive.

The problem is being addressed both supply-side (H1B body shops) and demand-side (salaries and working conditions are broadly better than they used to be IMO). So it is hard to say.

I do think there is some truth in "ten years of experience" versus "one year of experience times ten". There are a lot of jobs in this industry where you only have to know so much, and that's all you have to know. CRUD forms are CRUD forms, at least until they change the technology stack.

Software is a fad-driven industry, but I think the underlying reason for continual new-stack fetishism is to shake-out the 1x10 people, rather than say the 5x2 people.

I am more cynical. I think that reason for new-stack fetishism is incompetence combined with what I call "signaling game". Many people are unable to talk rationally about benefits and costs or solutions, so they jump anywhere where crowd goes to signal "I am passionate hacker".

If people would think for themselves, you would see much less of herd behavior and less insecurity induced posturing.

Salaries have gone up, and software companies regularly rank among the very best companies to work for in the world. What exactly are you expecting?

It depends on which company you talk about. Google and Facebook are not the same employers as Uber and many startups (I know that some startups are good employers). But more importantly, we had a bit of coder shortage locally. It meant that companies were:

a.) Willing to give applicants time to learn and hired them for technologies they did not knew. They hired people who were changing careers. Many position were treated as truly entry level positions, meaning dudes got hired for demonstrating a bit of iq.

b.) People negotiated part time and still had pretty good career. Some people worked long hours, but it was by no means required (ok, you had to be assertive and say no and stand your ground, but in the end nobody could afford to punish you for it).

c.) Nobody cared about things like culture fit (as someone below cares - did you grew in right culture?). They were starved for people doing the work.

d.) I have seen old programmers.

Not all of that was shining, specifically some people should not have been hired. I am not saying it was some heaven on earth awesome in everything for everybody situation. Just that the environment was different.

Markets are only efficient under the assumption of perfect information. There's no point offering higher salaries and better working conditions to attract top talent if your hiring process can't measure that talent.

I like your analogy. I may have an insight into why the theory of hiring just talented people does not lead to guaranteed success (regardless of whether they come from a disenfranchised group or not).

The problem is that the skills of an individual are only part of the formula for success. In team sports and in companies, people need to work as a group to achieve a common goal. This involves leadership, management, teamwork, and individual contribution.

Super talented people, by definition, are great at individual contribution. They may be good team players, or they may not. Their individual talent is not a barometer of how good of a team player they are.

Add to that the management skills of the coach or team leader. If they're lacking, even skilled team players will have much lower chances at success.

Finally, there is leadership. If inadequate, there are no clear goals, there is no culture, and no guiding principles. Progress will be made haphazardly, at best. Long term success will be severely compromised without good leadership.

The marketplace is not failing. The ingredients to success involve more than superior individual talent.

I agree that it depends on much more than talent, but that hypothesis wouldn't explain discrimination against older workers: There's no reason older workers would be less capable in the non-talent aspects of what you describe, and there are strong reasons that they would be more capable: Experience, acquired skills, and maturity.

On the other hand, part of creating a team is fitting in, and many organizations take the easy way out and avoid diversity on their teams - even though research shows that more diverse teams produce better results (what good is the 8th team member with the same experience and frame of reference?).

> The marketplace always seems to fail in situations like this one

The free market fails because ageism, sexism, racism is cultural and sometimes so deep we don't even realize we're doing it.

To a lot of HR types even now, being an older programmer is seen as failure as they cannot understand why you wouldn't move into management.

HR will probably catch up, but for that to happen we need to keep talking about it and showing that it's an issue and it's actually better to give some of these people a shot.

The free market optimizes in a way that isn't "fair". Young people are measurably quicker thinking and willing to work longer hours for less pay. They cost the company less in insurance and sick pay as well. Young males tend not to have familial responsibilities and don't get pregnant.

Then you have race, where hiring white people is seen as the safest option for the business because they generally aren't discriminated against. It minimizes the risk of your company getting a bad reputation with certain groups, and minimizes the risk of lawsuits when you need to fire people.

With business the market isn't cultural as much as it's about maximizing profitability. That still doesn't make it fair.

Young people may be measurably quicker thinking and willing to work longer hours for less pay, but that doesn't help when they lack the skills and experience and end up making the wrong decisions.

Older people generally aren't willing to work for the same low pay because we have enough experience to justify it.

This kind of discrimination is peculiar because the exact same people are often sought after if you only change their title. E.g. as a consultant I'm sought after at a far higher price point, and my age and experience are a big selling point, where trying to apply as a regular developer would make people wonder what's wrong.

This is more of a perception and marketing issue than it is about young people having an edge, and the pereception comes down to the same reason we ascribe more value to e.g. an expensive watch than a cheap one: Signalling effect.

Being a developer at 40 signals to a lot of people that someone doesn't have the skills to get promoted, because they don't understand that you can be a developer and do stuff any random CS graduate could do, or do stuff that makes you one in a million without getting fancy titles.

Conversely, being a consultant signals to people that I must be able to do stuff other people can't.

You see the signalling effect clearly when pitching for work as a consultant: I have conversations with people that are 90% about me telling them whether or not I can do the work, rather than being interviewed by someone who is trying to figure out if I can do the work. The assumption is that my judgement can be trusted because I'm a consultant rather than some "lowly developer" applying for a job.

Seeing the difference in respect and attitudes (and money...) makes me even more determined not to go back to normal employment.

(There's also a subtle difference there between attitudes to presenting yourself as a "consultant" vs. "contractor")

> you can be a developer and do stuff any random CS graduate could do, or do stuff that makes you one in a million without getting fancy titles

This seems to be the problem at the heart of a dozen disparate issues in software hiring and management. Standard HR and management systems are largely unprepared for the idea that two people with the same title (or even the same degree, from the same school, in the same year!) may have almost-unrelated skillsets. Treating two people on the same team with the same job title as completely non-interchangeable just doesn't happen.

I'm not sure what you mean by "getting a bad reputation with certain groups", companies fall over themselves to appear "diverse", to the extent of hiring people to make it so..

A lot of companies try to have their cake and eat it too, and continue practices they know will lead them to stay white and male while putting together "diversity committees" and the like to appeal to minorities.

E.g. my ex works for a bank where she is on a diversity commitee, where the constant frustration is that the bank is only willing to take actions that everyone knows will have very little effect: The underlying problem is that they continue to insist to hire mainly from schools that predominantly have students from wealthy families, and are skewed heavily towards white students to the extent that if they took the entire graduating classes for the next decade without considering results, they'd still not solve their diversity problems.

But any suggestion of widening their search to less elitist schools and focus on results instead gets shot down instantly.

Thus they remain mostly white, while holding all kinds of diversity events etc. to look like they're trying hard to solve the problem.

To be fair to them, they're happy enough to hire minorities from those schools. The point is they know that will not address their imbalance, and all their other diversity work is window dressing. I don't think it's because they have anything against hiring non-white people, but simply because they care more about the prestige of the schools they hire from than they care about diversity (even if you could guarantee to only consider candidates with equally good results).

I think you will find this many places.

TBH 'prestige ' is fine, sounds like the schools have a diversity problem?

Any school were admission is wealth driven has a diversity problem, and it is self-perpetuating.

As for whether it is fine, that depends on whether they actually care about their diversity goals, and whether prestige is in fact more important to them than job performance. I'd argue that it is likely "prestige" here is simply used to enforce informal social connections and to some extent to avoid diversity at the cost of job performance. If I'd been an investor of said bank, I'd consider it a major concern.

You're saying investors would be concerned that they are hiring for diversity, rather than from prestigious schools?

What do you mean by "avoid diversity at the cost of job performance" - are you saying diversity improves performance?

No, I'm saying investors should be concerned that they are preferring prestige rather than hiring the best candidates regardless of school background, and that given how unrepresentative the schools they hire from are, this is contributing to keeping diversity down and makes a mockery of their own stated commitments.

The internal data that the group that is tasked with improving diversity (and that is largely being ignored) at this particular bank shows that being equally strict about results but considering a wider range of schools would increase diversity and would allow them to actualy do so while making their hiring cirteria stricter. This gets brushed aside, and then the bank keeps complaining about how hard it is to be more diverse afterwards.

In other worse: They are hiring less qualified candidates and use the prestige of the schools as an excuse for avoiding hiring more qualified candidates that would also bring more diversity.

Political realities can ruin your reputation with some customers. The business goal is to maximize profits even if that means not hiring black people in the southern US, or LGBT in Russia for example

If the problem is overhiring not underhiring then there's no market failure: companies waste dumb money on hiring reams of sexy culture fits, smarter/leaner companies hire broadly but selectively at appropriate volumes.

Older and otherwise non-traditional devs miss out on an undeserved windfall, but the market pressure is on drying up the hiring binge not on broadening the high-demand pool.

Honestly I think its just economic decisions by short sighted management disguised to others as a social issue.

Not to discredit the real ageism that exists, but far more often I think its the fact that older, saltier people are going to demand a higher wage, more work life balance, and see through bullshit easier. All of those things are negatives for a middle manager trying to fill a role. That's right, they become more focused on the task of filling a role than about solving the companies issues.

I'd wager that if you got old farts to agree to the same bullshit terms pushed on younger people because they missed Legal Contracts 101, the gap would shrink.

What's funny to me is that a contractor I was the dude picking up the pieces after the technical debt inevitably bit them in the ass, so in the long run companies that make decisions like that end up paying more for them.

I actually gave up my share of my first startup because it was built on exploiting this fact, and I felt a proper counciling of the customer would include something along the lines of "we are more expensive than a full time person, but do less than a tenth of the work of one since we split our time between many clients, therefore we should be a temporary stopgap and a continuing advisory position", which obviously didn't go well for an msp style it support company.

I'm increasingly convinced the business world is full of short sighted incompetence.

> I actually gave up my share of my first startup because it was built on exploiting this fact, and I felt a proper counciling of the customer would include something along the lines of "we are more expensive than a full time person, but do less than a tenth of the work of one since we split our time between many clients, therefore we should be a temporary stopgap and a continuing advisory position", which obviously didn't go well for an msp style it support company.

My selling point as a consultant is "I am more expensive and should be a stopgap and ongoing advisory position".

I can push my rate up more by basically marketing myself as an expert / luxury / problem solver.

It means I get rejected more, but it's worth it over time, because I know when people call me later, it's because they have problem where they won't quibble over my day rates, because they're calling me about things they know their regular staff can't handle and that it'd be very expensive to hire to solve.

It also avoids the issue of having to justify my price with bullshit and arguing over timesheets.

But I can certainly see someone trying to scale up a business around it finding it easier to try to pretend they're a good way of replacing hiring.

> and see through bullshit easier.

This one resonates with me quite a bit.

It is much easier to take advantage of young inexperienced people.

Point 1: I see a lot of highly-upvoted comments blaming management for why engineers are messed up. Hardly surprising for such a venue, I guess. If we're going to blame management, though, perhaps we should look at why the managers themselves are messed up. Personally I think it might have something to do with the conceit that management is the uber-skill, so important in itself that a couple of years (at most) of generic training in management qualifies a person to manage any activity effectively even without a shred of domain knowledge. Pfeh.

Point 2: maybe not all of the blame lies with management, and the most important exercise for a crowd of technical people involves introspection instead of blaming others. We get enough of that in politics; we don't need a bunch of little techie-Trumps playing the same tune. Some of the blame belongs with the engineers themselves, who hoodwink naive managers or exert peer pressure to create a culture of deliberate ignorance. When "disruption" is one of the most popular words within an industry, it's easy to lose sight of the fact that even one's thoroughly disrupted predecessors knew a thing or two worth learning. Good software engineering is a lot like recycling - instead of incinerating all "legacy" code just because it's legacy, find the parts (ideas) that can be used as part of something new. New solutions to old problems can be found without having to reintroduce the old problems in new code.

> a couple of years (at most) of generic training in management qualifies a person to manage any activity effectively even without a shred of domain knowledge. Pfeh.

+1 to that.

However, it cuts both ways. Being an engineer with a recently bolted-on manager responsibility, I am struck by the many ways that nothing in Engineering or Science prepared me for dealing with the people side of management.

I've said it before (in fact, I've given entire presentations on it :) - technical managers are the "Bard" class, if you play D&D.

It's at its core a multi-skill/prestige class, it's really hard to learn to do right, everybody makes fun of them ("hey guys, I found the bard!"), a successful party really needs them - and the way they make things happen is by augmenting the rest of the party subtly.

Which means you need to dump a whole lot of skill into Charisma, and up your game of fascinate.

(If you don't play D&D, apologies for totally nerding out. If you do, leveling up a Bard and becoming a manager is really surprisingly similar. Just don't bring a lute ;)

Good analogy. I think more generally managers could be considered a "buff" class. Since I've played LOTRO I can say the Captain sort of plays this role. There are probably WoW and ESO equivalents, but I haven't played those. But this leads to an interesting exercise. What are the corporate equivalents of other RPG roles? I have my own ideas, but let's see what others come up with.

Engineer -> Wizard (high INT) Tech lead-> Shaman (WIS/INT) PM -> Warlock (high CON) UI -> Monk or Rogue (DEX) (OK, that's stretching a bit) Customer support -> Paladin (STR) Testing -> Ranger (STR)

This double-bind seems like one of the deepest problems in software management.

At high levels and large companies, managers are often trained in 'management', without any of the domain knowledge needed to understand their choices. But throughout all levels of the industry, the alternative is raising engineers to management with only a seminar (or nothing at all!) for training.

It seems fairly obvious that effective technical management involves two different skills. But I virtually never see people react to that knowledge and seek (or train) expertise in both domains. As a result, the best management seems to be from engineers who are naturally adept at management, or eager to learn on their own.

Project management is already its own skillset. Do you think people in your position would benefit from some short-and-intensive course in "software team management"?

Most companies I have ever worked for did used the "bolt-on" method for creating engineering managers. "Roger is really smart, and we want to reward smart people, but in order to give him more money he needs to be a manger, so poof Roger you're now a manager! Go off and figure out how to manage!"

What we need is more companies with robust technical career development that does not necessarily involve management.

A solid solution is to have a professional union/association with a meaningful exam for entrance, meaningful certifications for specialties, and the mandate to avoid committing professional malpractice (strike/walkout enforced). The ACM could do that, but has chosen not to: the IEEE's attempt is sort of a joke.

Having spent the last 3 months totally involved in the US medical field regarding a family member's life-critical condition, I can say with confidence: the professional credential/certification process works really well when built well, and software engineers with an interest in seeing our field should strongly consider the medical community as a working example - remember - "rough consensus and running code".

And aviation. Not pretty but it definitely works.

I definitely agree that good professional organizations and well-functioning unions and good worker protection laws gives a good total system.

However, one thing that must be kept in mind when comparing to e.g. healthcare or aviation is that progress in those fields happens at a pace that's positively glacial as compared to software development. The development time for new airplane tech or healthcare tech can easily be a decade or more. At that pace, employers don't perceive "you're old and don't understand the new stuff anymore" to nearly the same degree.

Some of the stuff that happens regularly here in software land is like if suddenly accupuncture became the best cure for most diseases, or if pilots were given new planes with flight controls manipulated by moving your eyelids in a special way.

Can you cite specific improvements in the past 5 years that aren't more reinventions of previous wheels?

Yes, this old saw that software changes so quickly that only kids can keep up seems BS. I've been a developer for 30+ years and I still do the same thing I've been doing for years. There's some new frameworks that come along that arrange things a little differently, but if you know C (well) then all the other things are just variants imho... and yes I've built web apps, coded industrial micro controllers, written SQL databases and so on. The things I learnt last century I still use every day. (Though I would say the level of quality and documentation has decreased and unnecessary complication has increased since the 90's)

I won't say anything as to what is good progress vs. reinventing the wheel. For the purpose of this discussion, I don't think it matters much; if employers expect you to code using React/Angular/Bootstrap/whatever, it doesn't matter if you think those are inherently good progress on previous tech or not.

And there are definitely software devs working in fields that change more slowly. But if you take web development as we frequently do around here, e.g. the joke article posted yesterday about "Hello world" in PHP does provide some good examples of stuff that's changed dramatically in the last five years.


Convolutionnal neural network (called IA in the news, will automate previously safe jobs)

Upgrade in hardware

Bitcoin technology (made it's way into traditionnal banking)

And if you want more thing into programming:

In the last 15 years the Racket team has came with contracts (something with high order function that didn't existed before), gradual typing which generate contracts, macro composition. None of them existed before.

I'll take bitcoin and NN advances as highly valid and true responses to my query (although tbh I think btc is a bit older than 5 years). To answer my own question, I think Rust is a substantive improvement.

But, that really doesn't affect the vast bulk of programming: what we do isn't changing that fast.

We changed many, many details. Polished many tools, even completed replacing a few more fringe ones.

Now, take a look of what changed in aviation tech in the past 5 years. I don't even think you'll be able to. Aviation does not change on that speed - your 5 years time frame is nonsense there, like asking what changed on IT in the last half hour.

Aviation tech isn't stagnant because of their unions and professional associations. It's stagnant because the FAA mandates it be stagnant. Go read up on what you're allowed to do with a Cessna you just bought. You can't so much as run a USB charger out to the front panel without the FAA coming down on you like a ton of bricks. Disruptive avionics start-up? Get real.

And imnsho that's a good thing. Experimental aircraft are labeled experimental for a reason, and anything that gets sold for general aviation purposes should do what it says on the tin, no more, no less.

If aviation adopted the 'move fast and break stuff' paradigm it would be the end of aviation as we have come to rely on it. No doubt there would be a huge amount of technical progress in a short time but for the purpose of enabling commerce and having reliable transportation it would be an absolute disaster in every sense of the word.

I'm just pointing out the root cause being regulatory and not the existence of professional organizations. I personally find the dual-world "experimental" vs. certified regulatory environment to be a pretty good compromise.

> I personally find the dual-world "experimental" vs. certified regulatory environment to be a pretty good compromise.

Agreed. The accident rates in both categories are also a good indicator.

Agreed. But that means that progress in aviation does happen in a slower pace, and that must be taken into account when comparing with other areas.

Purely functional UI (React) stopped being fringe academic topic and became a mainstream.

But tech like Flux and Redux are clearly derived from the Command pattern (of course i've never seen or heard reference to these patterns in the docs or videos for for flux and redux), and also seem pretty similar to Java enterprise patterns so arguably were already in the mainstream 10 years ago (at least). See http://www.corej2eepatterns.com/Patterns/ServiceToWorker.htm http://www.corej2eepatterns.com/Patterns/FrontController.htm http://www.corej2eepatterns.com/Patterns/DispatcherView.htm

I work daily with javascript and enjoy it but it frustrates me that people treat aforementioned tech as cutting edge but these ideas were already around a long time ago. The counter to this is that javascript is finally maturing and starting to use these patterns which is a positive thing, I just wish the people promoting these "new" technologies would give recognition to what came before.

I certainly can relate to everything that the author expresses. However, I'm also quite certain that this is not exclusive to the software engineering disciplines. Somewhere around 2004 or so, I began seeing many US companies (including many large ones) abandoning analysis and planning and lots of other proven PMBOK type activities in favor of more reactionary methods.

When I talk to many people under 35, across fields, they often complain about workplace disorder, mismanagement, and lack of planning. They also complain of an overload of work and of working too many hours. I don't think this is a coincidence.

> Somewhere around 2004 or so, I began seeing many US companies (including many large ones) abandoning analysis and planning and lots of other proven PMBOK type activities in favor of more reactionary methods.

This was corporates adopting their own version of the agile development methodology.

Unfortunately I can tell you large corporations with a lot of inertia and managerial politics don't mesh well with agile, so you end up with poor planning, pants on fire fixing, overworked employees*

* anecdotal evidence

In other industries, the the wisdom of experienced workers is the only thing that keeps capital from completely fucking over labor. Why don't experienced workers play the same role here? When I read stuff like this by experienced workers, I sometimes hope to see that question answered...

A big part of it is that what we do is literal magic to the uninitiated. We wave incantations with our hands upon the keyboards, and the uninitiated do not understand how this turns into the world we have. It's invisible, untouchable, and and the expert wizards have collectively refused to provide a meaningful system for determining what is good vs what is bad. In other industries there are things like certifications that mean something or guilds/unions/associations where membership means something, in the software world, the gurus have refused to build an association/certification system of meaning, citing libertarian ideas against it. Since this helps the forces against labor, our management likes that idea too.

I would eat my own hat before I let a "guild council" dictate anything that could impact my code style or the way I do things.

The lack of centralized control is a good thing. In other industries you can be barred from even working in the field if the "council" doesn't like you.

Things like the lawyers' bar are complete bullshit as a concept in themselves.

Well, I've been touting a guild to break out of the horse trader circle where you're evaluated from the keyword search on your cv, the alternative being worse: codility. What's wrong in having a professional guild that makes you more than an FTE?

> I would eat my own hat before I let a "guild council" dictate anything that could impact my code style or the way I do things.

That attitude is exactly why we have quality and fad problems. ::shrug::

That attitude is also why we have nice things like Linux and AWS.

Are you sure about that? MS and Windows came about in a world with his attitude. If we had had a guild, would Windows have become the dominant desktop OS? Or would UNIX have persisted instead, and Linux never been invented (as a reaction to MS's dominance and the demise of UNIX)?

Besides, isn't the argument here that a guild would enforce more conformity upon professional programmers? Linux wasn't made by professionals, in the beginning; it was made by a college student who then collaborated with other academics. A guild can't prevent that, any more than it can prevent people from buying copper pipe and fittings from Home Depot and fixing their own plumbing. And further, how long did it take before companies really started taking Linux seriously? It was ages before free and open-source software finally got (mostly) past the attitudes that hindered its adoption in corporations. I don't see how a guild would have changed this at all.

Linux is centrally controlled by Linus and AWS is centrally controlled by Amazon. I guess I'm missing your connections between those two things and de-centralised control.

Things like the lawyers' bar are complete bullshit as a concept in themselves.

Since at this point the marginal benefit to the populace for each additional lawyer is negative, I'm glad the Bar has done even the little it has to limit the number of lawyers. I certainly wouldn't want to see an even less regulated market in lawyer service... eventually when most coders are coding pay2win games we'll have some regulations imposed from outside.

People who "made it" are always trying to restrict the field. The excuses are many - protecting the poor, the quality, the children... but the reality is always "we are afraid of the competition".

in the software world, the gurus have refused to build an association/certification system of meaning, citing libertarian ideas against it.

Associations and certifications don't necessarily have to involve the government. Various professions in various countries have non-government certifications that are well regarded (one such example would be a Bachelors Degree).

Unless you are making the arguing that libertarians are opposed to certification in general, whether the state is involved or not. In which case you've completely lost me.

- I'm being slightly loose with my terminology: the general libertarian notion (as expressed by a sibling comment) that "the Man Isn't Supposed To Control Us, Ever, At All" is what I'm meaning.

- A Bachelor's degree is well regarded, but it is not sufficient to demonstrate competence. A working certification system demonstrates competence on the part of the certification-holder.

The problem with having no government involved in these things is that inevitably someone is going to ask a software engineer to do something that's "Legal But Unethical", and the question at hand winds up being: can the person be fired for this(remember, this is the engineer's career and livelihood)? And here we find the Law being involved. Or we find that building really bad software impacts people's quality of life in measurable ways, but the market won't improve the software. Infrastructurally, this requires a coordinated effort.

This specifically is why unions and the law's intruding are so entangled: companies can be extraordinarily abusive to their employees; they can also be abusive to their customers (monopolies are distrusted for this very reason). And the proper recourses here involve significant fines and/or jail time - meaningful mechanisms of discouraging misbehavior.

> Various professions in various countries have non-government certifications that are well regarded (one such example would be a Bachelors Degree).

Degrees are an absolutely awful example of a non-government certification. They're given out by institutions that are almost universally state founded, run and regulated. The US probably has the most private universities as a proportion of universities of any nation and I doubt they break 30%.

The IEEE attempted to fix this by writing the Software Engineering Body of Knowledge (SWEBOK) and building a certification program around it. But that effort seems to be mostly dead: the guide hasn't been updated since 2004 and few people have taken the certification exam.


Because capital keeps telling the young developers that they’re smarter/quicker/more adaptable than the older ones. It's a seductive lie.

It isn't just a lie - they're more impressionable.

Tell them they're smart, they're critical! and then work them to the bone until you can replace them with the next batch of the bright-eyed and bushy tailed.

Which is why technology churn and cultivating ageism are so useful. It's a fabulous cover for the con. That person didn't get death marched into burning out in his closet sized apartment. He turned 30 and couldn't hack React. Hey, check out this Ayn Rand novel...

What does anything you have written have to do with Ayn Rand novels?

All the other industries have capital. Why doesn't capital tell the younger workers in all those other industries the same seductive lie?

Short time frames and code quality being less visible to customers than construction or build quality of physical goods. It's a lot easier to build a (really shitty underneath the hood) app without experience than to design or build an airplane without experience. In most cases you can dump a good chunk of your stake for a massive profit before the poor infrastructure and maintenance costs become an issue (the Twitter "fail whale" and rewrites are the outlier here, I think, where the scale came much faster than the payoffs).

Maturity. Not every industry can sustain a "move fast and break things" mentality. Software is fairly young in terms of capital investment growth. Wait till it becomes as boring and grave as manufacturing.

Yeah, no kidding. Think of how every time unionization comes up here, you'll see dozens of people chiming in with "but we're really well-paid already!" or "I can negotiate for myself!" or whatever. Never even thinking about how much better they could be paid if they worked together to demand a larger slice of that sweet, sweet tech pie.

It's crab bucket is what it is.

Assuming that being old makes you wise is as much trap as assuming it makes you stupid.

Being a Software Developer, a "socially invulnerable" person, I won't be bothered by people saying something as misguided as "all your experience is obsolete". I'll have a good laugh.

I think some of us take themselves a bit too much seriously. As a programmer, you have not just First World, but actually Zeroth World problems. In the world of struggle we are having a guilt-free easy ride.

Implying no software developer has financial problems.

But you know who has worse financial, employment, work-life balance, motivation problems? Almost everybody else.

These posts read as "please somebody solve it for us." But we are the solvers. Think we have problems with older developers employment? Influence a hire of a team of them. Who will do that for you?

These posts read as "please somebody solve it for us."

Not really. They were pointing out a problem. Highlighting a problem isn't the same as pleading for help.

This reminds me of https://xkcd.com/1232/

At what point is it ok to talk about your own problems? Only when no one else has worse problems?

Think we have problems with older developers employment? Influence a hire of a team of them. Who will do that for you?

I can't figure out what you mean. Could you clarify?

I'm all for pointing out problems.

I do it all the time and probably bothered a good amount of my friends.

I just find this problem reported massively more than it is worth. Everybody who cares even a bit is long aware. Today, I will appreciate posts on "what we did about this problem already". And I have already seen one just recently: https://news.ycombinator.com/item?id=13194074

I believe the trends the author has pointed out are not just the failings of the tech industry but are part of a larger cultural backlash against expertise.


There is no cultural backlash against expertise. That's a comfortable fantasy that a handful of self-proclaimed "experts" who have been consistently wrong are telling themselves, mostly people who attempt to predict the future but are not self-aware enough to understand their own biases.

I have yet to encounter any obvious or recent drop in regard for doctors, geologists, chemical engineers or indeed software developers, probably because none of those job categories make money by attempting to influence government policy via dubious predictions about the future.


Is this a monthly bandwidth limit issue or an Apache on slow servers issue?

How much traffic is required to be considered slashdotted these days when running a simple blog?

Tangenting away from the OP, but curious because I'm getting into setting up and running my own web server for the first time, and while I don't expect to be slashdotted, it's something I'd like to prepare for.

Unfortunately, it's just bad design that's very typical of the 'modern web' these days.

My site didn't even top 5% of its resources when it was on the front page of HN, Reddit, Kotaku, Destructoid, Eurogamer, The Informer, Slashdot, etc all at the same time. (Well okay, Slashdot four days later.)

You don't need Node, Ruby on Rails, PHP, Apache, PostgreSQL, Wordpress, etc to serve up a simple text blog that you post on once a week. If you put all of that on a $5/mo VPS, it's not going to handle any kind of serious load.

We're mostly all developers here. It's not even a weekend project to set up a simple blog from scratch.

Host your site on nginx, don't include a bunch of massive Javascript libraries, serve your content statically or without using a dynamic scripting language, and you'll be fine.

And, if you want to have a "dynamic" site, you're likely to be ok by just shoving varnish[1] in front of it. I guess if your comment system is based around a php-script that does 10 separate round-trips to your database per comment shown/posted along with cache-busting, comments might break, though.

One thing I'm not certain of - I recall there was a significant overhead to running a site on SSL vs plain HTTP (mostly due to key negotiation - the initial session setup). That overhead is still there (even if running something with http2 support, like caddy[2] should help a bit). What I'm not sure about, is how much CPU time a typical $5/mo VPS has compared to the dedicated webserver I managed to run into the ground due to a miscommunication that led to a https-link being sent to media outlets rather than the http-link (the server wasn't really specced to do https). This was around 2005 though, and the server was already a bit long in the tooth.

[1] https://www.varnish-cache.org/

[2] https://caddyserver.com/

Something that caches dynamic responses will certainly work as well. Usually those are situations where you want content changed on every reload, though. My site is actually dynamic as well, but it's just C code that concatenates three files together, and does just a tiny amount of metrics at the end.

I'm not going to say my design is maximally efficient, because it definitely isn't. It's just that 'modern' dev creates sites that are orders of magnitude more expensive to construct pages with. That stuff works for major corporations with data centers. It doesn't work so much when you're one of 256 instances on a single blade server inside a single data center hosting 20,000+ servers.

Also, when it comes to HTTPS, my site also uses that. HTTP redirects to HTTPS, and the TLS used is very strong 256-bit ECC.

The biggest cost to crypto is definitely for people living overseas from the server location. The added round-trip inherent in TLS v1.2 and below slows things down for international visitors. But ... I kind of lost it when my own ISP started injecting falsified HTTP responses to redirect me to their "maintenance notifications." I don't have the luxury of switching ISPs, so instead I'm moving everything possible to HTTPS.

use static html with a cdn or something like s3. it's probably cheaper, has basically no operational overhead, you don't really have to worry about being overwhelmed by traffic.

None of that is even necessary for text-based content if you just use an efficient web server (that's most of them, today) and static content. If you have a lot of large media files (not the case here) it's another story.

yeah but using a hosted service gives you the freedom of not spending time running a webserver

(side point: in my new company we did a SWOT analysis and one strength was "old farts" -- we've already made tons of mistakes and have learned a lot.)

I didn't see the original slashdot discussion so didn't have context, but IMHO the phenomenon described is more that programming in the USA and Europe has become a blue collar job, as it has been in Japan for decades. I think this is great -- the tools have become strong enough that someone with limited (but nonzero) training can produce solid apprentice and journeyman work. (masters, well, I know I will never be even close to some of the master machinists I've been lucky to work with; they can't craft code like I do).

The fact is you don't need a programmer to throw together a viable web site. Isn't that great!?

Innovation is still coming out of computer science and trickling down into the real world. And highly experienced programmers are also contributing cool stuff. But as programming has opened up as a discipline to a significantly larger pool of people, is it any wonder the density of new ideas per capita would go down?

(oh, and CS has always scorned reading the literature, to its detriment).

> more that programming in the USA and Europe has become a blue collar job, as it has been in Japan for decades

I wouldn't use Japan as your data point to champion programming as accessible to the common man. One only needs to suffer through a few domestic websites to know that talent is sorely missing.

Pay peanuts, get monkeys, etc.

I live in Japan and have friends and family members who work in large companies as programmers. None of them started out to be programmers. None of them particularly wanted to be programmers. One of them was the secretary. One day her boss dropped a whole bunch of books on her desk, "You're the new programmer". Rationale? She could type.

Which is not to say that there aren't great programmers here. There are. But the average view of a programmer at large companies (not high tech), is that it is a pretty junior position.

About this:

"I’m not bitter; I just believe we’ve fallen into a bunch of bad habits in our industry which need a good recession and some creative destruction to weed out what is limping along."

A recession might actually make things even worse. At least part of the problem in the industry is the growing power of monopoly. Firms are increasingly protected from competition, and therefore bad habits can thrive because the bad habits are not enough to bring down the firm. That is, there isn't enough competition for the firm to be hurt by its own bad habits. And this lack of competition goes back to the declining rate of new company formation:


Also, see this chart:


Well the Google Apple non-poaching secret agreement demonstrated who's a filthy communist. Right?

I believe much of the problem mentioned in the article is about us not being software engineers but only programmers/coders. If we, as an industry, would have adopted engineering discipline instead of producing systems in light speed by just coding, what we are talking now would be different things.

This is my view as well. But I'll go further: I believe there is an almost​ active hostility toward engineering, as if it's viewed simply as something anyone can pick up, like the much derided "liberal arts."

In case anyone else is wondering, this is the original Slashdot discussion: https://ask.slashdot.org/comments.pl?sid=10352645&cid=540224...

I don't think it was linked in the post.

The author is quite arrogant himself. What's wrong with looking up solutions for complex problems on StackOverflow? It saves a lot of time and in most cases will end up better than what you come up with on your own, because it has been tested and improved by hundreds of users. And if you manage to find an improvement, share it to make the code better.

Reinventing the wheel every time is stupid and it really seems more like he's the one not able to adapt. When I can do the same things faster and better than you, because I make use of available resources, then I'll be the better choice for most employers, regardless of the age.

Experience is good, but constantly learning and adapting is even more important in this industry and he seems to think he doesn't need to do that.

I took that the author didn't assume that experience (which seemed to be assumed in the article to be positively correlated to the length of career) was the only factor---lack of proper training, including knowing "classics", was also the issue. I tend to agree the latter premise, although I'm not sure the situation is as bad as the author describes. (The author says "I can’t think of a single developer I’ve met professionally who belong to the ACM or to IEEE". Is that really the case?)

IMHO, it's ok to lift answers from SO as long as 1) you know it's a shortcut and 2) when necessary you can trace back the history to the origin so that you can know the original frame the technique was invented and how it was modified along the line. A good solution in a certain context might not be optimal for your context, even though it has been improved by many.

The second point requires a certain level of skill---able to search and read CS papers and implement by yourself or incorporate the ideas into your domain. Without having proper training, it's difficult to acquire that kind of skill solely from skimming SO and alike. But I'd like to assume that graduate-level CS course do give such skill, and by experience you can hone it.

I do note that some answers in SO are pretty decent, with references to the original papers. When I answer online questions I try to do the same as much as possible within my ability and knowledge.

> (I’ve met programmers with years of experience who couldn’t write code to maintain a linked list.

FFS, our industry is huge and there are many problem domains and many specialized areas of expertise, most of which don't require you to write linked lists. It's like expecting someone who's building windshield wipers for a car to also know how build an alternator (this analogy may not be great, but you get the idea).

I'm sure if someone spent half an hour brushing up on linked lists, they could easily create one. If you don't do something a lot, you forget. You get rusty. Why is this so hard to understand? This is true in any discipline.

C'mon man. A linked list.

edit: To use one, you need a mental model of how they work, so you should be able to write one. Not a great one... just one that works.

I suppose you're right, but really, in what context do you need to do this? I've never had to do this in over 15 years of software development. I remember learning LLs in college, and it's good foundational knowledge -- it teaches you how to solve problems. I'm not saying we shouldn't learn these core concepts and algorithms, just that some people want to feel better about themselves and make others feel inferior when they can't remember something at a moment's notice, especially something they haven't used in over a decade.

I had to do something like this a year or so ago -- built a malloc in js for managing WebGL memory blocks.

I might need you to build something listy on disk, and I would say, "you can give the records two-element headers and make it work like a doubly linked list"... you would know exactly how to do that.

A linked list is one of those things everybody thinks is trivial to write until they actually try to write one that supports all the normal operations and actually works in all corner cases.

Which is one of the reasons why we give it has homework in college. Not because you're going to do it in the workplace, but because (a) you see how the implementation entails the big-O behaviour you learned about, and (b) it's simple but tricky, thus training you to consider every aspect carefully.

Aspect (b) is why people ask about it in interview questions. You are not expected to remember the details, you are expected to think about them as you go.

What are all those corner cases and hard problems? I routinely ask interview subjects to write code to manage a linked list (it was a small part of a problem in a previous job), and I've been asked to write a ll class.

Writing a linked list is like hiring someone to be a professional driver, and you want to make sure they know that you can change tires, and that one should adjust mirrors to be able to see behind the car.

One factor that I think plays into this dialog is that we learn quite a bit over time without realizing it. As I grow older, I sometimes find myself thinking, "I know this, but I know I didn't intentionally learn it."

What I realize is that I know it because of life experience and there is no way I could have learned it (or maybe it's a realization, not a learning) without having lived through all those winters.

The impact of this is that as we gain experience, we can be more deliberate and selective about where we focus our talents and energy, entering into fewer endeavors, but have a higher success rate per endeavor.

I agree. As a 50+ programmer/CTO I freely admit I'm nothing like as quick as I used to be at pure coding. I marvel at what some of the youngsters at work can do. I took a good long time out in management but even so, age catches up. YMMV.

But I'm way better at knowing what to do, and recognising how not to approach things.

My belief is that as you age, more and more of your brain is turned over from processing to pattern recognition.

If only my communication skills had advanced apace, so that I could convince others with less effort )

Some say this youth-culture obsession is a US workplace problem. That may be true.

To my way of thinking it's a Sili Valley workplace culture problem. Sili Valley is a high-rent district, and doesn't favor people who need more than minimal housing, unless they've already made it big.

Also, Sili Valley is all about the new new things. It will be interesting to see what happens to the present crop of Sili Valley giants in 20 years. What happens when Page, Brin, and Zuckerberg turn 55? What happens when the rapid growth of their companies slows?

Maybe they retire and start concerning themselves with scenic easements and other perqs of the hyper-rich. Or maybe they try to keep reinventing themselves and the companies.

They may make the same mistake Digital Equipment made: responding to a slowdown with a hiring freeze. Once a hiring freeze is imposed, a company loses access to new people and the ideas they bring. The median age increases by one year for every calendar year that goes by. There's nothing wrong with older folks, but not all of us can be managers.

They may make the mistake MSFT made in the first few post-Gates years, and that AAPL is in danger of making now: laurel-resting and inward-turning.

One of the problems of measuring age distribution is this: Averages don't mean anything. Many effective orgs have lots and lots of fresh young faces and a dramatically tapering age pyramid. Military services are a case in point: Sure, the median age is 22. That's because they have vast numbers of 19 year olds. But they also have lots of 30 year old captains, 35 year old majors, and even older colonels and generals.

I'm a developer who started on Hollerith 80-column punch cards. I'm still doing good work. Others can too. But not in Sili Valley: we have too much sense to jump on the latest js framework.

I've always wondered whether the descriptor young startup /young company etc. in a job post is put in to warn off older (>30) people from applying.

Which can be depressing when you search http://stackoverflow.com/jobs/ for the word "young".

Interestingly, companies don't tend to describe themselves as "male startup", or "white startup"...

tl;dr Language matters.

One of his points is key and seemingly goes unmentioned in these comments. The total disregard for software engineering (the field of study, that is) by developers. Even the very basics of software engineering are unknown, and if mentioned, frequently discarded if they don't fit with the zeigeist.

I seriously considered getting an IEEE membership for a long time, but decided after several long conversations with people in the field who had one that it was not worth it.

Like with Linux User Groups, I think a lot of it depends upon your local section.

I was an IEEE student member all through University so that I could participate in IEEEXtreme[0]. I did eventually become involved in the student branch and attend some local section meetings. I think that IEEE loses a lot of their student members after graduation. As a "young" professional, I'm not sure if there is much value. Most of the young professionals I met were past chairs of the student branch (within the past 5 years or so). The rest of the section seemed to be much older folk (like 40-50+) - both in industry and in academia.

[0] http://www.ieee.org/xtreme

For someone who laments the failure of modern programmers to learn from the work of the past, the author seems to completely ignore the contributions of ML, ML-style type systems, and related languages to the profession of software engineering. Perhaps this explains the snide (and, frankly, uninformed) dismissal of Swift as a hype-ridden "subset of Lisp".

Aside from that, I agree with the author's points.

This perception causes discrimination which is illegal (if you can prove it)

This is why there are a host of lawsuits for ageism and a bunch of job portal like https://www.giantsforhire.com/ or https://oldgeekjobs.com/ poping up

I keep on reading about ageism in this industry, but haven't observed it myself. Yes, devs are over-proportionally young in the companies I've seen, but from my (limited) insight into recruiting, this roughly reflects applications. Also, it's not that most of the devs in the companies I've been are just fresh out of university; about half of them are 30+ years old. My impression has always been that this just reflects the growth of the industry and related increase in graduates.

Quite possibly, this "young, dynamic, better" culture is more prevalent in startup-heavy areas like the US or eastern Europe, as opposed to western Europe where I live.

We don't really have a great required body of knowledge or mandatory licensing for people to work in the field. The whole industry is still in the Middle Ages in terms of how we choose people to build things.

We're actually still in a pre-Middle Ages state! In the Middle Ages craft guilds generally did have required bodies of knowledge which apprentices were expected to master.

How we got here: Tech bobble gold rush, big tech (google/s) takes best talent, investors only want good enough (build to a price), young bro-grammers fill need, flood of millennials (like the Chinese army) take over IT. Now we are moving as fast as we can, in the cheapest vehicle we can build, caring other people's property. Some of this is good. (SpaceX?) Some is pandering gossip (Facebook?) Some are rubber dog turds. (Ha.. sh-- sells) The pendulum swings: Mainframes connected to dumb terminals sending CICS to real time computing (PCs) to AWS connect to browsers sending HTML/CSS. So the bro-grammers think they are inventing something new. Wisdom is learning from other's mistakes. Developers today think of anything older then 5 years as obsolete. They are excited by what they think is NEW but really they are just naive. Time is the flame in which or lives burn. If only more would take a moment and seek wisdom their products and lives would be enriched.

I've been IT for 40+ years. Still working. Still seeing the same mistakes made over and over again. I have a few young people I mentor and I've seen them move way above their co-workers.

So here is some words of wisdom if your new in IT. Find a co-worker over 50 and ask for advise.

> when they run into an interesting problem tend to search Github or Stack Overflow, even when it is a basic algorithm problem (I’ve met programmers with years of experience who couldn’t write code to maintain a linked list)

This comment feels incongruous with the rest of the article: why wouldn't I refer to a standard implementation rather than trying to solve it on my own? Isn't that a commendable case of not ignoring the 'old junk'?

Is it really true anymore that '30 is considered “old”'? I've worked with many people that are 30+ in the industry, and working with many right now, and I don't see any tendency to regard them as "old". Maybe it's my own bubble or more localized phenomenon, but I don't think it's true anymore.

It looks like I am one of the few like you who think it is not true that '30 is considered "old"'. All my life, I have worked with experienced developers (called principal engineers, consultant engineers, distinguished engineers, etc.) who were between 28 years and 55 years old. Not even once they were regarded as "old". On the other hand, the more experienced the developer was, the more valued he or she was because of a strong correlation of higher productivity and wisdom.

Can somene name companies where 30 or older is considered old?

Old is merely perception and a convenient way to sum up the "bias" that is actually just a vague "culture fit". Face it, dev culture is a bit geeky and perhaps off-putting to some, but likely more tolerable from a younger person fresh out of college. It gets less cute the older one gets so if one has not made an effort to keep their appearance and social skills up, they'll likely lose out to a younger, fresher-faced person with an objectively lower skill set since we're so fortunate to be able to "brute force" your average business problems with less skill.

I'm sure there's some kind of problem here... But from a person trying to hire a more experienced engineer, I can tell you getting someone in the door is hard.

I've had an open spot for someone with 5+ years of experience for nearly 6 months. I've done maybe a dozen interviews and made two offers. Still unfilled. At this point I really need more people and may have to start looking for new grads instead.

I don't doubt that there are experienced engineers unable to find jobs, but I wonder if there are other regional factors at play. I'm in San Francisco, so it's possible (probable even) that more established companies like Google, Apple, Microsoft, Intel, etc. are recruiting for the same people.

> so it's possible (probable even) that more established companies like Google, Apple, Microsoft, Intel, etc. are recruiting for the same people.

You're hiring for the same skills as the big companies are in the same field in the same geographical region. I bet you're even using a similar interview process. I also bet you don't pay as much as they do. You either need to pay more or play programmer moneyball[0].

[0]: https://danluu.com/programmer-moneyball/

What skills were you looking for aside from 5+ years of experience (say, with skillsets not directly related to the needs stated in your job ad) ?

Also remember that of all of the professional industries, ours is young and still maturing.

I believe that being an old programmer will become accepted in time. I believe that posts like these help to bring this issue to the forefront and it's good that it's being discussed.

Well there are many programming opportunities out there for people of all age. You just need to broaden your horizons if not your choices of languages, tools, and even platforms.

at fifty plus the only thing I note with difficulty in moving to a new job is that it is harder to change. learning something new, language, etc, isn't that difficult but I do have to fit in. It is the idea of changing environments that I do not care for.

Many people I know in the placement of developers look not only as skills but how long you have been where you are, because apparently I am not alone in being reluctant to leave even if I say I am willing

Except most of the design patterns you're caught on are wrong too. Programming just keeps getting more nuanced, making it harder for new people to learn about what is considered "the right way!"

Are sysadmins, network/data engineers, or other back-end techs subject to the same age discrimination as programmers?

As an aging jack-of-all-trades, I've been wondering if I should refocus more on back-end skills (and skills lower down the software stack) and start transitioning away from app development - especially web development.

I'm also wondering if Woody's observations of ageism mostly apply to 1) Silicon valley, 2) startup companies, and 3) web development.

> The problem is that our industry, unlike every other single industry except acting and modeling (and note neither are known for “intelligence”) worship at the altar of youth

Popular music, athletics, professional team sports, combat sports, hospitality, beauticians, the military (a big one, that one), until recently airline hostesses... there's tons of them.

If you enjoyed the OP, especially the comments about how unscientific SWE is, I think you will enjoy anything from Greg Wilson, such as:



> especially the comments about how unscientific SWE is

After trying for months to get into a CSE course at my university (they had a disagreeable policy wherein CSE courses were almost entirely open only to CSE majors), I was surprised by this aspect. We were taught methods for proving correctness for recursion-based code, re-expressing recursion as iteration, and things like loop invariants - the latter in particular presented a more methodical way to approach programming than I had seen before. But the general reaction was almost uniformly "yeah, sure, like I'm ever going to use this".

And sure, I don't think about loop invariants when I write most loops. And KISS tends to make most of my loops pretty trivial to understand. But for more algorithm-intensive work, the ideas behind these approaches have proven to be really useful tools! It's disappointing for me to see scientific approaches to SWE so quickly shrugged off. I seem to see the "cobble something together, and then patch it until nobody complains about bugs" approach to coding more often than "assemble this code in a way where it's demonstrably correct and easy to comprehend", and I'm often in the minority by strongly preferring the latter.

That sounds more like computer science than software engineering. At my university, they were different majors, with the focus of the latter being UML and building large inheritance hierarchies, so I imagine SWE means different things to different people.


Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact