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."
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.
Of course someone like Zuckerberg prefers kids that don't have a life, will put up with any crap their fed by the boss, and won't contradict management.
The same goes for your other bean counters.
A Pirate and a Puritan look the same on a balance sheet.
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.
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.
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 ..."
You could have stopped right there.
Hold on there. People skills are important if you're ever going to be a successful manager. I've worked with plenty of developers over the years who've been promoted to management positions, and they have development skills that are out of date to go with bad people skills. That's basically the worst of all worlds. Every project I've been on with guys like that has been an uphill battle.
You have to be the sort of engineer who genuinely cares about the success of others on your team above your own personal success. (I've seen one too many technical managers who covered their own tails by tossing one of their employees under the bus...only to discover that employee had critical knowledge about a project that sets the whole team back in the long run.) You have to be the sort of engineer that is interested in time management, personnel skills, putting people in the right place to succeed, and getting the right people to work together to achieve the best results for both of them. Yeah, I know it sounds corny, but it's the truth. You have some of those concepts pounded into your head when you do an MBA with a focus on management because you're stuck doing a pile of Industrial Psych courses (depending on where you go) and you have to take them seriously. If you're coming into a team without a lot of technical background, those are the concepts that your employers will grill you on in your interviews...not whether or not you know what a regular expression is or what SOAP stands for. You have to be able to see personal friction between your team members and deal with it before it gets out of control...not just wait for it to become a problem then fire someone. You have to be enthusiastic about process improvements, and not cling to doing things the way you personally feel comfortable with. A whole lot of managers with technical backgrounds have that problem, and it never turns out well.
If you, as a developer, don't really embrace those traits as well, I'd think your best bet is to go back to school. Start a coffee shop. Start your own business. Marry a doctor. One of those things. Don't be a manager, it won't end well for you.
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.
It's actually quite simple, think about the only other major activity in which a total lack of experience is considered a plus...
Virgins.
And for the exact same reason, because they are too inexperienced to know how badly you are fucking them.
That's how it works in our society. There are exploiters and the exploited. If you are doing real work, you're not exploiting people. Therefore you are being exploited. IOW, it's a dead end career. If you want to have a good career, start exploiting people as soon as possible.
The best and the brightest have always been taken advantage of by the ruthless.
Give me Classic Slashdot or give me death!
Nope. Facebook is doing the exact same thing as every other large tech company: Microsoft, Google, Oracle, etc. (Facebook also has a lot of silicon valley vets, Zuckerberg isn't just making this stuff up as he goes.)
The idea is that you hire "raw material" (CS grads) who really don't know any engineering. Then you train them in the Company Way. Because they don't know any better, they're now bound to the company's internal processes and it makes it that much harder for them to jump-ship or work on someone else's ecosystem. They also don't get uppity and say "Let's write this in Java" or "Oracle DB does this, why are we recreating it?"
Facebook uses PHP as their internal language and the majority of CS-wonk new hires have never even used it. This is 100% by-design.
Consulting or professional services. No, really.
As much as product-oriented software houses may prefer to have younger programmers for whatever reason, people who have been in the industry for a while have a lot of breadth and depth in terms of domain expertise and the like.
In terms of actually helping to implement the things in the real world, companies tend to find themselves needing a broader context for these things. With the added benefit you can roll up your sleeves and write code as needed.
Sometimes a developer only sees things from a given perspective, which doesn't always translate into the ability to help businesses actually do things. Not all developers have yet learned how to interact with non-technical people.
Having 'graduated' from a software development company several years ago, there's a market for people with a good general grounding in computers who also have some domain expertise in one or more areas.
The 'grown up' skills like being able to conduct yourself nicely in meetings, work with actual end users and not be a condescending prat, and be able to see the big picture of why someone is doing something are quite marketable.
There is life after code. It can be quite rewarding. That good, solid technical grounding is still a valuable skill as long as you have some of the soft skills to back it up.
Lost at C:>. Found at C.
An old man once told me that age and treachery will always trump youth and skill...
ipv6 is my vpn
This works against older engineers because they are competing against younger engineers who can adapt to new tools faster.
Really? Platforms and tools? Rephrasing without the business speak, you seem to be talking about four things: languages, standard/common libraries, techniques, or actual programming tools, i.e. computerised assistence in the actual effort of programming. Languages only get easier to learn; The more you know, the more wierd something has to be to have not 'seen that syntax before'. Same with libraries. Techniques of getting things done? I'm pretty sure it's harder for a fresh out of school programmer to pick up a book on advanced AI techniques and implement them from scratch, than a programmer with 20 years of experience who has probably used similar techniques at some time, possibly even independently developed (Hey we ALL reinvent the wheel on weekends). And learning a new IDE, or tool like make or ant ... Sure the 20 something might be able to read through the manual slightly faster, because of better eyesight...
Recent graduates might graduate with knowledge of current tools, but that doesn't make them able to learn faster. It's just that they don't have to learn at all.
You can't fire people when you don't have anyone to hire to fill their spot.
I'm pretty sure companies do this anyway... They just expect under-qualified people to pick up the slack.
All the world's a CPU, and all the men and women merely AI agents
Nope. Facebook is doing the exact same thing as every other large tech company: Microsoft, Google, Oracle, etc. (Facebook also has a lot of silicon valley vets, Zuckerberg isn't just making this stuff up as he goes.)
The idea is that you hire "raw material" (CS grads) who really don't know any engineering. Then you train them in the Company Way. Because they don't know any better, they're now bound to the company's internal processes and it makes it that much harder for them to jump-ship or work on someone else's ecosystem. They also don't get uppity and say "Let's write this in Java" or "Oracle DB does this, why are we recreating it?"
Facebook uses PHP as their internal language and the majority of CS-wonk new hires have never even used it. This is 100% by-design.
And Facebook, which is based around a successful idea and very simple code, has been plagued by poor programming since it went live.
"I zero-index my hamsters" - Willtor (147206)
"If you think it's expensive to hire a professional, wait until you hire an amateur."
"Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
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....
I'm a less-than 30 year old developer. I've worked in organizations with 1:10 manager:dev ratio, sometimes higher. These managers did no coding whatsoever (some barely understood what we were doing), and spent their time inventing metrics, discussing/presenting these metrics, and making sure devs did the absolute minimum required to satisfy the customer because all they ever looked at were those metrics. While this may not apply to you, I can see where he's coming from. I now work for a company that has roughly a 1:70 ratio of manager:dev, and it's great. Devs participate in all levels of decision making, including the assignment of features/projects to younger devs, and oversight of their proteges. You could say that the managerial-level decision making is informally shared among the senior engineers. But they code just as much as I do. Coders are given independence and have ownership, and quality is their mandate. I hear Valve operates in a similar manner and their success mirrors our own. Ok maybe they are a bit more successful ;).
Good devs shouldn't stop coding unless they are bored with it. They should continue to work and be compensated according to their skill and experience. I feel a lot of firms have devalued experienced engineers to their peril. They dangle the $$ carrot in front of engineers who are at the top of their game, drawing them into an occupation where they no longer add demonstrable value to the company's products (again, not necessarily you), and then hire a newbie to fill the hole at the bottom rung. Worse, they farm out the work. The end result is invariably a crappier product.