If I were tasked with solving this, I'd advocate for more frank discussion and use of various pseudo tests, e.g. SAT or GRE scores. This strikes a lot of people as unfair and non-inclusive.
Leetcode fits this too
I do not advocate for leetcode tests, but I think they have a bit unfair reputation. There are many worse interview questions.
They filter for a few super important qualities - can you solve a simple problem, follow some basic instructions, write somewhat comprehensible code. But most importantly, if you get stuck, how do you react. If your response is to lash out and blame the questions or the interview, that's a huge red flag that you're going to react like that when challenged in the work place. I wish I wasn't speaking from experience.
Companies don’t feel that way. They feel they can just ramp up the workload on existing employees “until we can hire more.” What are they going to do, leave? Where do they think they’re going to go? They’ll be met with the same situation at another company, except they’ll be on the other side of the table this time.
If there are companies with money, no employees, and the urgent desire to hire them, that breaks this equilibrium. The overworked employees jump ship to the startup, the incumbents become more desperate and finally relent.
If the answer to "What are they going to do?" is "strike", or "leave and take a massive severance payout because that's what their union negotiated in the contract that specifies you can't overwork them by more than X amount", then the company no longer has that abusive option on the table. They have to hire someone to fill that role.