That was a great outsourcing article, except showing one picture of Manila slums and calling the country poor.
Here is my suggestion -- don't use outsourcing agencies (acknowledging, easier said than done.) With an agency you end up with invisible HR problems. When something weird is going on at the office, you won't know about it. If senior developers are slacking off and giving junior devs all the work, you will not know. Hire the developers directly, give them the full salary, listen when they ask for something, give them flexible time off.
If what they are working on is really important, take the time to fly and go meet them in person, or if you have a team fly everyone to the same spot.
Here is my suggestion -- don't use outsourcing agencies (acknowledging, easier said than done.) With an agency you end up with invisible HR problems. When something weird is going on at the office, you won't know about it. If senior developers are slacking off and giving junior devs all the work, you will not know. Hire the developers directly, give them the full salary, listen when they ask for something, give them flexible time off.
If what they are working on is really important, take the time to fly and go meet them in person, or if you have a team fly everyone to the same spot.