The traditional approach to outsourcing agile software development was to go with an offshore provider on the opposite side of the world so work never stopped. When the local team wrapped for the day, they could hand over to the team offshore, who would pick up the project and keep the ball rolling 24/7 – theoretically shortening the development schedule.
While there may be a speed benefit to this approach, the gains can easily be squandered by wasted time when your teams take more than one iteration to answer a question blocking progress. I’ve seen too many projects derailed due to this.
Using a Nearshore Strategy
The agile software development approach turns that old way of thinking on its head. By outsourcing to a nearshore partner, you still get the benefit of lower-cost developers with the needed expertise, but both teams are on the same schedule. Daily scrum and team meetings can be scheduled during normal work hours.
You get all the benefits of the agile development approach, without the hassles of dealing with a dispersed development team spread across multiple time zones. The key advantage over offshoring is rapid response to change. Requirements and strategies can evolve with each iteration, instead of having to wait for a big release at the very end and discovering an assumption made early on was totally wrong.
Wherever in the world your company is based, there’s a lower-cost alternative to onshore software development by partnering with a nearshore development team in a compatible time zone.
For North American companies committed to agile software development, the best outsourcing options are in Latin America. Businesses in Western European can draw on deep talent pools in Eastern Europe, while Australian companies look to South and Southeast Asia.
At Accelerance, we publish a comprehensive Guide to Global Outsourcing Rates and three specialist regional guides on software outsourcing in Latin America, Eastern Europe and South/Southeast Asia, featuring detailed country profiles with information on the economy, business conditions and depth of the local talent pool.
The Importance of Good Communication
When using agile software development methodology, it is imperative to keep the lines of communications open. The local development team and project management need to be able to connect with the remote team frequently during the day.
Remember, agile development is not a “pass off and do” approach but one that works iteratively. Both the local and remote teams must be able to present completed iterations frequently to project managers to ensure progress is being made in the right direction towards the end goal: the successful delivery of a finished product.
If you’re ready to outsource agile software development to more effectively run your business, contact us here at Accelerance. We’ll put you in touch with nearshore firms we think would be a good fit for your project.