> I think the situation is quite simple. Companies want the best candidates they can get, and the larger the recruitment pool, the better.

Respectfully, this sounds terribly naive.

Why? All big and even medium tech companies have dev offices in EU and India. As example since it's much easier to deal with visas say in Ireland a lot of hiring was shifted to Irish offices.

Having worked at a few large companies, this was the case at all of them. I do think there is a messy middle of companies built on vibes.

There are 2 issues:

1/ Employment provides training and experience. If the h1bs are given access to the jobs (training and experience), then is it the American's fault that they are no longer considered "best"?

2/ h1b increases labor supply, not the demand. More supply, means lower wages for everyone.

1/ Training is only effective if you can fill the function of the job and learn from it. Many software engineering jobs people claim are stolen by H1B hires are filled by human beings more likely to meet the bar. Many American candidates just don’t. Filling a software role is hard.

2/ Demand for software is not static. Good software drives demand for more engineers in many cases, intra or extra-company. There is probably a non zero rate of wage suppression per marginal h1b currently. But an American economy with no h1b employees could feasibly have a much lower average sde salary. It is not an Econ 101 problem.

1/ Training goes all the way down the pipeline to colleges. If x% of students are foreign, then Americans didn't have the opportunity to get the education.

Again... the skill issue falls apart when you consider teams at tech companies having 1 non-American national origin or caste. I'm very skeptical that, between two foreign candidates with the same U.S. education and experience but different national origins, the fact that the candidate whose nationality matches the current team composition is selected can be explained purely as a matter of skill.

2/ Great, lets train up more American engineers to push the demand higher.

People are not as capable as you think they are and software engineering (well) is actually difficult. You cannot just push more people in. People are not fungible.

There is truth to your statement, but high salaries and demand encourage locally capable people to enter the industry.

Consider growth of CS graduates in the past 5 years or the number of people that transitioned into tech (like myself).

In 2026, this signal is not as clear: with the uncertainty of tech, increased output with less labor due to AI, and growing competition amongst workers (citizen or otherwise). We may see a shift in studies to other fields.