It is a good time to be in tech right now: soaring salaries, daily LinkedIn recruiter spam, people bootcamping their way into career switches to tech, remote work allowing you to work for a major tech company making triple digit salaries from the beach. It really feels like every single company is trying to recruit programmers nowadays, and doing whatever they can to get them.
I’m certainly happy with the current state of affairs, but I can’t help but wonder: How does it end? Things are obviously good for us programmers and we would certainly like for them to stay this way.
Business owners, on the other hand, are not quite happy. You see, no sane CEO is going to issue a press release saying “yeah, business is booming, record profits something something, great opportunities for double digit growth in something something Asia, by the way I’d be really happy if I could pay less money to my employees”. That’s just not the kind of thing you say, but everyone kinda knows it is true. The CEO’s job is to make as much profit as possible. Higher salaries mean less profit. It’s just how the game works.
Salaries are a matter of supply and demand. Lots of companies trying to hire not-that-many programmers means salaries go up, if it was the other way around, they would go down. So how do the good times end? Either demand for tech workers goes down or supply goes up.
Supply goes up
The markets are doing their thing. Everyone sees tech workers making money and just generally having a good time and they think: “Hey that sounds like a good career choice”. Every year we get more Computer science graduates. Code bootcamps are also booming.
But these are long term changes that are barely making up for the also increasing demand, so I don’t see any meaningful change coming from this front at last in the short to medium term.
Demand goes down
This is where I think the most interesting (and faster) changes could happen. Jeff Besos famously said “Your margin is my opportunity”. Tech worker wages are certainly a massive opportunity right now! There is a lot of money to be made by making products that allow businesses to get things done with less programmers, maybe no programmers at all.
I know it sounds kind of evil putting it like that, but bear with me.
Developer tooling improvements
Developers are expensive. If a new IDE shows up and they can deliver stuff 5% faster, that means you can have 5% less programmers! Of course the IDE has a price, but it is almost certainly cheaper than 5% of a developer.
I haven’t seen that much improvement in developer tooling over the last couple of years, but AI is making some really meaningful progress in this field with things like github copilot. For now it only delivers some smarter auto complete suggestions, not that far in the future we could see AIs finding bugs in our code, or even generating tests.
No code / Low code
People have been trying this for decades and it never really worked out. I can’t think of a single product that was able to get to any meaningful degree of success running on top of some low code platform.
But hey, deep learning was in a similar spot in the 90s and now we have real products that use it and it mostly works. The incentive has never been greater. The more expensive developers get, the more money there is to be made by making them less necessary.
Decreased investment
I think this is the most likely scenario. Much of the demand for programmers right now stems more from expectations of future profits than from profits being currently made.
Many companies hiring now are unprofitable companies surviving on investor money with the expectation of future profit. If the economic conditions change and investors decide they don’t like tech companies anymore, many of them will inevitably close. Less companies hiring also means less demand.
Conclusion
This post might have sounded gloomish, at least for programmers, but honestly I don’t think there’s that much to worry about. Even if we enter some new dotcom bubble and a good chunk of our startup ecosystem dies off, demand for tech is spreading across all industries, businesses everywhere are digitizing their operations and these systems will need to be maintained somehow.
Also, salaries are notoriously sticky, so instead of a salary reduction we could see a workforce reduction instead. Maybe it is better to start replying to the linkedin recruiter spam just in case?