Believe it or not, thankfully, many corporations are bringing much of their software work back to the US after getting burned overseas. Cross-language management, co-location, and lower quality of work are amongst many of the reasons "cheap" overseas labor can actually cost more.
Unfortunately, though, there are still plenty of companies who are still too greedy to face the facts.
There's work for software engineers, but you really have to be above and beyond. There are tons of programmers out there who claim an entirely different level of skill and experience than they possess. Far too many...