It’s one of the first and most important questions in any software development project: how do we scale development and get the most--and best--output for our budget? For some time, the answer for many American companies was to look offshore.
Though India still led in offshore business services in 2017, China and Malaysia are now beating out countries better known for offshoring thanks to their superior financial attractiveness, people skills and availability, and business environment. Software developers in Eastern Europe, the Philippines, Indonesia, Brazil and Thailand are all vying for American contracts.
If you’re looking only at labour on a per-hour basis, almost any solution outside of the United States is going to appear to offer cost savings. However, your initial development cost is far from the only consideration.
In this post, we’ll have a look at the pros and cons of offshore vs onshore software development, with some tips and takeaways to help you protect your investment.
Going Offshore: The Good
There’s a reason US companies spent $84.5 billion on application outsourcing alone in 2015. On the surface, offshore development firms have some compelling benefits and for years, offshoring has been the been the go-to strategy for reducing costs. Here’s why:
Initial cost savings. Lower wages and costs of living in offshore development hotspots can drive initial fees to rates you can’t help but find attractive, on the surface.
Wide ranging skills. Thanks to the sheer volume of engineers and developers they can afford to keep, offshore development firms often offer every service and capability under the sun.
Scale. Need 50 more people on the project? Done! Offshore firms typically have access to a massive talent pool and can scale quickly, depending on your needs.
In 2016, US outsourcing fell to the lowest level in a decade, as American companies outsourced $76.9 billion in contracts. This reflects a shift in North American companies’ priorities as much as the realization that the savings offshore firms offer simply may not be worth the cost to the project’s success. Here’s why:
Real cost savings often don’t meet expectations. Comparing rates on a per-hour basis is dangerous. Significantly more hours can be spent by developers who lack the experience, vision, and technical skill to carry out your instructions.
Collaboration and communication across time zones suffers. Little to no overlap between your team’s working hours and those of your offshore developers can throw a wrench in your ability to communicate, adding lengthy delays to the project.
Loss of creativity and innovation. These same business conditions require that your development team are able to deeply, truly understand the problem they’re trying to solve. Distributed offshore teams can only do as they’re told; they aren’t close enough to the problem to participate in innovating or finding efficiencies.
Speed and agility. Rapidly evolving customer expectations demand that your systems are agile and able to adapt quickly. Software needs to roll out fast and iterate faster to keep you ahead of the competition. Offshore development is sometimes too slow for today’s constantly connected business environment.
The Unfortunate Ugly Possibilities with Offshore Development
You hope these things don’t happen, but have to be prepared in case they do.
Dispute resolution. No one ever plans on a dispute arising in the course of a development project. But if it does, what recourse do you have? If the worst case scenario were to happen and you needed to pursue legal avenues of recourse, are you prepared to navigate a foreign legal system or deal with an absentee party in a lawsuit?
A culture of blame. There’s always the potential for an ‘us vs. them’ mentality to permeate your corporate culture when problems with code arise. Distance, disparity in work hours, miscommunications and competition between your offshore and in-house teams can foster mistrust, divisiveness and a culture of blame. Unable to find creative solutions together, their productivity and morale suffer--and so does your project cost and quality.
Back-door offshoring. Choosing an onshore development firm doesn’t necessarily mean you’ll avoid the pitfalls of offshoring. Some domestic firms subcontract out to cheaper foreign developers, then mark up the output. Make sure you understand who is actually doing your development work and where they’re located so that in choosing an onshore solution, you reap all of the benefits.
As LinkedIn co-founder Reid Hoffman said, “If you aren’t embarrassed by the first version of your product, you shipped too late.” Agility, speed and responsiveness are critical in modern-day development. The luxury of having years to plan and execute is long over.
Vast chasms in work culture, distance and the understanding of customer expectations have proven too far and wide for offshore development teams to keep pace where companies need, more than ever before, to be closer to their customer. Onshore software developers can iterate faster and bring greater innovation to each project. What’s more, our deepening relationship with data and our ability--necessity--to prove ROI have rendered whatever initial cost savings offshore might offer negligible, at best.
This is where an onshore firm like Skookum can help. Our results-driven team of strategists, designers and engineers are deeply entrenched in projects that push the limits of technology for some of North America’s leading brands. We understand what it takes to compete and succeed in the digital era. When it comes to the ability to scale, our strong employee value proposition, fantastic culture and tight connection to the technology community have earned us nine ‘best place to work’ awards. From modernizing your legacy systems to reducing your operational costs through automation to driving customer interaction, engagement and conversion through top quality software experiences, we’re a highly collaborative partner you can count on.
Want to learn more? Get in touch to see what Skookum can bring to your business.