The best approach, technically, is to have all developers co-located. If it makes sense to outsource, depending on the situation, doing it with a US-based team might be a good choice. In Life 2.0, author Rich Karlgaard describes 150 “reasonably priced US cities and towns you might consider.”
Even then, keep it within two time zones. Going beyond it makes it extremely more difficult to keep everybody in sync and working as one team.