Ask HN: Might non-compete clauses actually help young workers?
From my experience, it seems like there are lots of companies that want to hire software engineers. And there are lots of junior software engineers that want jobs at tech companies but don't have them. The problem is that those companies don't want to train people, just for them to leave once they become productive. So, most companies will just hire people with many years of experience, and put up lots of money to do so. The result is a big mismatch in the job market. This isn't even specific to tech either. My evidence for this is the high level of underemployment in the economy.
I'm sure more companies would be willing to hire younger workers if they could ensure that they would stick around for a few years and they could get their money's worth out of training them.