"..the company can’t prevent the departure of Americans.." this is part of the problem. I have seen people (especially young ones) jumping ships in less than six months from startup to startup in SV because of the competitive market salary. Even though larger companies can take this hit but for a startup of <10 employees this can prove to be very detrimental. I agree that Indian consultancies have been abusing the H1B program for a while now, and even though American companies pay them same or actually more (consultant hourly rates are always on the higher end), these consultancies keep the lion share to themselves and pay minimum to the consultant. The problem is not just with immigrants (both educated from US colleges and brought in by the Indian consultancies) but also nomadic nature of young American tech labor. Should there be some sort of collateral such as one year contract? Probably not a welcoming idea in a free market of USA.