Skilled labor (such as mechanics) require training and apprenticeship pipelines. If those pipelines don’t exist or are starved of people it doesn’t matter how much you’re willing to pay right now. Long term sure you can make that career path more appealing but it can and often is absolutely the case that companies would pay out the nose for employees with particular skills and are unable to find anyone. But sure let’s go with the standard Reddit pablum, why give it more thought than that?
That's what a shortage is, a short-term undersupply. Market forces will eventually correct the problem if allowed to operate normally (e.g. prices spike, incentivizing more supply), but like you said that takes time. If it's a shortage of goods it can take a while to ramp up production. If it's a shortage of skilled labor it can take a while for people to learn those skills. Either way it's fundamentally the same type of problem.
The market alone doesn’t work well with things like training that had feedback loops of several years. In German there is the term “Schweinezyklus”. It goes like this:
* companies complain about lack of trained workers
* more people start training
* after a few years companies complain about too many workers and don’t hire them
* people stop training
* companies complain about lack of trained workers
I was part of this in the 90s in mechanical engineering. When I started studying the job market was great. When I finished there were no jobs. Luckily I could jump to programming.
I think we are seeing the same with CS now. Too many people jumped into it.
Predicting the future is indeed famously difficult, which is why even markets have a hard time with forecasting and responding to demand years into the future. I don't think such over corrections are a market failure, just a lack of omniscience.
The reason those pipelines dry up is because pay is too low.
Or we outsourced the juniors to India or replaced them with AI
Trying to move everyone up the value chain leaves a vacuum in the pipeline