Those guys replace every white American-born software engineer who is 40 years old, and, just as important, they have kept the pay scale for software engineers unchanged for the last 15 years.
You are correct on that point. Many tech companies outsource rather than bring in new local talent.
Even if the communication issues are debilitating, you can hire 4 of them to every American worker. Many execs see it as the ability to throw more bodies at a task. Any issues become the PM's problem once they have the available resources in manpower on a project.
"We gave you the people you asked for..."
*sigh*