For the last decade U.S. Corporations have rushed to move Information Technology. and Software Development operations offshore in an effort to presumably "shore up" their organization's bottom line and save dollars through cheaper costs via overseas development centers in India, China, Vietnam and the Philippines.
These Corporations placed their bets that the savings gained via the off-shoring model would outweigh the inherent challenges faced by managing enterprise level development half a world away. And the challenges were many as was soon realized.
Aside from the obvious language barriers and time zone differences, there were also geopolitical risks, business process knowledge deficiencies, security risks, productivity factors, inflation risks via a declining global dollar, not to mention travel and expense costs.
Project Managers and PMO's faced these challenges and more on a daily basis. What they learned quickly was that sending work offshore doesn't work for all classes of development. Not only is offshore getting more expensive, but industry analysts understand that one developer in the United States is generally more productive than three developers in India when you take into account 'the context' of what they know about American business and business processes. Overseas developers understand JAVA, HTML, and PHP but they don't understand how American banks or health care systems work and that lack of understanding oftentimes requires more development for the off shore team to get right.
How many of these companies are employing agile development practices across these far flung development centers? How are sprint cycles handled by U.S. Project Managers and development leaders while their teams of programmers are 8 time zones away? It clearly goes against the iterative process that is agile. It doesn't make sense.
In 2014 corporations started to take a hard look at the benefits of bringing development back to United States and outsourcing to on-shore software development centers. Rural sourcing has gained traction again as the rates are typically lower than on either coast and the development is as good or better.
Corporations are beginning to understand that in today's evaluation of sourcing options. It is imperative to evaluate the full picture and total costs of software development and software maintenance projects, not just the hourly rate. Mature organizations must take all factors into account and assign a value to get a crystal clear picture of the cost savings that can be achieved. After all, if you're saving 50% in hourly rate overseas but the project takes 3 times as long to complete, what are you really saving?