While a steadily growing number of organizations have been moving their resources offshore, it still remains an involved, high-risk decision.
Most companies consider moving at least some of their workload offshore for cost reduction and “follow the sun” coverage for support staff. I’ve worked with companies of all sizes to integrate offshore teams, and what I’ve found interesting is the common challenges they have. Most notably, they cite while labor costs are lower, product quality decreases, and projects take longer to complete. As a consequence, onshore rework to correct offshore defects erodes the cost savings offered by offshoring. Projects take longer to complete, deadlines are missed, and team morale suffers.
Pride and Prejudice
One client of mine, a publicly traded e-commerce company, engaged a team in India to handle bug fixes and some new development work. The team here in the US thumbed their noses at the idea, steadfast in their prejudice that “those people in India” lacked the skill to do the work. The onshore team viewed the offshore team as a threat to their jobs, and the onshore didn’t participate enthusiastically in the relationship.
I insisted that the offshore team was not there to steal their jobs, but rather to free them from less interesting work. The onshore team could then focus on higher value projects, where their expensive skills and institutional knowledge of the company could best be capitalized upon. In addition, core development was kept onshore, where at least one leader/senior developer was responsible. Without a control like this, it’s impossible to know if the product you’re receiving from offshore is of any quality.
This is the number one reason why offshoring will fail. With a team half a world and half a day away, there is little overlap in the teams’ work days in which to share information. Here is where a solid process, and the collaboration tools to enable it are most valuable.
Here are some tools and techniques that work for my clients:
Choose the right offshore partner
When selecting an offshore vendor, seek a partner that understands and adheres to agile practices such as test-driven development and continuous integration testing. The remote team also needs to be managed locally. That is, they need they need a local leader that they report to. This further minimizes communication complexity.
Get the right people on the bus
Product Managers at home must understand iterative and progressive development, minimal viable product, and how to prioritize a product backlogs. You want very short sprints (1-2 weeks long) and tight feedback loops. It’s not about having someone offshore that never makes a single mistake, it’s that the mistakes must be easily found and quickly fixed. And for that, you need practical use of Agile tools and techniques. Apply these same tactics both onshore and offshore.
Success, not perfection, is an incremental process. If you stick to these basic assumptions, you should be able to work offshore with great results. Give me a call, and I can help you choose what’s best for your team.
© 2015 Mark Richman. All Rights Reserved.