There are a lot of benefits to outsourcing, including reduced costs, faster time to market, and the opportunity to fill in skill gaps. Those benefits are driving more and more companies to seriously consider outsourcing as a valuable part of their business strategy. As with any endeavor, however, things don’t always go smoothly, especially when working with an offshore partner. Things like time zone gaps, poor communication, cultural differences, and lack of clarity on goals and specifications often get in the way.
There have, however, been plenty of hugely successful partnerships, and they provide some benchmark practices for what works and what doesn’t. Here are some “best-in-class” strategies for outsourcing your IT functions to an offshore partner:
Establish clear collaboration and communication protocols from the very beginning, keeping in mind that there might be cultural differences when it comes to quality. The terms “better” or “faster,” for example, might mean something different to an offshore team than they do to you. The more explicit you can be about your expectations, the more likely you are to be happy with the outsourcing engagement.
Other tips on collaboration and communication include:
- Using a common project management and collaboration platform.
There are any number of platforms (Jira, Trello, Basecamp, etc.) designed for collaboration between development teams that are separated by time and/or distance. These platforms provide one central place for everyone involved to keep up with progress, ask questions, and give feedback.
- Establish clear hand-off protocols.
One of the most common complaints about working with offshore teams is the limited communication: one team is getting to work just as the other is leaving. Having clearly established handoff processes that are followed every day can help keep progress going around the clock. Ideally, those processes should include a morning (U.S. time) phone conference to discuss what the outsource team accomplished on that shift and to answer any questions or concerns. Following that up with an end-of-the-day email from the U.S. team, providing any additional feedback as well as guidance and expectations for the coming shift, works well in most outsourcing engagements.
- Avoid “ghost” handoffs.
Instead, schedule a “walkthrough meeting” where the remote team can present the work they have done and both teams can ask questions, explain why things were done in a specific manner and offer feedback. This will help avoid situations where the in-house team looks at some code or a user interface and thinks, “Why in the world did they do it like that?” or had some complex feedback that would be really hard to explain in the feedback notes. If there are multiple time zones involved, you could go back and forth for days, whereas a quick conversation would easily resolve it.
Whether you’re asking a development team to come up with something from scratch or that will fit within an existing system, they need to know as much as possible about the context in which their work will be used.
Things that can help with that include:
- Making sure the outsourced team understands the context in which their implementation will be used.
Whether it’s a customer interface or back-end data management, you’ll get better results if the outsourced team clearly understands how their work will fit into the big picture. When possible, allow each member of the team full access so that they’ll have first-hand experience in both the purpose of the project and with any existing problems.
- Providing visual aids.
There’s more than one way to do almost any development project. But the “right” way is the one that will fit seamlessly with your other platforms, your users, and so on. If you have something specific in mind, don’t just tell it – show it. Visual supports like screenshots and mockups help the development team envision the project the same way you do.
- Checking for understanding.
After you’ve explained your goals for the task or project, take additional steps to ensure that it was fully understood. This can involve asking the development team to share early stage implementation, mockups, or implementation documentation for the task. This will help avoid problems early in the process and reduce time lost in collecting and implementing feedback on incorrect implementations.
Lack of ownership and motivation can be a problem whether your development team is across the hall or on the other side of the world, but there are clear steps you can take to maximize motivation.
- Encourage a collaborative relationship between your in-house team and the outsourced team.
Remind your in-house team to be receptive to questions and feedback from the outsourced team. That includes making them comfortable with any cultural or language differences that arise.
- Focus on what matters.
When you’re working with an offshore team, focus on the work being done rather than on differences in communication style, schedules, and work cultures. As long as the work is completed correctly and on time, cultural differences don’t matter.
- Take time to define clear ownership and make individual people responsible for the work they are doing.
One way to do this is by by making sure that every member of the outsourced team has their own account on your project management platform rather than trying to funnel everything through one gatekeeper. Clarifying responsibility and providing visibility for each part of the project’s progress, like who’s responsible for it, increases feelings of ownership and encourages everyone to do their best work.
For years, the professionals at Sofmen have been managing the relationships between U.S. clients and their offshore teams. We’ve seen it all, we’ve handled it before, and we manage every step of the process — including making sure these benchmark practices are in place and working smoothly — for you so that you don’t have to worry about it. We’re here to help in any way we can.