I manage an outsourced team having worked in Latin America. I agree with the other commenters here. It will fail if there's no quality control and no filtering. Just like in the US, there are good devs and bad devs. It's up to the agency to actually manage and help them grow.