Outsourcing software development is a huge trend. The sheer demand for software development services of all kinds led to an explosion of service providers around the world in the past 20 years. While outsourcing to India – with its English speaking population, large numbers of Electrical Engineering and Computer Science graduates, and low labor costs – is where the trend first took hold, it has spread to China, Southeast Asia, Eastern Europe, and Latin America as well. If you are simply looking at labor costs in terms of analyzing your development costs, almost anything outside the US will be less expensive – that’s a given. However, what are the risks and pitfalls of going offshore? Are there hidden costs that are not easily seen?
I have personal experience over the past 25 years with offshore development, both good and not-so-good. I’ve experienced it from within large companies like IBM and Dell, as a client in a startup with outsourced development in India, and from the service provider side as well.
- Costs – Depending on the locale, offshore rates can be 1/8 to 1/3 the costs of US rates.
- Flexibility – Because of looser labor laws and sometimes sheer supply of talent, offshore firms can find it easy to scale up and down depending on the needs of their clients
- Wide Range of Skill Sets – Since many of these countries are graduating large numbers of engineers, they tend to be trained – at least on paper – on the latest technologies.
- Working Round The Clock – While the team in the US sleeps, the team in India or Asia can be testing or doing other work, creating a 24 hour work cycle. This is a dual edged sword, however.
So, the above benefits look very compelling for outsourcing to an offshore development team. IDC projects outsourced development in China alone to hit $13.8 billion by 2017. This is a huge business. But, what are the issues with outsourcing offshore? Here’s what I’ve discovered, from personal experience and observation:
- Culture – The culture of teams elsewhere can be very different. Culture plays a role in work habits, style of communication, what constitutes acceptable quality of work, and many other important aspects of working as a team.
- Communications – Just because your offshore team speaks and reads English doesn’t mean communication will be seamless. This has nothing to do with any kind of bias – we have enough problems with teams communicating in the US even when sitting right next to each other. One problem is that sometimes remote teams will say they understand something because they don’t want to appear like they don’t. They may not communicate that they didn’t understand something oral or even written in a specification or document because they think they can figure it out and work through it. I’ve seen this countless times. The result – something gets built that is completely off and requires significant rework.
- Skill Sets – This is the resume vs. the real world skill set issue. The offshore team may have what appears to be an impressive resume, but the practical experience with the technology you’re implementing may be lacking. The lack of direct access to the actual team working on your project (vs. interfacing with just a project manager or lead) may prevent you from gauging the team’s real capabilities.
- The 24 Hour Work Cycle – As I said, this can be a dual edged sword. If your offshore team is halfway around the world, the hours of the day you can actually collaborate interactively are very limited. Current collaboration tools can help ameliorate this, but there’s no substitute for talking in real-time when you need do. Both sides tend to adjust their schedules, so everyone may be working longer. 6 AM conference calls with India – put that on your calendar.
- Costs – the hidden cost to offshore may be efficiency. Yes, there is a huge cost advantage, but what about the results? Will the project get done in the same amount of time? Are the communications issues such that even a team twice as large offshore takes longer than a team locally? Efficiency and time to market is crucial in many situations. If offshore is not efficient and timely, and if the quality is not there, then the cost advantage can be completely negated. I know of one significant new product development at a major company I was with that had to be brought back to the US because it was architected incorrectly. The main culprits were insufficient communication and a major misunderstanding of the specifications, caused by some of the cultural and skill set factors I discussed above.
At FrogSlayer, our approach is a little different. While we understand there are potential cost savings to going offshore, we want to be our clients’ onshore outsourced development team. We know there are significant efficiencies and cost savings in having a local, available, responsive, integrated development team that you can interact with in your own time zone. Our model is to hire top developers right out of computer science and electrical engineering programs, mentoring and training them to develop a wide and deep skill set over time. We don’t scale up and down to add bodies, we take on what we’re capable of delivering and prefer to grow a bit more slowly while building a solid foundation of work and long term relationships with our clients. Because of our approach, we feel we are competitive with offshore development – not by comparing rate cards, but by comparing results.
BlogSlayer is the official blog of FrogSlayer, a custom software product development shop in Bryan/College Station, Texas. Our specialty is getting your product to market in 90 days or less. If you would like a free consultation for your project or big idea, email us at firstname.lastname@example.org. You can also connect with us on Twitter, Facebook, or LinkedIn.