Out sourcing will come, but it will not be as simple as companies hope.
I have been writing code for over 40 years and in my earlier days I always thought, sooner or later I would see my profession outsourced to countries with lower wages and tax burdens, but here I am still hacking away. I am not saying it will not happen eventually, but over the years a common theme to out sourcing has not been with lack of cheaper talent abroad but the lack of mentors. Over and over again I have seen projects where the work out sourced has failed because the younge talented engineers may understand the syntax of coding, but fail to understand the complexities of the projects environment, the hardware, and their customers market and needs. Managers who have no appreciation of the technology, tend to think development is like it is in hollywood, sit someone in front of a screen and 24 hours later they will have solution in their hands. In reality I have met 2 engineers I would describe as having exceptional talents, with the rest of us at best may having some idea of what we are trying to achieve. In the end a typical coder spends 10 percent of their time producing code and the rest of the time googling solutions to the problems which arise as the work proceeds. Which is where the mentors come in, they can provide direction and ease the search for enlightenment.