Agile software development is a highly efficient way to create great software. And companies are also turning to global outsourcing to cut cost and get software development expertise. Is there a way to combine the two? Yes. Highly qualfied offshore and nearshore software development companies are now specializing in outsourced Agile development.
Here are 5 important criteria to consider when you're looking for an outsourcing company with Agile experience.
Language is important for your Sprint deadlines
For better or worse, English has become the “Lingua Americana” of international business. Choosing a software outsourcing company proficient in English is a given. But, you also need to be aware of serious cultural issues that become a communication barrier even if English is understood. Here’s an example:
Software Client Asks: "Do you understand this deadline is critical?”
Outsourcing Provider Answers: “Yes.”
To an American, the answer of “Yes” means not only is the importance of the deadline understood, but ALSO that the respondent is making a commitment to meet the deadline. But in many Asian cultures, “Yes” in this context means, “Yes, that is a critical deadline” without a commitment to meet it.
Workday overlap for your daily collaboration
Many companies find it difficult to deal with a large time zone difference. It can be an advantage if your programming team works while you sleep, but only if they know what to do. With so much of Agile software development being collaborative it means people have to be available to ask and answer questions. And that often means someone will be staying up late or getting up early (or both!) to make collaboration happen.
Is often overlooked as a catalyst for efficient software development. I have personally spent time explaining the difference between a purchase order and a back order to Russian programmers (who were otherwise super smart!). The lack of credit cards in many third world cultures is a similar barrier to writing software to be used by banks. And developing your dating website in India where marriages are arranged is probably not a good idea.
Being Awkward instead of Agile
It is very rare to have complete knowledge of what a new software application should do. Agile methods help by enabling the programmers to get started quickly on smaller chunks of functionality that can be developed in a few weeks. OK, fine. But are you ready for daily collaboration with the programmers to make an Agile process work? Is your outsourcing vendor trained on these methods and using good tools? Finding highly qualified software companies who are truly Agile is key.
Cheap programmers don’t help
Looking for cheap programmers and cost savings only just magnifies the impact of the other four criteria. Cheap programmers are juniors without training in Agile methods. You need maturity and experience to be another important criteria when selecting an outsourcing partner.
Here are two examples:
A recent client wanted to replace a process of emailing spreadsheets and Word documents around their company with a centralized web application so everyone could share a single copy of the information. They did little software development within their small IT group, and they had never outsourced before. They had a pretty good idea of what they wanted but did not have complete specifications. Collaborating with a Microsoft-certified partner, expert at Agile methods in Argentina was the best recommendation.
A large Silicon Valley company with their own programming operation in Asia decided to set up a different Agile programming team with an Accelerance partner in Costa Rica to get the benefit of real-time collaboration and closeness to the US.
If you're considering outsourcing and Agile is important, talk to an Accelerance Advisor. We'll connect you with highly qualified outsourcing companies that meet your needs.