Much of the foreign work is pretty crappy (their schools are *way* behind ours and less folks can afford to buy their own tools to become self taught). Many businesses are finding this out the hard way and hiring locally again. The timezone/language issues are also a pain.
And of course, ultimately, the more work that gets outsourced, the higher demand for foreign engineers and the less cheap they become.
There will always be a demand, domestically, for good local talent.