That Hard Truth About Outsourcing Software Development

Throughout the past two decades we have seen two extreme (yet common) points of views when it comes to outsourcing software development overseas.

  • Those who blindly favor outsourcing because it is “cheaper.”

  • Those who would never consider outsourcing due to "quality concerns.”

As in most things, the truth about this topic is much more nuanced, and these points of views are often the result of bad luck and ignorance.

As leaders gain experience applying different development strategies, they eventually realize that outsourcing itself is not the issue and that additional factors need to be taken into consideration.

The hard truth is that poor software quality and high development costs are a management issue, not a developer issue. Any developer needs to be properly managed, regardless of geographic location.

Here are some better indicators of cost and quality:

Communication Efficiency

We believe communication is the number one factor that affects software development cost and quality. In today’s fast changing world, few project timelines allow for the production of an exhaustive and fool-proof specification document. (Thankfully we are not building bridges). And because of this, a team’s communication efficiency will determine whether they have to revisit a feature once or several times.

And yes, geographic distance could make communication more challenging, but good managers should be able to communicate effectively in both face-to-face and online scenarios. It is a matter of using the correct hiring criteria and communication strategy.

Time zone differences, however, do matter and have nothing to do with outsourcing. Two US based team members working during different schedules on opposite sides of the country will find it hard to leverage real-time collaboration strategies. But even if they were in the same office, there could be a gap in their communication style and effectiveness.

The takeaway here is: poor team communication will reduce quality and drive costs up, regardless of where the team members are located. Some teams are built to function properly across time zones, others are not. Don’t blame it on outsourcing. Managers have to pick the right team members and communication strategy.

Expertise and Self-Worth

Another factor that is often overlooked is developer expertise and self-worth. A Google engineer might not be the best choice for a company that needs to build a website to showcase their portfolio and a junior developer might not be the best choice for developing a low-latency global communications network. Almost every highly skilled developer knows their worth and market rate, regardless of where they are in the world. If you are paying ridiculously low amounts of money for software development, chances are you are dealing with junior or low-quality talent, regardless of where they are located. You can find equally poor talent at equally low prices while hiring locally. The opposite is also true: you can find overpriced engineering talent locally and abroad. An experienced engineering manager should be able to evaluate whether a developer is worth their asking price, regardless of where they are located in the world.

The Takeaway

The effectiveness of outsourcing software development has more to do with execution than the strategy itself and some teams are more effective than others under certain scenarios. If you are struggling with low quality and high software development costs, CTO Nexus might be able to help. Get in touch with us today!

 

Next
Next

When Corporate Greed Jeopardizes National Security