Thing is, I've never worked for FAANG, I was always content working for random non-tech companies that were definitely not a target of the so-called "rock star engineers". The world runs on software and most of that software isn't FAANG. I've been in the trenches for a long time, and most of it is endless vastness of legacy code. Java is the new Cobol times 1000, there should be a demand for countless number of devs to maintain and rewrite this legacy code. How did the market go from developer shortage to developer surplus overnight? Is there an end to that?
And therein lies the problem. One tech stack won't last your entire career, no matter what it is. You don't need to know everything, but you do need to modernize your skills once a decade or so. Sounds like you are at that point. If you aren't finding Java jobs... pick up a new stack. And 10 years from now, you'll need to do it again.
Staying in this industry for 30/40/50 years is not the same as staying in it for 12. You'll not only have different chapters, you'll have entirely different books. Go start your next one.
*For you. I think it's a obvious and great advice, software engineers shouldn't define themselves by their stack (Java programmer?).
> They'll have an even more difficult time finding a job if they decide to switch stacks now.
That's why planning your career on changing stacks is such a good advice: you do it before you really need. I have kept a main stack and a "side project" stack for my whole career, going from PHP, ASP, .NET, RoR, clojure, Python then JavaScript for the longest with Rust currently as the side stack I'm learning. Had I got stuck on PHP I would regret it badly.
The language, the stack, etc.. are just details. Given a problem - they can tackle it.
Is it sufficient to be skilled in one programming language, such as Python, and implementing a software renderer or ray tracer, your own neural network, your own HTTPS server, your own OS, your own memory allocator, your own interpreter, your own virtual machine...?
> The language, the stack, etc.. are just details. Given a problem - they can tackle it.
I agree, but are HR people agreeing on this?
I got into computer stuff back when mainframes were "obviously, forever". And minicomputers ( https://en.wikipedia.org/wiki/Minicomputer ) were for companies too small or weak to get a real computer (mainframe). Then OOPS! - some of our nice little terminals ( https://en.wikipedia.org/wiki/Computer_terminal ) mutated, and evolved into those stupid little "PC's", and Things Changed.
Cycles of change within the computer field didn't stop there. Nor did ups and downs "imported" from the rest of the economy. At least from the inside, the dot-com stock market bubble ( https://en.wikipedia.org/wiki/Dot-com_bubble ) of ~1995 - Mar'2020 seemed ( in hindsight ) like a remake of the South Seas Bubble ( https://en.wikipedia.org/wiki/South_seas_bubble ). Then there was 9/11, and ...
So - yes, there's an end to the current job market crash. Just like every prior crash. But being old only gives me a broader perspective - I don't know when or how the crash will end. (Though "end" is probably a poor word - "slowly start to recover" how things actually go.) Nor do I know how well Java/Scala will do, longer-term.
> Had to take 2 years off for health issues
Either of these by themselves could explain your issues. Most employers don't hire people "under level" because that leads to the person being unhappy and quitting. Sometimes they also need a higher salary than the position offers.
Having a 2-year gap is a very big issue though. It's not fair, but it's a strong bias people have when hiring.
I cannot understand someone who’s only focused on a couple of programming languages. Like, you could take a few working hours per week to learn a new language and over the years you wouldn’t have to worry about putting all your eggs in one basket.
The market is healthier than ever, at least in continental europe.
I'm a contractor here and I consider myself fairly lucky to still be in work right now. A lot of my contractor friends have been really struggling to find work recently and none are inexperienced. It doesn't surprise me that OP hasn't found work.
Another thing I'll note is that Java is still a fairly popular and respected language here. My previous three clients used Java on the backend and my current client uses Kotlin (so still very much in the Java/Spring ecosystem). I don't really know why so many people here are saying Java is the issue because in my experience it's one of the best languages to know when looking for work as a software engineer here.
OP, I don't want to be too pessimistic, but I don't think the market for tech jobs will return to the 2010-2020 days. There are three large shifts happening right now:
- A general move away from bespoke in-house software development to cloud based solutions. Shopify is an obvious example of this and I've seen entire departments made redundant over night after making the switch from an in-house development team to Shopify. But also I think just the general API ecosystem is hurting the demand for developers today. Why pay a team of developers $100,000 a year to build something when you could just integrate with a 3rd party API quicker and cheaper? Quite often these days I find most of the heavy lifting has already been done and I'm just plumbing in software that's already been developed.
- Ever increasing numbers of new tech talent. When I started my career aside from a few weirdo college friends I didn't really know anyone who wanted to write software for a living. But plenty of teenagers today want to be software engineers and almost all of them have some basic experience doing it from school. There's no real shortage of people entering the market today and even if you look at people with 10+ years experience it's just not as hard to find those people when compared to say 2015.
- AI is going to slowly eat into demand for programmers. Even if we assume AI won't fully replace us and there will always be some demand for software engineers, the need to hire large teams of developers to build simple CRUD applications will likely soon be behind us. Software engineers in the future will probably need to oversee automated tools and communicate decisions to stakeholders. They might need to write some niche pieces of code here and there, but I very much doubt they will be spending 20+ hours a week writing test cases for a company's CRUD application.
I think we all need to be assuming that the job we're in now could be our last good gig in this industry. I'm sure there will be work out there for us for a while yet, but wages are going to continue to come under pressure and working conditions for software engineers won't ever be what they once were.
Something we don't like to admit to ourselves is that our financial success as software engineers isn't because of our smarts, we just got lucky. We were in the right place at the right time. We rode the waves of the adoption of the internet and the rise of big tech.
Things might improve a bit next year (or they might not) but long-term I feel confident in saying that 2021 was the peak for our trade. Software engineers are not going to be that special going forward.
In my opinion the smart move right now isn't upskilling, it's pivoting. I think if you can transition into something with people skills you'll probably be fine for a while yet.
Even learning how to use say PyTorch seems like a short-sighted move at this point. Do we believe the only code AI won't be able to write is AI code or something?
The problem for me is that coding is something I genuinely love, and I'm autistic as hell so there's not much I can actually do with competency. I can't do anything that requires people skills, I'm too soft for hard manual labour, and honestly I'd be fine with a crappy salary if I just got to continue writing code for a living... I know I should be jumping ship right now, but I just can't bring myself to do it. There's really no where else for me to go. And that's a worrying thought when people depend on you...
Best of luck with the job search anyway. Ir really feel for those looking for work out there right now.
Maybe the last period has gone too high, with ridiculous number of recruitment and oversize salaries, and the correction will be harder. But it will end.
Next year will be worst. 2025 will be fun.
Start saving. Time of the meek.
Companies are guiding down. Rates are higher for longer.
It's a bad economy.