When I was 7 years old, the Big Scary Thing In The Future was cursive writing. Once you hit 2nd grade, teachers were going to start tearing up your homework unless it was written in cursive.
The next year, it was "3rd grade" when teachers would start tearing up non-cursive papers, then 4th, 5th, 6th and "definitely in junior high". But it never happened in reality.
In my 20s, the Big Scary Thing In The Future was ageism in tech. Once you hit 30, you'd never find work again in this industry.
Then it was 35. Then 40.
I've given up listening. Every year, in addition to getting better at what I do, I find that more people want to pay me more money to come program computers for them.
Now it's certainly possible that the real number is 45, and you'll find me living in a cardboard box and begging for nickels at the off-ramp in a few years. But at this point I'm not overly worried about this particular myth.
That's an interesting observation, and it matches with my experience, too. Specially in larger teams, the senior developers gravitate towards the back-end, and the 'full-stack developer' is an extremely rare sight.
If I had to guess why it is, I'd say that back-end technologies naturally evolve slower. Yes, we are in the middle of a Big Data boom, but even then, the rate at which Hadoop changes is nowhere near Ruby on Rails, to cite two popular technologies.
> If I had to guess why it is, I'd say that back-end technologies naturally evolve slower.
I think it is this way because back-end development requires more expertise than GUI development. Steady more experienced developers are better suited than new hires.
The front-end guy also deals with the users more. And after spending 20+ years doing that, us older geeks are more than happy to moved to management or the back-end. Peace and quite.
I know what you were meaning to say but I have actually been chastised by many a frontend dev for saying "Oh, all the stuff the frontend team does is easy".
In either area (frontend / backend) the complexity depends entirely on the problem that you are trying to solve and I am sure there are plenty of FE problems that require a high level of expertise to solve elegantly.
Yes and no. The front-end (as far as web goes) is still HTML and Javascript, just better frameworks. And the base patterns of good design still apply regardless of the front-end technology.
The back-end in the last five years or so has definitely had a lot of change in data stores, emphasis on RESTful API exposure to front-end and other back-end services, web server choice and style (WSGI, PSGI, FCGI, etc).
The biggest difference is that a front-end developer has to worry about the performance of a single client using a single state machine. The back-end guy has to deal with making a site fast and reliable while supporting 100s or 1000s of those clients concurrently.
Crash the browser every 100K views and someone reloads. Crash the back-end every 100K views and someone gets fired.
I'd say that the new API-centric model works very well here. The old codger has complete control on what's coming and going from the core application, without worrying about a whippersnapper messing with the DAOs and adding a bobby tables vulnerability.
In the Dark Past, this last line of defense was in stored procedures, but we -- 30-something greybeards :) -- know what a mess that was. There are plenty of companies who are still tied to an ancient DBMS due to that 10kLOC stored procedure that looked like a good idea at the time.
(oldster here, mostly doing 'back end' type stuff) -- I think it's due to the fact that younger folk are usually more comfy with the GUI aspects of the latest tech. Me and my 40+ prog friends generally hate all the newest webby mobile stuff, we like email and IRC and text documents and command shells. We generally despise Twitter, FB, anything that enforces a 'modern' GUI experience on us.
Also, the back-end stuff tends to be a bit less sexy, but also less fault-tolerant. Management sees the front end; the back end is basically magic. So it makes sense that you have Gandalf back there with his beard and recumbent bike banging out magical koans to keep the database alive, while young bucks guard the front gate of the castle.
I might be the weird exception, started in the db/OS/backend, and ended up in web front end and mobile. What I found is that front end is closer to what the business clients see and what they would pay. Business users really can't see and don't care what the backend does as long as it works.
Sadly, that's true :( . If the IT executives don't defend the work of the backend people, they're screwed.
I worked for close to 2 years on a new backend for the insurance company I work for. A new, street-smart guy started getting cozy with management (instead of doing his assigned work), went behind the back of the IT manager and convinced another department to give him some money to build a colourful new frontend (which basically called the new backend and displayed the results, the money went into design and showed), and the company ended up firing the (pretty clueless) IT manager and putting the new guy in charge, over the guys that worked on the backend that made everything possible (both our fault and the clueless IT managers' that this happened, but it still sucks).
I moved from front end work to back end work for some very simple reasons a) in general it pays better and related b) front end guys are far move common so the backend has less competition.
Work, as I have become older, is more and more just a business proposition.
Plus it puts me further away from those guys that think HTML/CSS is programming. :)
I seem to have accelerated my own aging in the sense that my technical prowess and cynicism have grown rapidly in the past 7 years. At 23, I'd never written a professional program in my life. Now, almost 30, I'm probably a 1.8-level engineer. So that's 0.9-1.1 points in 7 years, covering 6 jobs including a failed startup and explosive software failures (none my fault) seen up front and from afar.
My observation is that, as you get older, the jobs available to you get better but they also get rarer. That's partly because you filter out the bad jobs. When someone makes you sign a full-on non-compete to take a coding test-- not just an NDA covering the material in the test, but the works-- you just don't return the email. Anyway, what it means is that when you do get a job, you're more likely to find quality, but you can no longer count on a new job in 2 weeks if your existing one ends, especially because after 35+ you are going to be sized up for some kind of leadership potential, making fit demands very high.
"My observation is that, as you get older, the jobs available to you get better but they also get rarer."
Very true. I think this also comes from specialization. You get better at solving interesting and difficult problems, but more in your niche. The jobs are less about, "They are smart, we can pay something decent while they learn" and more "This is the only person for the job." It's also why fit becomes more important later in one's career.
Annoyingly, the reverse is also true: jobs for generalists are also rare because people tend to assume you don't know what you're doing unless e.g. you've spent 5 years lubing up the tailpipe of the JVM 24/7.
Especially since 95% of the work that needs doing doesn't actually need all that esoteric crap that people love to ask about in interviews but a good solid sensible hand on the tiller of some straightforward code.
True. I'm much less willing to be paid partly in startup monopoly money now...
Agreed. Especially when someone else controls the board (pun intended) and your chances of landing on someone else's 4-hotel Park Place are high. (Wait, weren't there only 12 hotels in the game? Why does every property, even fucking Water Works, have 3 or 4 of them?)
Then there's cliffing. Community Chest => "Fired on day 364. No equity. No severance. No-name company. Fucked reputation. Here's a Revolver. Wait, wrong game. That's Clue, which you don't have. Do not collect $200." Employees can get cliffed, but if a founder tried to "cliff" an investor he'd Go To Jail for fraud.
I'm not sure why you're so negative on the whole startup thing - while there are examples of foul play, the vast majority of founders do try to do right by their employees.
> the vast majority of founders do try to do right by their employees.
Absolutely. But, barring the true home-run success stories, the vast majority of founders lose effective control of the financial dealings of the company by the time they sign the Series A.
My brother and I created a version of Monopoly called "Mad" Monopoly, where all of the cash (minus about $2000) was divided evenly between the players at the start, all properties could be developed as soon as they were purchased (no need to own the set), and you could build up to 4 hotels on any property (including utilities).
All rents were calculated by extrapolating the original rents, and you could engage in loans at arbitrary interest rates with other players.
I'm amazed how much this crazy game resembles the current world economy, and I'm convinced that the current economical power-brokers have the same attitude to real money as my brother and I had to Monopoly money when we were 10 or 11.
If this happens (and it's really cliffing, meaning 85% or more of a vesting period, not half-way) -- and assuming your options or stock would have significant value -- hire a compensation lawyer. You might get something; without a lawyer on your side you will get zip for sure.
The career yellow belts (1.2-1.3; 4th kyu) only get more set in their belief in their own rightness. They also tend to fall out of date, despite their expertise in the local maximum they've conquered. Also, since they tend to drive out the 1.4+, they aren't surrounded by better people.
There seems to be a bifurcation that happens very early on, based on a person's first few programming jobs as well as access to non-professional programming resources. Either you plateau as a yellow belt (1.2-1.3) or you start climbing, and that climb takes a long time (a 2.0 under age 30 would be very rare). I've worked about 3000 hours per year for seven years and that got me from ~0.8 to 1.8, but that's also with a lot of early exposure to programming (QBasic, Java in school, applied math research).
The shame of it is that some people conflate the career yellow belts (Expert Experts) with the older people who keep getting better each year.
You probably should make a link to that page on ycombinator for discussion. Well... first cut it down a bit so that it is shorter. (we live in the age of tldr :-p). But I think it was a good read.
My company has had this contractor who is now 40 and it is impressive to see how productive he is. Moreover, as he has developed a great part of the infrastructure he has managed to make himself extremely valuable and hard to replace.
This is quite a feat in my company and in the industry in general as a lot of firms do not want to keep contractors for more than 2 years. He's been at my firm for about 10 years now; 10 years of contracting at I am sure £800+ per day! But I know that behind those high numbers there is some hard work and constant self-marketing.
But it's not. The only data cited in the article showed that "salary increases slowed" as engineers (in the semiconductor industry) grew older.
Stated more clearly: "Once you get to a comfortable multi-six-figure salary, you'll find you don't get spectacular percentage increases quite as often." That seems applicable to any field anywhere.
The article correctly states that an older guy is likely to be making three times as much as a new grad, while incorrectly assuming that he's still only capable of using the technology he learned 20 years hence.
So, no. The fact that the author couldn't actually come up with any statistics implying that being old is actually a bad thing, despite combing the Bureau of Labor Statistics and Census for data, seems to be a good indicator that there's nothing to worry about.
So far my experience has been exactly the same as what you describe. I just turned 40 and recently got the highest paying job I've ever had - writing code full time. I'm cautiously optimistic we can keep this up indefinitely.
The key to longevity in engineering is:
1) develop an expertise;
2) develop management skills.
I know lots of guys working as engineers in their 50's. People hire them, because they have an expertise. Not a niche just by virtue of being old (like COBOL) but a problem domain they know inside and out. Nobody is tossing out their 45 year old engineer that works on carrier grade network software in favor of a fresh graduate.
This. It's the same way in the high profile freelance game. Those that have a specific knowledge, most often, can charge higher, often ridiculous, rates. It doesn't even have to be languages or frameworks. It could be implementing large scale ecommerce solution with Magento. Companies that need that level of focus are willing to pay.
Can you imagine Bill Gates, in college or no college debate, writing about quitting college, listing his milestones and then fast-forward to $60+ billion in net-worth.
This is another in a seemingly endless stream of "old people can't cut it in the coding world" articles. My intent isn't to trash the author or the piece, it's just that we've been over this ground and I am going to be brief.
The truth, as always, is nuanced. As the author says, it's up or out. If you're 50 and expect to do be doing the same type of work you did when you're 25, you're mistaken. As programmers we have to constantly be adapting.
The problem here is getting into any kind of attitude that says that you can coast. There is no coasting. Not in this business. If you're not constantly reading and trying out new things, your salary is headed down.
I've experienced many distinctly average coasters who have gone upwards quickly. It ain't a meritocracy; being able to politick and play the game is just as important, sadly.
Here's my stance on the problem. Most people here have heard of the MacLeod hierarchy (Losers, Clueless, Sociopaths). The VC-istan cult is about Cluelessness. (The MacLeod Sociopaths are the investors and executive implants who live outside companies and, smartly, get to diversify.) The whole ecosystem is built up around extracting value from young, white men who have a high proclivity toward Cluelessness.
When you're in school, deadlines are well-tested because everyone's doing approximately the same work. Unless you have a health crisis or death in the family, you don't have an excuse for a late assignment and the typical 10%/day policy is more than generous. When you're at work, though, 90% of "deadlines" are just someone's opinion and a good 50% are impossible. VC-istan is about exploiting young kids who haven't learned that yet and who would rather stay at work till 3:45 am than miss a "deadline" set by some VP with Shit's Easy Syndrome. See: http://steve-yegge.blogspot.com/2009/04/have-you-ever-legali...
The older programmers are really good at what they do, and they're a lot more flexible than the stereotype gives them credit for. The problem, however, is that they're a threat to the cult. Bring someone on board who does his best work between 8 and 11 (when the kids are just starting to roll in) and goes home at 5:30, ignores the deadlines that don't actually matter (i.e. the ones set by egotistical bosses, not hard deadlines that must be met if at all possible) and suddenly there's a breakdown of the Cluelessness. Couple this also with the Dunning-Kruger effect in reverse; the Clueless young people don't see that the older guy is 4x more efficient than they are (because they're inefficient and don't know it, cf. D-K). All they see is a guy putting in significantly fewer hours. Either the young Clueless will see him as a piker for his shorter work hours, or as a badass for his high effectiveness (making him a legitimacy threat, as the younger engineers see him as the real alpha).
I would also add that there's a culture of extremely harsh age-grading. VC-istan is most concentrated in high-COL areas where you can't raise a family on a (non-financial) programmer's salary; at two you can do it, but two career jobs, plus kids, necessitates maids and daycare and that's expensive and complicated, too. Because the only way to own a house in these cities is to become an executive or financier, you have a lot of 22-year-olds who see themselves being executives-who-code in 5 (!) years-- having managerial control of the division of labor and using it to give themselves the fun stuff, but being full-time programmers-- never mind the fact that that's extremely impractical in almost every organization. Very rarely do executives spend less than 20 hours per week in meetings. A 40-year-old who's been around the block and still programs might tell them as much. That's a problem. To counteract this, the 35-year-old VCs and 30-year-old founders discredit the 40-year-old programmers as "bitter" and he reacts by leaving, just after the one-year cliff so as to take a couple lottery tickets out the door with him because, well, strange things happen.
The short way to say this is that older programmers aren't the problem. The issue is that most of these formulaic startups are founded on exploiting young talent that overestimates the career value of low-end engineering work (because these people don't have the experience to tell what quality work is) and most older people can see through the bullshit. That's dangerous, insofar as it represents the threat of the younger Clueless engineers also learning to see.
"If it's easy to imagine, then it's easy to implement."
I once worked for a CEO and 90% owner of a startup who did very well for himself ($30 million exit - which he got almost all of as he hadn't taken any external funding) even though he really believed this. As far as I could tell he wasn't pretending - he really believed that any feature (no matter how complex and we were working in a very complex area) could be implemented in a week. As I was VPEng this perplexed me greatly - particularly as there was a conspicuous track record of features not being implemented in the times before I arrived.
My only explanation was that his attention span was about a week - if he asked for something and it appeared in a week it was great. If not he forgot about it....
[NB This CEO was a very bright guy - and I had a lot of respect for him].
A certain one week feature I planned has taken 3,5 years and still is ongoing. Despite I believe no feature should be planned that takes more than one week. Agile development I think this is called.
What I'm curious to understand is, are you at a competitive disadvantage if you don't follow this strategy? Or is it the case that a company structured around sane hours employing older, more experienced workers will be more effective, all else being equal?
In other words, is this pattern followed because it works, or is it just a cultural artifact that these companies would do best to abandon (but maybe can't for whatever reason)?
It depends on what kind of company you're trying to build. If you have short-attention-span investors who want to see shiny shit every 2 weeks, and you're trying to force yourself into a B2C red ocean, then you may want the 90-hour-per-week plug-em-burn-em-dump-em Clueless young programmers. Remember that most of VC-istan right now is social media, and most of that is marketing experimentation that happens to use technology, but not technology itself.
If you're trying to build Real Technology and you don't have a few 10+ year programmers, you're probably fucked. Different game altogether. Unfortunately, it's hard to get money for Real Technology because the payoff happens in the longer term. Most Real Technology companies make most of their money by consulting.
The problem with families is a real one. If you choose to have a family, well, you are going to have a lot less time and energy to put into your career. It's as bad as a MMPOG addiction; worse, probably, most people don't have the guts to ask for time off for a raid.
But, I don't think that has a lot to do with what we see as age discrimination; It does give the young kids a boost, but most people start families in their mid to late '20s, and even in the computer industry, that's young. By the time you are hitting 50 and seeing real age discrimination? your kids are almost taking care of themselves. (or, at least, they are leeching money, not time.)
In VC-istan and on Wall Street, you see age discrimination sooner. Then again, that may have to do with extreme costs of living and mediocre quality of life pushing a lot of people out as they get into their family-building years. But my observation has been that age discrimination starts in the late 20s, although it doesn't become a show-stopper (only an annoyance) till much later.
It's not about absolute age. It's about harsh age grading. If you're 37 and VP/Eng, you're fine. If you haven't held a management position by that age, it starts to raise questions (even if you have no desire to manage). Hell, even at 26 you're out of the running for analyst-level positions in banking; you better have something that shows you're associate-level (a graduate degree or strong technical accomplishments).
I'm 29 and already experiencing age discrimination. I'm losing callbacks because I have "too many jobs" (which is basically a legal, back-door age discrimination although it's about the cynicism and "disruptive" expertise that come with "job hopping", not chronological years). Now, any place that has that attitude is a shitty place to work, but sometimes shitty jobs are useful and it's a loss (not a major one, but it affects leverage and financial planning) not to have them as options.
>I'm 29 and already experiencing age discrimination. I'm losing callbacks because I have "too many jobs" (which is basically a legal, back-door age discrimination although it's about the cynicism and "disruptive" expertise that come with "job hopping", not chronological years)
well, to the best of my knowledge, at twenty nine, you are not in a protected class. the age protected class is 45 and up, I believe.
I'm skeptical of this idea that you face age discrimination before 30. It doesn't line up with any of the statistical data, and it certainly doesn't line up with any of my anecdotal data. (I'm older than you are, but not by a whole lot.) I mean, I could be wrong, of course, but that's below the median age, most places I've worked. (I mean, if you are talking specifically about web-startups that are still in the startup phase, then that's old. but that's a pretty small percentage of the job market. It takes a whole lot of web startups to make one yahoo in terms of number of engineering jobs. And generally speaking, the startups pay shit, so they get young workers trying to get their foot in the door, young workers who move up and out to the larger companies that pay more.)
Maybe you just have higher standards than I do? I mean, I thought getting paid six figures as a unix janitor in an area where that salary means I live in a condo (or buy during the downturns; the median santa clara county single family home last year was two hundred thousand dollars cheaper than the median single family home this year. Last year, median was a reasonable half-million.) means I'm doing pretty good. I mean, yeah, if you want to make millions of dollars a year, you are going to be on something of an accelerated schedule.
On the other hand, I haven't seriously tried to get a full-time job working for someone else for several years now, so maybe I'm just not seeing it.
I just don't see it. I'm much older than you and have had no problems.
You mention too many jobs. What is your duration at such? If your history shows a consistent pattern of moving on every 18mo or so, it will raise flags about your commitment level. It has nothing to do with age at that point for many people I know when they look at resumes. Of course, the other end of that is many years at the same org can raise questions if it shows a lack if advancement.
Another option is to massage your resume so it reflects what the company is going to want to see. Project only the image you need to to get the job. Strip everything out but the five or so best-looking jobs, add a year or two on to the hire dates if you feel the need. Let them ask you what you did between jobs. ("Consulting. Not terribly interesting.") I don't think any hiring manager or recruiter wants to wade through a sea of text, anyway.
>Strip everything out but the five or so best-looking jobs, add a year or two on to the hire dates if you feel the need.
That's lying. It's REALLY STUPID lying at that. Your employment duration is one of the things companies are unequivocally allowed to say, and often do.
You can get around that by having your buddy pose as the hiring manager. Wish I had the stones to actually pull something like that. Go total Sociopath and see how far I can take it.
meh, the previous generation is /dramatically/ better set for retirement than this generation seems to be. Defined benefit pensions are a real thing for them, as is healthcare for life as a retirement benefit. Often these things start in the '50s.
a lot of this is that risk-free investments had a positive expected return when they were working. Imagine that; T-bills that pay out more than inflation! I mean, it's a total thing of the past now, of course.
All of this... so true. Spot on. I'm seeing the same thing now. I'm in my early 30's and the younger developers we're hiring are doing all the shit work, and they are freaking out about following the rules and doing everything on deadlines. I've had the exact same realization about the deadlines being arbitrary, and ever since I realized the engineering talent gets to set the deadlines, I ignore most of what's dictated to me and I set them back. The management at my company can't do much about it because regardless of how long it takes, the work I do is the important technology work in the company and none of the other developers could do it (not now at least, maybe in a few years).
There was a bullshit fake article written by someone at facebook this week, some tongue in cheek thing about how awesome it is to work at facebook as a developer. Reading it made me sick, and right here you have articulated exactly why.
Investing in youth is not much different than in professional sporting. You want (as an investor and employer) a young guy/gal who has major potential and years to produce.
One difference is that athletes tend to compete well physically only when young (depending on the sport obviously) whereas in tech you can still peck that keyboard when you're past your physical prime.
"The young understand new technologies better than the old do"
No they don't. The young, smart developers who already have strong backgrounds adopt new technologies, the old, smart developers do the same.
"The young can easily pull all-nighters."
Sure they can, and companies should be moving away from that as the code quality does drop off past hour 12 unless they're a super talented developer. In which case they're probably smart enough to know not to work an all nighter.
If you're not willing to pay $150k for a great developer that's going to get shit done, you're fucked already.
Where "$150k" depends entirely on location.... It's not necessary to spend nearly that much unless you're in one of very few tech hot spots that also has a very high CoL.
companies should be moving away from that as the code quality does drop off past hour 12 unless they're a super talented developer.
s/12/7/g
s/unless they're a super talented developer//g
Dirty secret about coding. You're typically at your best doing 3-5 hours per day of actual programming. If you're doing 6-8 hours, split that with a workout. The other working time should be spent on design, exchange of ideas, and learning new stuff.
If you use a high-productivity language like Clojure or Haskell and work on a green field, you'll find that you can't program for 12 hours straight, because there's no fat in the development process. Your brain starts to hurt after 8-9 hours. Personally, I can get useful work done for about 11 hours per day (I seem to average 65-70 hours per week, including writing which has taken a lot of my time recently, no matter what my mode of employment) but there is no way I'd be able to write code for 77 hours per week. Maybe 55 if I really had to push.
If you're not willing to pay $150k for a great developer that's going to get shit done, you're fucked already.
My first programming job paid just over half of that (well, with a sizeable bonus, but 3x higher than the "top of range") and I got shit done. Cost-of-living is also a factor. I would probably build in Austin or Boston (it annoys me that those cities' names rhyme because they happen to be the top 2 candidates for the 2018 tech hub, as I see it) where the brains-to-dollars ratio is more favorable than New York's. (New York has plenty of brains; the dollars are a problem. Fucking rent.)
I'll agree with your swap outs as a general rule, but I'd say code quality drops from 'not so great' to 'you shouldn't be pressing build' after 12 hours. Up until then you might get something done.
The last part is mostly about employers not willing to pony up for developers who know what they're doing inside out, and are willing to sit down and get it done and go home. I'm sure there's plenty of people who'll work for significantly less and get the job done as well.
Maybe endurance is a separate ability. Some folks can operate at a high level for extended periods of time, though their highest level may be below the peak output of others. I will say I have no quibble with your numbers as averages. To find someone who possess both skill and endurance is exceedingly rare.
To find someone who possess both skill and endurance is exceedingly rare.
That seems to be an age thing, at least in my experience. Skill goes up. Endurance doesn't go down per se, at least in the ages that we're talking about, but it gets a lot more selective.
I can do a long day (14+ hours) if needed, but I'm only 29 and I'm already up at 5-6 every morning. If I worked at a company that expected the workday to continue past 9pm (and I did work at once of those when I was younger) there's no way I'd be able to do it.
Precisely. I am 55 and very current. Many of my younger friends ask me about new technology. I'm actually past having kids at home, so tend to work pretty long hours...because I like what I do.
I have a lot of entrepreneurial experience and am a pretty good general business manager. Coupled with the ability to code, I find that I am in fairly great demand.
After talking with a few high school teachers, and considering my own experiences with those at the college level, I believe that today's entry-level engineer is comparably equal to (if not a step below) the previous generation's entry-level engineer in terms of programming ability.
If this is true, and the trend continues, then any ageism based on aptitude could reach a point of diminishing returns very soon.
I would also challenge the idea from the article that "the young understand new technologies better than the old do." Which I think is less true today than it was a few decades ago.
I believe this apparent ageism is a result of pattern matching and cost cutting moreso than a widely held belief that young engineers can outperform more experienced ones.
But that's the thing. I know some old people (Old, here, is half a decade or better.) who are still purely technical, but the ones I know that are fully employed are really good. I mean, not just "I've been doing this longer than you've been alive" good, but better than I would be if I had two lifetimes to practice. And they generally don't job hop like the youngsters, either, a sign of fear of joblessness. (I mean, that's all anecdotal, but eh, for most of us, that's what we use to sanity-check the statistical data)
My anecdotal data lines up with the statistical data.
There is this perception that you can take a young person and train them fairly easily; that this is the thing to do. I think with someone older? it's not so much that hiring managers don't think they can be trained as that it's /weird/ on a cultural level, for a 25 year old kid to tutor some 50 year old. Really, I think that's a big part of the problem.
Now, I think the other side of that coin is that for most of us? we hit our 30s, those raises start slowing down, and we start looking for other giant gains.
I mean, through my teens and twenties, a year without a 20% raise was a disappointment. And if anything, the raises lagged increases in my actual effectiveness. In my late 20s, and early 30s? that slows down a lot. I'm looking around for that next productivity jump, and hey, turns out all those social skills I didn't have when I was younger? I am not saying I'm smooth or anything, but hey, I'm a hell of a lot better than I was. It looks to me like there is some low-hanging fruit (productivity wise) in management.
So that's the other side of the coin; Most of us? a decade or two into our careers, well, we start looking at management. That explains some of the fall-offs in Individual Contributor pay; Many of those who can, make a run for management, and many who are left behind are seen as "not making the cut" (which is kindof silly, considering the different skillsets required)
Shut up you old programmers with families and tendencies to questions 80 hour weeks in 15 year old 'startups' with tens of billions in revenue. Or Zuckenberg, Larry Page and others will replace you with fresh of the boat young immigrants...because "we don't have enough engineers." Or something like that http://www.guardian.co.uk/world/2013/apr/11/mark-zuckerberg-...
Now here's the key claim: "increased dramatically for engineers during their 30s but that these increases slowed after the age of 40. At greater ages still, salaries started dropping, dependent on the level of education. After 50, the mean salary of engineers was lower—by 17% for those with bachelors degrees, and by 14% for those with masters degrees and PhDs—than the salary of those younger than 50. "
Two points:
1. Would we expect a linear increase in salary with age? I would not. At some point the salary would likely 'top out' in any job.
2. The part about over 50s ignores a very important fact from the study: the over 50s work less (and therefore earn less). To quote the book: "Workers over the age of 50 are much more likely to work less than a full year [...]. One in six engineers aged 51 to 65 reported being paid for less than a full year of work in 2005 [...]". The book goes on to make a confusing claim about whether that's voluntary or not (jumping to the 2002 downturn and talking about interviews with engineers but with no data).
I think that the real anomaly is that many people really expect salaries to always go up with age. Which, especially now that people work well in their sixties, doesn't make much sense, except for some very rare exceptions.
Minor point...there is this thing called "inflation". It's real. If your salary doesn't go up every year by at least 1-3%, your buying power gets lower and you are effectively getting poorer.
The consumer web is often a culture of 'pop hits' and lots of media; hence the justin bieber-esque love affair the Valley has for said entrepreneurs. So, yes -- I do believe that people in their 20-30's are better at identifying these fads moreso than 40-50. But they're just fads, and fads usually die fast like the startups born from them. Certainly not all, but most.
That said, I also believe the consumer web is in for some pain (the notorious A crunch). I get the impression a lot of unqualified 'super angels' felt it was more important that entrepreneurs become professional money raisers and media darlings, rather than help them focus on their core business.
When it comes down to it, if you're a seasoned entrepreneur with repeat successes – you'll be unstoppable for the rest of your life. The Biebers of startups are edge cases that simply get a lot of attention because it compliments media's goal for driving pageviews.
Articles like this terrify me. I'm in my late 30s and I'm only now realizing that what I want to do is code.
I'm a wet biologist by training and have been doing research and associated work for a decade. I have little opportunity to code at my current job. What I'm hoping to do is to formalize and hone my programming skills through some additional university courses.
Am I wasting my time? Am I forever going to be kicked to the bottom of the pile of applicants for junior positions because I've already had a career?
If you've been in a similar situation, I'd love to hear how it worked out for you.
Let me tell a little about what happens to me. After 4 years in my first job programming, I got burned about it, so I changed to be a consultant for a year and having my own non-tech business (a shop) for two. Then I came back to programming, after being for three years (late twenties) without doing programming stuff... And it was a successful comeback, as I got back with passion, and learned a lot in a few amount of time, so I really catch up, in terms of career, with friends that started at the same time, and never quit programming.
The great thing about coding is that you can show how good (or bad) you are relatively easy (compared with other fields). There is also a real shortage of coders right now. If you are good, and you like to code, you can catch up and stand up over a lot of people that has been doing one year, ten times.
I'd say that one thing you can to do is show up your code (through open source, etc), extra bonus points if you do something that is useful, and whenever someone asks you you can say: "Do you know X? I did that" ;-)
nah, just code in a biotech or for lab software. There is so much opportunity. Automate through code/robotics your job. Plenty of opportunities.
You will find companies that want a mix of wet lab and coder skills. You save them on the translation costs for making software the biologists actually need.
In my view, it's not ageism that's the problem. It's the questionable paradigm of the annual raise. Over the course of the years, a developer's salary will increase steadily, and make her more and more expensive and less competitive against less experienced developers.
If you're willing to take a junior dev position for junior dev pay, I would think that in general you won't be disadvantaged because it's your second career.
Not in a similar situation, I'm in my late 20's, a programmer who have done Bioinformatics research in academia and in Pharma R&D.
Programming done in most startup's and corporate settings are very similar to lab-work. The young grad students are lured by PI's to do repetitive work with promise of publication when the reality is it's a lottery. After a few years, what is looked upon as glamorous and interesting by onlookers of the high-end instruments and high-impact research, will turn into mundane and repetitive lab protocols that's intellectually stale and unstimulating; any results and interpretation is only esoteric and vague in the academic sense.
The actors are different but the characters are the same. PCRs, blots will be replaced with repetitive coding exercises being asked of you by project managers. PIs will be replaced by MBA bosses. The academic grind for glory amongst the sub-field of 5 people will be replaced by maximizing profit in the business logic of the sub-field of the company you are in.
The pay is slightly better or equivalent; the job security much worse. People threw around the 150K mark here as an average developer salary. It's analogous to say that the average lawyer makes 220K. It's not true. After working for about 5 years in Boston, most of my peers are getting salaries around the range of 90-110K. Only people I know who are getting over 150K at programmer level live in SF which in their case is not very much. Most software engineering job req's I looked for in Boston tops out at 150K, this includes senior positions for 10-15 years of experience and at well-funded companies.
If your goal is to achieve intellectual autonomy and financial independence by becoming a programmer, it's very difficult. The sub-culture on this forum skewers towards college students and recent grads who are more naive about the field. Others might give more defensive answers to your query, but I want to give you a honest opinion.
I chose coding over Biology because it was attractive for a young person out of school and didn't want to get on the grad school treadmill. But if I inherited a lot of money suddenly, I'd want to apply to Biology grad school and do research for fun, without caring about my PI and departmental politics; and/or work on open-source games without caring about IT career jockeying or monetization. Just food for thought.
My wife and I were talking about this a couple weeks ago. We're both developers, and have both been working for 12 years at a variety of companies, large and small, yet neither of us has ever had a colleague who retired.
This article confirms what I suspected, older programmers don't retire, they just never get rehired after the latest round of layoffs.
Problems like this will never get fixed. Too many Americans are too concerned with watching American Idol to pay attention to the fact that most politicians (on either side of the fence) are trying their best to destroy the middle class by padding the pockets of business executives and high net worth investors. Citizens United, H-1B visas, and many other examples show this.
Here is the ginourmous confounding issue the presentation in the article:
> Why would any company pay a computer programmer with out-of-date skills a salary of say $150,000, when it can hire a fresh graduate — who has no skills — for around $60,000?
(my emphasis)
So how do you untangle the ageism issue from the skills issue? This article doesn't, but for the broader question you kinda have to.
How do you control for skills when finding out about ageism?
I'm pretty sure there's ageism in tech. This makes me a little scared. It's this exogenous thing that I can't control.
I'm pretty sure skills-decay is at least as common as ageism. Skills have market prices. They change.
This reminds me of a (PG?) essay that said essentially, if you're gonna call yourself a developer, don't call yourself an [X] developer, because you are not the language [X]. I suspect it's all the [X] developers out there who are seeing the most "ageism"
I have a silly remark to make about this article... Isn't it also because current programmers in their 50's have basically less programming experience than the ones in their 30's ?
I had one of the first usable family computer when I was 6 and I am already in my late 30's, if you have let's say 20 more years of experience than me, on what computer did you have them ?
My bet is that it is a picture of what we have now and not a tendency.
While I can see how this is a problem or potential problem for a lot of people... our "darkest secret?" Really? We don't have any issues that are larger than "after your 30's you'll have to work harder?" Our biggest problem, as stated, is that we can only expect to pull down six figures for a few years?
This seems to me a serious overstatement and more than a bit of "we're out of things to write about, let's make this one seem more shocking and hidden than it is" sensationalism.
The article suggests you can teach everything a $150k programmer knows to a fresh grad $60k programmer. Damn I want to know about these training techniques. It's usually 5-10 years depending on domain.
Here is where this awful article's bait-and-switch happens:
> Brown and Linden’s analysis of Bureau of Labor Statistics and Census data for the semiconductor industry revealed that although salaries increased dramatically for engineers in their 30s, these increases slowed after the age of 40. After 50, the mean salary fell by 17% for those with bachelors degrees and by 14% for those with masters degrees and Ph.Ds. And salary increases for holders of postgraduate degrees were always lower than for those with bachelor’s degrees (in other words, even Ph.D degrees didn’t provide long-term job protection).
> It’s the same in the software industry. Prominent Silicon Valley investors often talk about youth being an advantage in entrepreneurship. If you look at their investment portfolios, all you see are engineers who are hardly old enough to shave. They rarely invest in people who are old.
The first paragraph, which contains the data that gives the veneer of respectability, is about the semiconductor industry. Even then, salaries don't actually decrease until people hit the beginning of retirement age (surprise!).
In the second paragraph, we switch to the software industry, where it's "the same" (no data to support that, natch). The supporting anecdote isn't even about employees, but investees... What proportion of people receiving money in the software industry do so via investment rather than a paycheck?
Of course the specter of ageism haunts everyone, so the linkbait is effective and we have 60+ comments here.
The HN reaction to ageism is interesting--the comments are extremely skeptical, but of course, HN suffers from survivor bias. Those who wash out of software development in their 30s and 40s don't read or comment on HN. In fact, wasting time on social news sites is a young person's game even if ageism were not a factor.
My own impression of the tech industry are that young programmers are like stem cells--stick them anywhere and they'll differentiate into what they need to be. However, mature, differentiated developers often find it very hard to adapt to the second, third, or fourth new wave of tech. companies--both culturally and technically.
I don't think this is a true, learning new tech is skill. Back when I was an undergrad there was a class that basically switched languages once a week after each homework assignment and every 2-3 weeks it switched paradigm (procedural, OO, functional, logic/declarative, etc). The idea was that the tech being used doesn't matter, just the understanding of the theory and the skill to learn new tech. Anecdotally, every time I switch tech now as a professional, I feel I get better at it, faster. Learning itself is a skill to be learned.
I think that for the majority of people, neuroplasticity decreases with age, which is attributed to a decline in physiology [1]. I think your personal experiences can be explained be fact that learning a new technology does not really involve a lot of change; much technology shares the same underpinnings.
[1] "However, there is an obstacle to learning in mature age: the mental decline related to the deterioration of brain function, which is determined in the later stage of life. When the age increases, the ability to generate new synapses between neurons in response to external stimuli declines; this ability is the basis of fundamental and complex functions like memory and learning. The brain ageing causes various changes: reduction in brain volume and gray matter in particular, progressive atrophy of neurons and their interconnections, degeneration of cortical regions governing the functions of sensation, cognition, memory and motor
control, metabolic decline of key neurons and loss of features related to physical and chemical deterioraion (OECD, 2007).The acquiring of new knowledge and skills becomes therefore more and more diffcult, and the execution of complex tasks requires more effort than the younger learners.
I do not disagree about the neuroplasticity decrease, that is a fact. I guess I am saying that if you know the foundations (which we agree are pretty constant) which I will call the world model, any decrease in neuroplasticity is outweighed by the acquired skill of integrating new technologies into the programmers established world model.
In regards to the whole neuroplasticity/cognitive decline, I think this varies a lot by person and their environment. I know people in their 60s who are much more agile thinkers than other I know in their 40s.
The biggest difference from when I was a starving 19 year-old is that I don't need to use recruiters to find work anymore. It's strange that this article comes from LinkedIn and it does not mention the power of having connections. My hope is that by lifting up the people around me wherever I go, I'll build up a larger, better, and more enthusiastic network of colleagues whose help I can draw on later.
I worked with a talented C++ programmer who had flown airplanes in the Pacific Theatre in WWII. I don't think he necessarily needed the money as much as just enjoyed the job but it goes to show that you can still write code when you're older. We always enjoyed taking him out to lunch on Veteran's day too!
120 comments
[ 2.9 ms ] story [ 143 ms ] threadThe next year, it was "3rd grade" when teachers would start tearing up non-cursive papers, then 4th, 5th, 6th and "definitely in junior high". But it never happened in reality.
In my 20s, the Big Scary Thing In The Future was ageism in tech. Once you hit 30, you'd never find work again in this industry.
Then it was 35. Then 40.
I've given up listening. Every year, in addition to getting better at what I do, I find that more people want to pay me more money to come program computers for them.
Now it's certainly possible that the real number is 45, and you'll find me living in a cardboard box and begging for nickels at the off-ramp in a few years. But at this point I'm not overly worried about this particular myth.
I am 27 and work as a GUI-dev. My co GUI-devs are 26 and 32 years old.
But the back-end developers are 38, 43 and 56 years old.
The management in here consists of engineers, too. They are all >40 years old.
Most tech-people I know either got in to back-end development or management when they got older.
If I had to guess why it is, I'd say that back-end technologies naturally evolve slower. Yes, we are in the middle of a Big Data boom, but even then, the rate at which Hadoop changes is nowhere near Ruby on Rails, to cite two popular technologies.
I think it is this way because back-end development requires more expertise than GUI development. Steady more experienced developers are better suited than new hires.
Slow = bad
Fast = good
They probably think a good GUI is a question of taste and can't be measured and they don't want depend on "luck"
In either area (frontend / backend) the complexity depends entirely on the problem that you are trying to solve and I am sure there are plenty of FE problems that require a high level of expertise to solve elegantly.
The back-end in the last five years or so has definitely had a lot of change in data stores, emphasis on RESTful API exposure to front-end and other back-end services, web server choice and style (WSGI, PSGI, FCGI, etc).
The biggest difference is that a front-end developer has to worry about the performance of a single client using a single state machine. The back-end guy has to deal with making a site fast and reliable while supporting 100s or 1000s of those clients concurrently.
Crash the browser every 100K views and someone reloads. Crash the back-end every 100K views and someone gets fired.
In the Dark Past, this last line of defense was in stored procedures, but we -- 30-something greybeards :) -- know what a mess that was. There are plenty of companies who are still tied to an ancient DBMS due to that 10kLOC stored procedure that looked like a good idea at the time.
Also, the back-end stuff tends to be a bit less sexy, but also less fault-tolerant. Management sees the front end; the back end is basically magic. So it makes sense that you have Gandalf back there with his beard and recumbent bike banging out magical koans to keep the database alive, while young bucks guard the front gate of the castle.
I worked for close to 2 years on a new backend for the insurance company I work for. A new, street-smart guy started getting cozy with management (instead of doing his assigned work), went behind the back of the IT manager and convinced another department to give him some money to build a colourful new frontend (which basically called the new backend and displayed the results, the money went into design and showed), and the company ended up firing the (pretty clueless) IT manager and putting the new guy in charge, over the guys that worked on the backend that made everything possible (both our fault and the clueless IT managers' that this happened, but it still sucks).
Work, as I have become older, is more and more just a business proposition.
Plus it puts me further away from those guys that think HTML/CSS is programming. :)
My observation is that, as you get older, the jobs available to you get better but they also get rarer. That's partly because you filter out the bad jobs. When someone makes you sign a full-on non-compete to take a coding test-- not just an NDA covering the material in the test, but the works-- you just don't return the email. Anyway, what it means is that when you do get a job, you're more likely to find quality, but you can no longer count on a new job in 2 weeks if your existing one ends, especially because after 35+ you are going to be sized up for some kind of leadership potential, making fit demands very high.
Very true. I think this also comes from specialization. You get better at solving interesting and difficult problems, but more in your niche. The jobs are less about, "They are smart, we can pay something decent while they learn" and more "This is the only person for the job." It's also why fit becomes more important later in one's career.
Especially since 95% of the work that needs doing doesn't actually need all that esoteric crap that people love to ask about in interviews but a good solid sensible hand on the tiller of some straightforward code.
Bitter, moi?
True. I'm much less willing to be paid partly in startup monopoly money now...
Agreed. Especially when someone else controls the board (pun intended) and your chances of landing on someone else's 4-hotel Park Place are high. (Wait, weren't there only 12 hotels in the game? Why does every property, even fucking Water Works, have 3 or 4 of them?)
Then there's cliffing. Community Chest => "Fired on day 364. No equity. No severance. No-name company. Fucked reputation. Here's a Revolver. Wait, wrong game. That's Clue, which you don't have. Do not collect $200." Employees can get cliffed, but if a founder tried to "cliff" an investor he'd Go To Jail for fraud.
Absolutely. But, barring the true home-run success stories, the vast majority of founders lose effective control of the financial dealings of the company by the time they sign the Series A.
All rents were calculated by extrapolating the original rents, and you could engage in loans at arbitrary interest rates with other players.
I'm amazed how much this crazy game resembles the current world economy, and I'm convinced that the current economical power-brokers have the same attitude to real money as my brother and I had to Monopoly money when we were 10 or 11.
In my personal experience (I'm 36) I get better with every line of code I write. I'm a far better programmer now than I was 10 years ago.
I agree. The badasses tend to get better as they age.
I wrote about this: http://michaelochurch.wordpress.com/2013/04/22/gervais-macle...
The career yellow belts (1.2-1.3; 4th kyu) only get more set in their belief in their own rightness. They also tend to fall out of date, despite their expertise in the local maximum they've conquered. Also, since they tend to drive out the 1.4+, they aren't surrounded by better people.
There seems to be a bifurcation that happens very early on, based on a person's first few programming jobs as well as access to non-professional programming resources. Either you plateau as a yellow belt (1.2-1.3) or you start climbing, and that climb takes a long time (a 2.0 under age 30 would be very rare). I've worked about 3000 hours per year for seven years and that got me from ~0.8 to 1.8, but that's also with a lot of early exposure to programming (QBasic, Java in school, applied math research).
The shame of it is that some people conflate the career yellow belts (Expert Experts) with the older people who keep getting better each year.
This is quite a feat in my company and in the industry in general as a lot of firms do not want to keep contractors for more than 2 years. He's been at my firm for about 10 years now; 10 years of contracting at I am sure £800+ per day! But I know that behind those high numbers there is some hard work and constant self-marketing.
Stated more clearly: "Once you get to a comfortable multi-six-figure salary, you'll find you don't get spectacular percentage increases quite as often." That seems applicable to any field anywhere.
The article correctly states that an older guy is likely to be making three times as much as a new grad, while incorrectly assuming that he's still only capable of using the technology he learned 20 years hence.
So, no. The fact that the author couldn't actually come up with any statistics implying that being old is actually a bad thing, despite combing the Bureau of Labor Statistics and Census for data, seems to be a good indicator that there's nothing to worry about.
I know lots of guys working as engineers in their 50's. People hire them, because they have an expertise. Not a niche just by virtue of being old (like COBOL) but a problem domain they know inside and out. Nobody is tossing out their 45 year old engineer that works on carrier grade network software in favor of a fresh graduate.
This. It's the same way in the high profile freelance game. Those that have a specific knowledge, most often, can charge higher, often ridiculous, rates. It doesn't even have to be languages or frameworks. It could be implementing large scale ecommerce solution with Magento. Companies that need that level of focus are willing to pay.
Can you imagine Bill Gates, in college or no college debate, writing about quitting college, listing his milestones and then fast-forward to $60+ billion in net-worth.
The truth, as always, is nuanced. As the author says, it's up or out. If you're 50 and expect to do be doing the same type of work you did when you're 25, you're mistaken. As programmers we have to constantly be adapting.
The problem here is getting into any kind of attitude that says that you can coast. There is no coasting. Not in this business. If you're not constantly reading and trying out new things, your salary is headed down.
When you're in school, deadlines are well-tested because everyone's doing approximately the same work. Unless you have a health crisis or death in the family, you don't have an excuse for a late assignment and the typical 10%/day policy is more than generous. When you're at work, though, 90% of "deadlines" are just someone's opinion and a good 50% are impossible. VC-istan is about exploiting young kids who haven't learned that yet and who would rather stay at work till 3:45 am than miss a "deadline" set by some VP with Shit's Easy Syndrome. See: http://steve-yegge.blogspot.com/2009/04/have-you-ever-legali...
The older programmers are really good at what they do, and they're a lot more flexible than the stereotype gives them credit for. The problem, however, is that they're a threat to the cult. Bring someone on board who does his best work between 8 and 11 (when the kids are just starting to roll in) and goes home at 5:30, ignores the deadlines that don't actually matter (i.e. the ones set by egotistical bosses, not hard deadlines that must be met if at all possible) and suddenly there's a breakdown of the Cluelessness. Couple this also with the Dunning-Kruger effect in reverse; the Clueless young people don't see that the older guy is 4x more efficient than they are (because they're inefficient and don't know it, cf. D-K). All they see is a guy putting in significantly fewer hours. Either the young Clueless will see him as a piker for his shorter work hours, or as a badass for his high effectiveness (making him a legitimacy threat, as the younger engineers see him as the real alpha).
I would also add that there's a culture of extremely harsh age-grading. VC-istan is most concentrated in high-COL areas where you can't raise a family on a (non-financial) programmer's salary; at two you can do it, but two career jobs, plus kids, necessitates maids and daycare and that's expensive and complicated, too. Because the only way to own a house in these cities is to become an executive or financier, you have a lot of 22-year-olds who see themselves being executives-who-code in 5 (!) years-- having managerial control of the division of labor and using it to give themselves the fun stuff, but being full-time programmers-- never mind the fact that that's extremely impractical in almost every organization. Very rarely do executives spend less than 20 hours per week in meetings. A 40-year-old who's been around the block and still programs might tell them as much. That's a problem. To counteract this, the 35-year-old VCs and 30-year-old founders discredit the 40-year-old programmers as "bitter" and he reacts by leaving, just after the one-year cliff so as to take a couple lottery tickets out the door with him because, well, strange things happen.
The short way to say this is that older programmers aren't the problem. The issue is that most of these formulaic startups are founded on exploiting young talent that overestimates the career value of low-end engineering work (because these people don't have the experience to tell what quality work is) and most older people can see through the bullshit. That's dangerous, insofar as it represents the threat of the younger Clueless engineers also learning to see.
I once worked for a CEO and 90% owner of a startup who did very well for himself ($30 million exit - which he got almost all of as he hadn't taken any external funding) even though he really believed this. As far as I could tell he wasn't pretending - he really believed that any feature (no matter how complex and we were working in a very complex area) could be implemented in a week. As I was VPEng this perplexed me greatly - particularly as there was a conspicuous track record of features not being implemented in the times before I arrived.
My only explanation was that his attention span was about a week - if he asked for something and it appeared in a week it was great. If not he forgot about it....
[NB This CEO was a very bright guy - and I had a lot of respect for him].
Was this at work or for a side project?
In other words, is this pattern followed because it works, or is it just a cultural artifact that these companies would do best to abandon (but maybe can't for whatever reason)?
If you're trying to build Real Technology and you don't have a few 10+ year programmers, you're probably fucked. Different game altogether. Unfortunately, it's hard to get money for Real Technology because the payoff happens in the longer term. Most Real Technology companies make most of their money by consulting.
But, I don't think that has a lot to do with what we see as age discrimination; It does give the young kids a boost, but most people start families in their mid to late '20s, and even in the computer industry, that's young. By the time you are hitting 50 and seeing real age discrimination? your kids are almost taking care of themselves. (or, at least, they are leeching money, not time.)
It's not about absolute age. It's about harsh age grading. If you're 37 and VP/Eng, you're fine. If you haven't held a management position by that age, it starts to raise questions (even if you have no desire to manage). Hell, even at 26 you're out of the running for analyst-level positions in banking; you better have something that shows you're associate-level (a graduate degree or strong technical accomplishments).
I'm 29 and already experiencing age discrimination. I'm losing callbacks because I have "too many jobs" (which is basically a legal, back-door age discrimination although it's about the cynicism and "disruptive" expertise that come with "job hopping", not chronological years). Now, any place that has that attitude is a shitty place to work, but sometimes shitty jobs are useful and it's a loss (not a major one, but it affects leverage and financial planning) not to have them as options.
well, to the best of my knowledge, at twenty nine, you are not in a protected class. the age protected class is 45 and up, I believe.
I'm skeptical of this idea that you face age discrimination before 30. It doesn't line up with any of the statistical data, and it certainly doesn't line up with any of my anecdotal data. (I'm older than you are, but not by a whole lot.) I mean, I could be wrong, of course, but that's below the median age, most places I've worked. (I mean, if you are talking specifically about web-startups that are still in the startup phase, then that's old. but that's a pretty small percentage of the job market. It takes a whole lot of web startups to make one yahoo in terms of number of engineering jobs. And generally speaking, the startups pay shit, so they get young workers trying to get their foot in the door, young workers who move up and out to the larger companies that pay more.)
Maybe you just have higher standards than I do? I mean, I thought getting paid six figures as a unix janitor in an area where that salary means I live in a condo (or buy during the downturns; the median santa clara county single family home last year was two hundred thousand dollars cheaper than the median single family home this year. Last year, median was a reasonable half-million.) means I'm doing pretty good. I mean, yeah, if you want to make millions of dollars a year, you are going to be on something of an accelerated schedule.
On the other hand, I haven't seriously tried to get a full-time job working for someone else for several years now, so maybe I'm just not seeing it.
I'm in an "age protected class"? Quick, I need to get hired, fired, and hire a lawyer.
http://finduslaw.com/age-discrimination-employment-act-1967-...
You mention too many jobs. What is your duration at such? If your history shows a consistent pattern of moving on every 18mo or so, it will raise flags about your commitment level. It has nothing to do with age at that point for many people I know when they look at resumes. Of course, the other end of that is many years at the same org can raise questions if it shows a lack if advancement.
Sounds like you are just not applying to senior enough positions
That's lying. It's REALLY STUPID lying at that. Your employment duration is one of the things companies are unequivocally allowed to say, and often do.
a lot of this is that risk-free investments had a positive expected return when they were working. Imagine that; T-bills that pay out more than inflation! I mean, it's a total thing of the past now, of course.
There was a bullshit fake article written by someone at facebook this week, some tongue in cheek thing about how awesome it is to work at facebook as a developer. Reading it made me sick, and right here you have articulated exactly why.
One difference is that athletes tend to compete well physically only when young (depending on the sport obviously) whereas in tech you can still peck that keyboard when you're past your physical prime.
No they don't. The young, smart developers who already have strong backgrounds adopt new technologies, the old, smart developers do the same.
"The young can easily pull all-nighters."
Sure they can, and companies should be moving away from that as the code quality does drop off past hour 12 unless they're a super talented developer. In which case they're probably smart enough to know not to work an all nighter.
If you're not willing to pay $150k for a great developer that's going to get shit done, you're fucked already.
If you use a high-productivity language like Clojure or Haskell and work on a green field, you'll find that you can't program for 12 hours straight, because there's no fat in the development process. Your brain starts to hurt after 8-9 hours. Personally, I can get useful work done for about 11 hours per day (I seem to average 65-70 hours per week, including writing which has taken a lot of my time recently, no matter what my mode of employment) but there is no way I'd be able to write code for 77 hours per week. Maybe 55 if I really had to push.
If you're not willing to pay $150k for a great developer that's going to get shit done, you're fucked already.
My first programming job paid just over half of that (well, with a sizeable bonus, but 3x higher than the "top of range") and I got shit done. Cost-of-living is also a factor. I would probably build in Austin or Boston (it annoys me that those cities' names rhyme because they happen to be the top 2 candidates for the 2018 tech hub, as I see it) where the brains-to-dollars ratio is more favorable than New York's. (New York has plenty of brains; the dollars are a problem. Fucking rent.)
The last part is mostly about employers not willing to pony up for developers who know what they're doing inside out, and are willing to sit down and get it done and go home. I'm sure there's plenty of people who'll work for significantly less and get the job done as well.
That seems to be an age thing, at least in my experience. Skill goes up. Endurance doesn't go down per se, at least in the ages that we're talking about, but it gets a lot more selective.
I can do a long day (14+ hours) if needed, but I'm only 29 and I'm already up at 5-6 every morning. If I worked at a company that expected the workday to continue past 9pm (and I did work at once of those when I was younger) there's no way I'd be able to do it.
I have a lot of entrepreneurial experience and am a pretty good general business manager. Coupled with the ability to code, I find that I am in fairly great demand.
If this is true, and the trend continues, then any ageism based on aptitude could reach a point of diminishing returns very soon.
I would also challenge the idea from the article that "the young understand new technologies better than the old do." Which I think is less true today than it was a few decades ago.
I believe this apparent ageism is a result of pattern matching and cost cutting moreso than a widely held belief that young engineers can outperform more experienced ones.
My anecdotal data lines up with the statistical data.
There is this perception that you can take a young person and train them fairly easily; that this is the thing to do. I think with someone older? it's not so much that hiring managers don't think they can be trained as that it's /weird/ on a cultural level, for a 25 year old kid to tutor some 50 year old. Really, I think that's a big part of the problem.
Now, I think the other side of that coin is that for most of us? we hit our 30s, those raises start slowing down, and we start looking for other giant gains.
I mean, through my teens and twenties, a year without a 20% raise was a disappointment. And if anything, the raises lagged increases in my actual effectiveness. In my late 20s, and early 30s? that slows down a lot. I'm looking around for that next productivity jump, and hey, turns out all those social skills I didn't have when I was younger? I am not saying I'm smooth or anything, but hey, I'm a hell of a lot better than I was. It looks to me like there is some low-hanging fruit (productivity wise) in management.
So that's the other side of the coin; Most of us? a decade or two into our careers, well, we start looking at management. That explains some of the fall-offs in Individual Contributor pay; Many of those who can, make a run for management, and many who are left behind are seen as "not making the cut" (which is kindof silly, considering the different skillsets required)
Now here's the key claim: "increased dramatically for engineers during their 30s but that these increases slowed after the age of 40. At greater ages still, salaries started dropping, dependent on the level of education. After 50, the mean salary of engineers was lower—by 17% for those with bachelors degrees, and by 14% for those with masters degrees and PhDs—than the salary of those younger than 50. "
Two points:
1. Would we expect a linear increase in salary with age? I would not. At some point the salary would likely 'top out' in any job.
2. The part about over 50s ignores a very important fact from the study: the over 50s work less (and therefore earn less). To quote the book: "Workers over the age of 50 are much more likely to work less than a full year [...]. One in six engineers aged 51 to 65 reported being paid for less than a full year of work in 2005 [...]". The book goes on to make a confusing claim about whether that's voluntary or not (jumping to the 2002 downturn and talking about interviews with engineers but with no data).
That said, I also believe the consumer web is in for some pain (the notorious A crunch). I get the impression a lot of unqualified 'super angels' felt it was more important that entrepreneurs become professional money raisers and media darlings, rather than help them focus on their core business.
When it comes down to it, if you're a seasoned entrepreneur with repeat successes – you'll be unstoppable for the rest of your life. The Biebers of startups are edge cases that simply get a lot of attention because it compliments media's goal for driving pageviews.
http://thecodist.com/article/yes_i_still_want_to_be_doing_th...
I'm a wet biologist by training and have been doing research and associated work for a decade. I have little opportunity to code at my current job. What I'm hoping to do is to formalize and hone my programming skills through some additional university courses.
Am I wasting my time? Am I forever going to be kicked to the bottom of the pile of applicants for junior positions because I've already had a career?
If you've been in a similar situation, I'd love to hear how it worked out for you.
The great thing about coding is that you can show how good (or bad) you are relatively easy (compared with other fields). There is also a real shortage of coders right now. If you are good, and you like to code, you can catch up and stand up over a lot of people that has been doing one year, ten times.
I'd say that one thing you can to do is show up your code (through open source, etc), extra bonus points if you do something that is useful, and whenever someone asks you you can say: "Do you know X? I did that" ;-)
You will find companies that want a mix of wet lab and coder skills. You save them on the translation costs for making software the biologists actually need.
If you're willing to take a junior dev position for junior dev pay, I would think that in general you won't be disadvantaged because it's your second career.
Programming done in most startup's and corporate settings are very similar to lab-work. The young grad students are lured by PI's to do repetitive work with promise of publication when the reality is it's a lottery. After a few years, what is looked upon as glamorous and interesting by onlookers of the high-end instruments and high-impact research, will turn into mundane and repetitive lab protocols that's intellectually stale and unstimulating; any results and interpretation is only esoteric and vague in the academic sense.
The actors are different but the characters are the same. PCRs, blots will be replaced with repetitive coding exercises being asked of you by project managers. PIs will be replaced by MBA bosses. The academic grind for glory amongst the sub-field of 5 people will be replaced by maximizing profit in the business logic of the sub-field of the company you are in.
The pay is slightly better or equivalent; the job security much worse. People threw around the 150K mark here as an average developer salary. It's analogous to say that the average lawyer makes 220K. It's not true. After working for about 5 years in Boston, most of my peers are getting salaries around the range of 90-110K. Only people I know who are getting over 150K at programmer level live in SF which in their case is not very much. Most software engineering job req's I looked for in Boston tops out at 150K, this includes senior positions for 10-15 years of experience and at well-funded companies.
If your goal is to achieve intellectual autonomy and financial independence by becoming a programmer, it's very difficult. The sub-culture on this forum skewers towards college students and recent grads who are more naive about the field. Others might give more defensive answers to your query, but I want to give you a honest opinion.
I chose coding over Biology because it was attractive for a young person out of school and didn't want to get on the grad school treadmill. But if I inherited a lot of money suddenly, I'd want to apply to Biology grad school and do research for fun, without caring about my PI and departmental politics; and/or work on open-source games without caring about IT career jockeying or monetization. Just food for thought.
This article confirms what I suspected, older programmers don't retire, they just never get rehired after the latest round of layoffs.
(Source , National Public Radio ... http://www.npr.org/blogs/alltechconsidered/2013/04/03/176134... )
What H-1B Employers Say
NPR repeatedly tried to interview the biggest H-1B users, but none agreed to talk.
No one is talking be we all know what's going down.
Thanks for posting this, tosseraccount.
(my emphasis)
So how do you untangle the ageism issue from the skills issue? This article doesn't, but for the broader question you kinda have to.
How do you control for skills when finding out about ageism?
I'm pretty sure there's ageism in tech. This makes me a little scared. It's this exogenous thing that I can't control.
I'm pretty sure skills-decay is at least as common as ageism. Skills have market prices. They change.
This reminds me of a (PG?) essay that said essentially, if you're gonna call yourself a developer, don't call yourself an [X] developer, because you are not the language [X]. I suspect it's all the [X] developers out there who are seeing the most "ageism"
But they what do I know, I'm in my 20s.
[edit: typos]
https://news.ycombinator.com/item?id=5588058
One of the comments there sums up the issue: "It's hardly a secret."
This seems to me a serious overstatement and more than a bit of "we're out of things to write about, let's make this one seem more shocking and hidden than it is" sensationalism.
> Brown and Linden’s analysis of Bureau of Labor Statistics and Census data for the semiconductor industry revealed that although salaries increased dramatically for engineers in their 30s, these increases slowed after the age of 40. After 50, the mean salary fell by 17% for those with bachelors degrees and by 14% for those with masters degrees and Ph.Ds. And salary increases for holders of postgraduate degrees were always lower than for those with bachelor’s degrees (in other words, even Ph.D degrees didn’t provide long-term job protection).
> It’s the same in the software industry. Prominent Silicon Valley investors often talk about youth being an advantage in entrepreneurship. If you look at their investment portfolios, all you see are engineers who are hardly old enough to shave. They rarely invest in people who are old.
The first paragraph, which contains the data that gives the veneer of respectability, is about the semiconductor industry. Even then, salaries don't actually decrease until people hit the beginning of retirement age (surprise!).
In the second paragraph, we switch to the software industry, where it's "the same" (no data to support that, natch). The supporting anecdote isn't even about employees, but investees... What proportion of people receiving money in the software industry do so via investment rather than a paycheck?
Of course the specter of ageism haunts everyone, so the linkbait is effective and we have 60+ comments here.
[1] "However, there is an obstacle to learning in mature age: the mental decline related to the deterioration of brain function, which is determined in the later stage of life. When the age increases, the ability to generate new synapses between neurons in response to external stimuli declines; this ability is the basis of fundamental and complex functions like memory and learning. The brain ageing causes various changes: reduction in brain volume and gray matter in particular, progressive atrophy of neurons and their interconnections, degeneration of cortical regions governing the functions of sensation, cognition, memory and motor control, metabolic decline of key neurons and loss of features related to physical and chemical deterioraion (OECD, 2007).The acquiring of new knowledge and skills becomes therefore more and more diffcult, and the execution of complex tasks requires more effort than the younger learners.
[1] http://www.academia.edu/2039409/The_Ageing_Brain_Neuroplasti...
In regards to the whole neuroplasticity/cognitive decline, I think this varies a lot by person and their environment. I know people in their 60s who are much more agile thinkers than other I know in their 40s.