Software Engineering Is a Dead-End Career, Says Bloomberg
An anonymous reader sends this quote from an opinion piece at Bloomberg:
"Many programmers find that their employability starts to decline at about age 35. Employers dismiss them as either lacking in up-to-date technical skills — such as the latest programming-language fad — or 'not suitable for entry level.' In other words, either underqualified or overqualified. That doesn’t leave much, does it? Statistics show that most software developers are out of the field by age 40. Employers have admitted this in unguarded moments. Craig Barrett, a former chief executive officer of Intel Corp., famously remarked that 'the half-life of an engineer, software or hardware, is only a few years,' while Mark Zuckerberg of Facebook has blurted out that young programmers are superior."
I did a Masters Chemical Engineer (didn't finish), and a bachelor in CS. In both older students and alumni warned that you should get out of tech jobs and move into management within 10 years after graduation.
The first time I heard that must have been in the 1992-1994 timeframe
It's not like we make as much money as atheletes, so where do programmers go when they are 40?
I'm god, but it's a bit of a drag really...
Sound like that's because you should be able to graduate to a higher level software develpment role by then.
Really explains a lot about Facebook as well, actually!
Unless you are one of the recognized leaders of your field, you become "obsolete" to your employer after about 15 years even if your skills are not. Why keep a stubborn old programmer on board, when you can replace them with a younger less stubborn programmer at lower pay.
It's important to have an alternative career path. For example, I went to college for Computer Science, but have always been interested in computer security.
I took the computer programming skills I learned and put them to use in the computer security field instead.
I don't write code anymore, and I'm ok with that. Instead, I figure out what security issues others created in their code, without even having the source code in front of me.
Unfortunately, at least when I went to college, they never taught secure coding techniques. I had to learn all about that on my own.
Got my first software-development gig at 25. Been doing it full-time since then, and now I'm 58. Still going strong.
What are those Bloomberg assholes smoking?
you could say that about any professional career... I am sure doctors are pretty dead end too...
I guess unless you can hedge fund your way to making billions by exploiting millions... you are in a dead end career.
...it won't end well, now, will it?
People don't just magically stop having bills after 35, individuals are getting married and starting families later in life, and software / tech careers are becoming the linchpin of what's left of the American middle class.
Effectively cut them off from their career fields at such a pivotal point in their lives, en masse... see what you reap. You may not be doing much hiring of any kind when they're done shoving your dumb, pathologically stock-price-obsessed ass effectively out of society.
Software engineering as a private sector job is fairly new in the grand scheme of things. Programmers that are 40+ years old probably aren't even all that common, certainly nowhere near as common as programmers younger than that. I am not so sure programmers starting today will face quite the same challenges having grown up in the midst of the technology revolution. Furthermore, in ANY job you probably will see the older workers doing much more management compared to younger workers. I don't get how this is supposed to be news. Sounds like pointless fear-mongering to me.
I think what they're really saying here is:
"Programmers in their 40s have wives, kids, and hobbies, and that means they won't put up with the 50-60 hour week bullshit we can get the 20-year-olds to eat." Also, they expect raises and vacation, and we just can't have that.
Work isn't your life. Work is what you do to pay for your life.
---
ECHELON is a government program to find words like bomb, jihad, plutonium, assassinate, and anarchy.
First, the jobs move overseas and we get told it's a "good thing":
http://blog.douweosinga.com/2003/10/why-jobs-moving-overseas-isn-so-bad.html
Then, there is complaining that the industry can't find any programmers:
http://www.xconomy.com/seattle/2011/05/23/tech-talent-shortage-one-of-this-years-major-storylines-illustrated-in-national-study-by-job-search-site-dice/
Next, the industry tries to figure out where all the programmers went:
http://www.google.com/search?q=shortage+of+programmers
Finally, they realize they've castrated themselves and simply claim it's a dead-end career. Nice.
Join the Slashcott! Feb 10 thru Feb 17!
I spent over 15 years of my life as an electrical engineer before I decided to make a career transition into application software development. I went back to school for a mscs and recently got my first entry-level software engineer position, 4 months before (and 4 credits shy) of graduation. I did it at age 41. That flies in the face of the Bloomberg schmuck's article.
Mark Zuckerberg of Facebook has blurted out that young programmers are superior.
"Willing to put up with abuse" does not mean "superior", however much employers might like to conflate them.
As I approach the FP's end-of-career age, I find myself far, far more efficient than a decade ago, in not just my coding-for-coding's-sake work, but in my ability to address what the business wants out of my code. The beancounters don't care about skinnability, about what buzzword technologies went into the app, about how fast (beyond a very loose "fast enough") a program runs. They care if it answers their questions, and does so accurately.
Unfortunately, they can't easily see past how much I cost - Yes, at this point in my career, I make in the ballpark of twice as much as an entry level dev. And yes, I do provide that much more value to the company than I did fresh out of college (I'd even go so far as to say I provide far more than merely 2x the ROI, but will stay on the conservative side for now).
Important point to note about the FP... It talks about Intel and Facebook; TFA additionally mentions Microsoft - All companies that do tech for tech's sake, not as a means to satisfy a non-tech-related business need. Your time in Silicon Valley, your chance to strike gold in a startup, your 60 hour weeks and the glares for cutting out early when you need to attend Grandma's funeral, may all end by 40. But your career doesn't need to, as long as you've spent those first 15-20 years picking up the skills that matter outside the tech hubs.
Mark Zuckerberg of Facebook has blurted out that young programmers are superior
And his great achievement as a programmer, that gives him the right to judge programming abilities, is ...?
May Peace Prevail On Earth
Or Norman Matloff, in an op-ed on bloomberg.com, says?
Say what? I started programming in the mid '70's. There were already "software engineers" and "computer scientists" back then. Computers were around long before "personal computers" and needed programming.
The only way I get work as a programmer now is as an consultant. It is not because I haven't kept up with tech, languages and tools. Around 10 years old head hunters started telling me it would be easier to find work for for me if I rewrote my resume to hide my true age and years of experience.
The majority of my clients are through referrals, they've never seen me in person and have no idea how old I am.
This is going to sound "ageist" but ... the only advantage young programmers have is that they're willing to work 20 hour days and 7 day weeks for months at a time. And do it for less money.
http://norvig.com/21-days.html
So you need about 10,000 hours of working in a field to become an "expert". If you believe that article (and I do). And someone who is an "expert" has, hopefully, seen enough mistakes and errors over those 10,000 hours to be able to head them off when they show up again.
That's what you're paying for when you hire the experienced programmers. The knowledge of what errors people usually make and why they make them.
So you get code with fewer errors and fewer re-writes to take out the errors that never got in in the first place.
I took over as a developer on a project lead by a "hot young developer" (how the management saw his skill set). He and I graduated around the same time. Guess what? Dude didn't even know what primary or foreign keys were. He also had no defaults, not null or unique constraints. Most of his code was a steaming pile of dog crap expressed crudely in Java. When I got on the project and saw the code, my eyes felt like they were on fire it was that bad.
But hey, he's got the "latest skills" right?
Repeat the same story with PHP, Python or Ruby replacing Java and you get a snapshot of where this leads.
Yeah, I'm over 40, and my father was a software guy before me (still working for Adobe).
# (/.);;
- : float -> float -> float =
As a study that was linked to right here on Slashdot not long ago shows, ageism in software development is nothing more than arrogant bullshit.
And Zuckerberg is nothing more than a PHP script kiddie who both got lucky and cheated others to achieve his success. His word is hardly to be taken seriously.
Subject says it all.
Contact me if you want to see my resume.
Interviews have been coming at a steady rate so far, and in one shop I'd be one of the younger people if hired.
In Liberty, Rene
I think all of this depends on the industries. In certain industries, banking, government, etc. "old" programmers are very much in demand. Why, because these industries value consistency, tradition and the like. In new industries, that change overnight, it is out with the old and in with the new.
When I was the DP manager for a large government agency, we found that taking employees who understood the business aspects of the agency and training them to program was much more effective than hiring programmers and teaching them the business. I haven't seen any data to suggest the same wouldn't be true in the private sector.
I think of software engineering as being a higher level funtion than computer programming. a code mokey might get hired as a computer programmer, but then grows into a software engineer...
In his book ("iWoz") - Woz tells a story where "when he was young" he was able to lock himself in a room for a week and come out with a completed project. As he aged he found that he lost that ability/motivation (and he could just pay someone to write the code)
regarding Zuckerberg's comment, that guy who used to run Microsoft (Bill Gates I think) basically said the same thing - i.e. young minds have better/more ideas (read "Breaking Windows" to see when Bill Gates hit that wall).
anyway, the human brain changes as we age - which may not be "fair" but ... ummm, what was I saying...
It ain't what they call you. It's what you answer to. http://mylyceum.us/
"(Norman Matloff is a professor of computer science at the University of California, Davis. The opinions expressed are his own.)"
Ya know, If I was a prof of CS at UCD, I'd probably think my upward mobility was limited too. I interview fresh college grads and senior professionals alike in my software company. I, personally, am equally likely to pick either. Age isn't as much of a metric for ability as ability is. 20somethings have lots of energy. 50somethings have lots of experience. A good team needs both.
Facebook is an experiment. It's unclear how successful they will be as a company. I do know people that work there and youth is a highly regarded trait.
MSFT is a failed experiment. A company like that is where talent goes to die, in my opinion.
Which could mean that a young person will stupidly take the first job offered while an older person will wisely shop around? Or maybe that an older person has stricter job requirements (such as not moving, good school district, spouse's job, etc, etc.) which inherently make it more difficult to find a job irrespective of age.
I'm near 40 and feel like I'm generally more employable now than I was when I exited university. That said, as to the over/under predicament, it seems like there are very few "entry level" positions advertised. Nobody wants a "junior software developer"; they want "senior software developers". Maybe it's because I've primarily worked for small companies and startups. That said, I don't feel like these "senior developer" positions are that much more demanding or complex than the stuff I did when I was, in fact, a "junior developer".
One comment on work/life balance: I've never been expected to work more than 8 hours a day, ever, for any extended period of time. Have I had to work late nights when there was a deadline or a release? Sure. I've worked over some weekends, but very few. Then again, I don't work in the gaming industry and I'm not located in northern California. Maybe that makes the difference.
TFA points out that it takes *longer* for the older programmer to find the job. This has nothing to do with how many older guys are out there.
It takes longer for most older people to find jobs. It has nothing to do with being a programmer or not.
And whatever Zuckerberg says can probably be ignored, because you just know he's the type that, when he's getting on a bit, will be saying that age and experience are what counts.
Zuckerberg runs a big company. He might have spent a few years coding, but he isn't a programmer anymore. I doubt that he put in enough time and sweat behind a compiler to be anything more than a clever amateur, so his opinion on the topic counts for zero. So basically, you have a college kid's level of experience in computer science making sweeping statements about who is and isn't a skilled expert in the field.
Once he is an expert in the field of software engineering, I will listen to what he has to say on the topic. Looking at the quality of his software, it is pretty obvious what dismissing experience gets you.
HA! I just wasted some of your bandwidth with a frivolous sig!
If they want a newbie that knows a lot of abstract book-learnin and bangs his head against the wall for a week on a problem that I can solve in 10 minutes let them continue the illusion that they are saving money.
I will be over here doing great work, advocating the high value practices of the industry, and getting higher and higher salaries from smart employers.
For that matter, forget even thinking about those longer hours and just pay your coders by the line. That will get you ahead.
Theoretically, word gets out...kids stop wasting money on college education that won't last till they break even on their student loans...companies grudgingly have to hire the old farts who had trouble finding work when their were so many recent grads...CS is no longer a dead-end career.
Personally I believe the bigger issue is the pressure offshoring has put on the market.
The jobs that used to be handled by junior programmers are now offloaded to offshore service providers. So the junior programmers, who just happen to have played with the latest toys and tools while we were busy writing useful code with the previous generation of tools, are readily available at a cut throat price.
So the work that used to be handled by the intermediate programmers now gets passed off to the new grads who used to be the juniors. In the meantime, the intermediate programmers are now ready and willing to undercut the senior programmers for their former job of designing systems and collecting requirements. Sure they don't have the experience of the senior programmers, but they're cheaper, so they get the job.
Which leaves the senior programmers on the short end of the stick. Thanks not only to the pressure of offshoring but the increased use of effective template-based designs, tooling, and frameworks that put to shame older tools like CORBA, and suddenly the only experience the senior programmer has that's actually relevant is their business experience.
Their degree is out of date. Their tools are matured with a wide range of skillsets available for reasonable or cheap prices.
But one thing experience teaches you that nothing else can is an intuitive grasp of how the frameworks and tools function and what they are probably doing inside all that obfuscated and hidden code. Because we used to have to write the code the frameworks implement by hand.
Unfortunately, despite the speed with which senior developers can debug problems thanks to their intuitive grasp of "the machine", there just aren't enough "tough" debugging problems to justify keeping them around in anything but the largest of teams and companies.
Still, senior developers can find work. If they're willing to retool, retrain, move, and take a pay cut that may well mean they're making less in real, spendable dollars than they did twenty years ago. And if they're real, real lucky.
I do not fail; I succeed at finding out what does not work.
It's not as dead end as writing for a newspaper!
I do hope you mean COBOL? But I gotta admit, COBALT is an awesome name for a language :)
I do. Typesetting and "desktop publishing" in the 1980s (It was still code back then). Technical writing since 1992. Automated testing since 1994. The technologies change, true. I've been through four automated testing systems (Visual Test, a homegrown C++ system, QuickTestPro and finally TestComplete) and had to learn powershell, c#, vb.net, how to run a dozen VMWare ESXi servers effectively and a few other odds and ends along the way, but I'm still working. One day, I'll be rebuilding a server to install a larger hard drive, the next, I'll be writing code to control 80 machines simultaneously. The day after that, I'm analyzing costs on a spreadsheet and planning server expansion. So, after 20 years, I'm still working in software. Pay's not bad either.
There are mitigating factors of course. I don't drink, drug, eat fatty foods and I exercise regularly. All this seems to extend your brain's working life. I can usually figure out what's going on and cobble up a working idea or two before the twenty year olds are out of the gate. Aside from tolerable brain health, I can usually get to solutions faster just because I've seen so many issues before in different guises. Luckily, as long as you do it without embarrassing them, they're usually open to suggestions.
Please do not read this sig. Thank you.
I wouldn't generalize it to women. Most of the "wise, seasoned vets" that I've had problems with were men. She is just the most recent.
So, after 20 years, I'm still working in software.
For the same company?
GP wasn't saying nobody has a software career for 15 years. He asked who has a software job for 15 years, meaning one specific gig at one specific company. I agree -- maybe engineers at companies like IBM, Oracle, or Sun have stuck with the same company that long, but I don't personally know many developers who have. Anecdotal evidence suggests few Google or Microsoft developers stick around so long, which says a lot.
Breakfast served all day!
It's simply not true that middle-aged developers have a hard time finding work due to rampant ageism. If you have advanced skills building high-quality software with technologies that are in demand, your age hardly matters. The smart employers value engineers with years of experience who are more likely to create good products and not make costly mistakes. I've been working for almost 20 years as a professional developer, am now 41 and making the best money of my career developing financial tools for a major investment bank.
Development teams doing high-profile projects that get media attention (as opposed to boring, routine stuff like telecom databases, retail POS terminals, embedded SW for consumer devices, etc) do tend to have more developers who are in their mid-30s or younger. This is generally not because of age bias, it's more likely because younger developers are most familiar with the latest languages and tools. Startups also tend to have young developers since they are more OK with high risk/high reward deals and long hours, and haven't had as much opportunity to get into engineering careers with big companies. Also, after a few decades in the field, many developers eventually get tired of endlessly staring at computer screens and learning new skills every 5-10 years. They move up into management or start new careers. A well-educated, hard-working engineer can easily move into many other less demanding career tracks including finance/investing, marketing, HR, real estate, and non-technical corporate jobs.
"The Dunning–Kruger effect is a cognitive bias in which unskilled individuals suffer from illusory superiority, mistakenly rating their ability much higher than average. This bias is attributed to a metacognitive inability of the unskilled to recognize their mistakes.[1]" - wikipedia
Exploitive management wants people they can manipulate and take advantage of - that's why they like kids.
All I see written by kids is a bunch of insecure PHP web sites with obvious errors and Java projects trying to reinvent the wheel that are always over budget and never finished.
It wasn't kids that designed your CPU, GPU, compiler or OS.
It wasn't kids that took us to the moon or developed nuclear power.
The best thing you can do in any technical field is find an older mentor. All old people were young but young people haven't been old yet. Do you know that Java project you've been working on for a month? You can do it in 2 shell commands.
The other issue is that software can have a very high return and most programmers have relatively low consumption lifestyles so most of the best programmers own a biz or enough equity or before they are 40 that they don't have to work bad jobs. Compare that to the average management fool that spends every penny he makes and goes into debt to get a 2nd house and a 3rd wife. He'll be working until the day he dies.
Ever see anyone start programming at 50?
Ever see anyone start being a biochemist at 50? Or start being an auto mechanic? By 50, you almost certainly have had some kind of career for a long time, even if it's just managing a bar. People who start "second careers" that are a radical left turn from their last career usually have enough money socked away that it's basically a hobby for them. It's not that it's hard for mature people to start programming, it's just that few people have the luxury of dropping everything and starting over. Remember, at 50 you're probably closer to your death than to the age you were when you got your undergraduate degree. You have different priorities.
Breakfast served all day!
forget even thinking about those longer hours and just pay your coders by the line. That will get you ahead.
It will certainly get you ahead in the contest for needlessly long, verbose code....
He is a very influential employer of programmers, in terms of numbers he employs and the likelihood that similarly clueless but also influential people will listen to him.
Comment removed based on user account deletion