I can't stress how important this is. Folks going to things like boot camps or other educational outlets that focus on one language will utterly kill their career if they aren't aware of how fast things move. If you don't learn the underlying abstractions and paradigms that take various forms in different languages, you will get left in the dust in a matter of a few years.
The best programmers I've ever worked with got excited about programming patterns and paradigms, not frameworks and syntactic sugar. Those are also the ones I paid the most attention to.
Bottom line for both software and IT engineers: you learn to learn, not just to do.
I think this is (at least partially) a side effect of the pedagogy of computer science in schools changing throughout the decades. When I was in school, just about the entire program stressed OOP, with very little focus on imperative/procedural programming. Newly minted programmers fresh out of school don't have the exposure/mindset to jump straight into one of these (C maybe being an exception). The old guard that called these languages home are a dying breed, and the salaries paid to program in them these days bears that out the scarcity that results.
The Cloud greatly diminishes and in some cases completely eliminates that work. The only thing left is actual software development.
The problem is that junior sys admins aren't as useful as before to most startups. I still think they'll figure it out, but the industry is changing.
This trend results in less competent people flooding the job market.
Today ? Not happening.
SRE or "DevOps" roles new roles that are similar to system administration but the biggest difference is the use of cloud technologies, automation and most importantly those in need to be or at least understand software develop and code.
It takes a hell of a lot of work to take a company's entire infrastructure and migrate it to Kubernetes and the Cloud, and then monitor and manage it. It's not trivial.
So the key is seeing your job as solving a business problem with computers, not "I administer Oracle version X.y.z running on Redhat Linux".
The mid-range jobs have always been vanishing. Many times, I'm the guy automating them out of existence. It's always replaced by something else.
It depends on the circumstances, of course, but there is often more work after the automation than before. It's just different work. It requires reskilling.
The article mentions some new product AWS is coming out with. No matter how "simple" it makes things, someone is going to end up being an expert at using it, and will probably be paid well to do so.
Really, the toughest and most crucial part of this career has been keeping up. The work stays steady, though.
The trick is to write your resume so it gets past HR's filter, but without putting bullshit on it. It's unfortunate but I consider this kind of thing a critical skill for anyone applying to technical jobs.
I'd argue that skill applies even after you get hired. Fudging details to get around wasteful trivialities without outright bullshitting the person asking for the requirement is truly an art, and it's very hard to navigate this field without that skill.
Any tips on how to do that?
The hiring manager will then make sure that your skill set is a good addition to the team.
Keep in mind that the hiring manager may have asked for someone "with some JavaScript experience" and HR might have translated that into "3+ years". In some cases, when the hiring manager sees the job posting, they're surprised by the requirements and say, "So, this is why we haven't been getting any applicants!" This is, yes, somewhat dysfunctional but it is a common dysfunction. Yes, you are essentially second-guessing the job listing and this is not the way the world should work.
As a rule of thumb, if you are applying to a job and you meet all of the listed requirements as written, you are overqualified and should apply to a higher level position.
Definitely brush up on the things listed, though. Walking into an interview without at least a cursory recognition of what a listed language/framework does sucks, as it wastes your time and the interviewers'.
Also, be wary of bad recruiters. If they drink their own kool-aid and actually enforce the arbitrary x # of years in foo language blurb, you might be screwed (as well as the manager that put out the request for a hire in the first place).
The theory here is that programs that automatically scan resumes for keywords will always find the ones they are looking for.
I can’t say I have tried this or know how well it would work in practise.
Last year I witnessed the sad story of a general manager, that promised to migrate away from an as400 in six months.
This guy (and several others) doesnt fully understand that a system, that is software and hardware and infrastucture, has its life determined by the returns it gives to its mother organization. If the system works, the organization wont pay or dare to replace it. Core systems are the hardest, and thats where all those mainframes and c and fortram and nowadays java legacy sys are still alive and kicking.
Pd: I love those systems btw, if you have one that needs love and care, I'd like to hear about it :D.
"I’ve spent my career in tech, almost a decade at this point, running about a step-and-a-half ahead of the automation reaper."
I mean, yes, that is the entire job description. If you are in IT, your responsibility is to learn the best technologies, and be continually re-evaluating what to keep of your organization's current and what to improve or replace.
That is why I wouldn't want to do anything else. I love learning new things and no profession offers more opportunities to learn new things than computer technology.
But this isn’t true, outside of webdev.
If your skill was “DB2” or “Oracle” or “Cisco” or “C++” you could have had a 30-40 year career in that, easily. There are plenty of others. Java has been around commercially since about 1995, there will definitely be plenty of Java jobs in 2025.
Whereas in webdev you’re basically starting from scratch every 2 years and competing with new entrants to the market because they literally have as much experience of the hot new framework as you do.
Sure we'll see slowdowns and some dramatic shifts in skill sets. We just need to stay ahead of the curve.
I don't think so. Mobile phones were already a significant thing before 2008 and the morph to smartphones was already in train (first iPhone was 2007).
VR still has to emerge from a relatively small set of niche use cases. Augmented / Mixed reality is more likely, given the ubiquity of good cameras on smartphones. Arguably AR/MR will let the phone manufacturers keep pushing device upgrades for longer, as the smartphone market saturates.
The same thing happens to programming positions.
But I think the good news is missing from this article—IT jobs are, overall, sticking around or increasing in number. (According to the Bureau of Labor Statistics, the jobs are growing “faster than average for all occupations”). You do have to keep updating your skill set, but it’s not like manufacturing, where efficiencies eliminate jobs altogether or move them to completely different sectors. And there is that ageism to worry about, and uncertainty.
I’m personally more worried about some of the other remaining white-collar office jobs, like the accountants, paralegals, HR, various banking positions, etc.