The employers don't consider someone who can't pass an AmaGoogTwitBook interview (with some practice, of course) to be a 'qualified engineer', and there is indeed a shortage of such people.
Let's say I run a cleaning business, and I decide that I only want to hire janitors who can run a 4 minute mile. I think that they are the best people for the job, and no-one else will do.
Let's also say that I only want to pay them $50k a year. Some time goes buy and I'm having a really hard time finding people. Now I could raise what I'm offering to $100k a year, and find plenty of candidates who would move here from other states, change careers, move from management back to working as a janitor, come out of early retirement etc...
Or I could relax my requirements--take people who show the potential to run a 4 minute mile and train them.
Or I could lobby the government to increase the visa cap so I can import qualified people who are willing to work for $50k.
This doesn't sound so bad when you think about it. I wasn't willing to offer more than $50k a year, so wages weren't increasing anyway.
However, if I didn't have the option of raising the visa cap, and I really believed that only janitors who meet my qualifications would work, I would have no choice but to offer a higher salary.
Therefore, importing more workings depresses wages for qualified janitors.
Now you might be thinking $50k is plenty for qualified janitors. They can live with less. But here's the important part. You didn't increase the visa cap for only qualified janitors.
You increased the visa cap for all janitors, who are making at least the prevailing wage. And it's based on a lottery. The number of extra visa spots aren't proportional to how much a company is paying. Every company who is willing to pay the candidate at least the prevailing wage gets the same shot at these visa slots. Since, most companies don't have sub 4 minute mile requirements for janitors, the prevailing wage is much lower than $50k a year.
Now the market is flooded with janitors willing to work at average companies for $20k a year, and you've driven down wages for all janitors not just the top 1% of qualified janitors. Even though the shortage is only for the top 1%.
Average software developers aren't making $150k a year and buying Teslas, and they are the ones you're going to hurt with visa cap increases.
I'll agree that there is a shortage of top 1% programmers. There is a shortage of the top 1% in nearly every industry almost by definition. However, until you develop a system for only importing enough top 1% programmers to meet demand, you're going to hurt everyone who's not in the top 1%.
There are several systems for doing this. The easiest to implement probably to use an auction instead of a lottery (this comes with a set of its own problems though).