Agile software development and cloud-based sourcing are aspects of Nearshore Americas’ Four Major Trends to Anticipate in 2011 list. But how do they relate to an offshore strategy?
We asked Vadim Parizher, Director of Information Systems at a large bio-tech company on the West Coast, to deliver some of his own interpretations on these trends. In the interview that follows, Parizher talks about the strengths and limitations of both agile and cloud, and how they can be leveraged into a more streamlined IT offshore operation.
Offshore partners in software development
Parizher manages an offshore team of around 300 employees in Bangalore, India. He’s been using offshore capabilities for central application development for three years, and as a software testing organization for two years.
“There are three parameters that sourcing operations go for: speed, quality and cost. You can’t optimize on all three”, he says. “An offshore team helps optimize on cost, and sometimes on quality, but is not as good for speed. So what we’ve tried to do is not leave the offshore part hanging by itself, but have it coupled with an onsite presence as much as possible”. And he’s not alone. Many companies have told Nearshore Americas that they also adopt this diversified approach to IT outsourcing. The number crunching or ‘heavy lifting’ is done in India or China, more value added app development or testing is done closer in the Nearshore, and finally the firm’s core competencies and R&D are performed onshore. That’s one approach, but we’ve heard good things about it.
Agile, and the importance of physical proximity
Since the agile methodology is based on iterative and incremental progress through collaboration and process adaptability, it’s critical that teams throughout the software development lifecycle are able to stay in close contact with each other. But how do we reconcile that with an offshore strategy?
According to Parizher, “Offshore works well in a staff augmentation mode, but it must be closely coupled with an on-site team. That’s necessary from a project communications standpoint, because we found that not having an onsite team leaves the offshore team constantly craving more information”. In other words, if you expect your offshore operation to magically make things happen, it won’t work. Even if they’re running a large chunk of the project, they still require direction and need to report back to the company. And if that offshore team is not in the same time zone, then effective communication is going to be one of your challenges.
One of the core tenets of Agile development is that your teams have to be co-located, and ignoring that leads to big costs. Time zone is an issue, and one team sleeping while the other is working is not good for efficiency. “You want to be physically working closely together. You don’t need the whole team to be close, but at least key team members”, says Parizher. “For a long time we balanced it by keeping our team leads geographically together, but later we expanded to make sure the product development teams were close as well.”
“To take advantage of cloud, you need to hone in on that continuous deployment, otherwise it’s just another option, and will not be very useful”.
The Nearshore advantage
This need for proximity is really where South America and Central America become attractive. However when it comes to Agile and other new methodologies, the knowledge gap in these locations is still very apparent. Parizher sends all his development and testing to more experienced India, but before making that call he did some legwork in a few LatAm markets to see what the offering was like. “We found that the workforce is just not there in terms of technical training and numbers. The newer technologies don’t make their way to places like Argentina as they do to India.”
There are locations aggressively working to fix that however, such as Argentina’s neighbor to the west, Chile, which recently implemented IT quality standards certifications and Costa Rica which has invested substantially in technical training for it workforce.
Using cloud sourcing
Firms are starting to use cloud sourcing more because they can set up a new environment quicker through the continuous integration and continuous testing that the cloud offers. They can run software testing for several months, and then shut it down and restart it according to fluctuations in demand or pricing. Also, many of the scalability issues in an outsourcing operation are not concerns anymore.
However Parizher is much less enthusiastic. “The only thing that cloud brings is ease of technology deployment, and allowing that deployment to be continuous”, he says. “To take advantage of cloud, you need to hone in on that continuous deployment, otherwise it’s just another option, and will not be very useful.”
According to him, both agile and cloud have their limitations. “Agile is definitely the way to go for custom applications and web based development. But when you get to integrated systems, you have to be more careful. For cloud, the basic technology is there. But we need to see more development for it to really be useful to companies.”