Software Outsourcing: Here or There?

by Eban Escott, Jan 13, 2017

Three decades ago, Gordon E. Moore, one of the co-founders of IT giant Intel, made a prediction which has since become known as Moore's Law: transistor capacity, and consequently overall computing power, will double every one and a half years. Moore's Law highlights how fast technology is moving. New and improved ways of building and packing transistors into computer components are continually being developed, and at a startling rate. Nothing is sacred. Nothing is safe. The pace of advance is such that today's best practices could be obsolete by tomorrow. 
Outsourcing software has been considered the most cost-effective and efficient method of software development for some time. Many organisations have even begun relying on outsourced teams based in other countries. There is no denying the appeal of this option. Outsourcing has many advantages, and offshoring appears to maintain these and then some. Namely, because labour costs are much lower in countries such as India, offshore outsourcing typically undercuts local outsourcing. There are some hidden caveats to offshoring, however, such as timezones and long-distance communication. Both of these are commonly seen as downsides. Though, perhaps, small downsides. Whichever option you choose or plan on choosing, remember Moore's Law.
The software development process is itself in a continual state of change as developers adopt new technologies and business practices. This article examines outsourcing as a method of developing software.


The common perception is outsourcing saves money based on labour arbitrage. External developers are cheaper than internal ones, and offshore developers are cheaper than local ones. In both of these cases, quality and/or control is sometimes being sacrificed in exchange for these savings. Many organisations, however, choose to outsource (especially offshore) anyway, believing the economic benefits outweigh any accompanying detriments.
The economics behind outsourcing, however, are far less straightforward than a simple labour rates comparison suggests. Internal developers, for example, are generally more expensive, but they are probably also more aware of the organisations needs and goals. Ultimately, "labor arbitrage" in software development is a myth.
Peter Vaihansky, Americas for First Line Software Pro, argues likening local and offshore (as with internal and external) can be like comparing apples and oranges. You might only be paying $20/hr, but how much value are you getting per hour? How quick and skilled are your offshore developers? Are you getting strong people on your team, or inexperienced ones with questionable skill levels and discretion? One $100/hr developer may produce more value for you and your organisation than five $20/hr developers. The point is, by offshoring your software development you take onboard certain risks, ostensibly in the name of savings. The problem is, the economics of outsourcing are far less straightforward than is commonly assumed. There is no one size fits all. And sometimes, savings in terms of labour costs are paid some other way, such as inexperience. 

Accuracy and Efficiency

We're only human, and we'll make mistakes; however, because of strict deadlines, programmers sometimes don't have the luxury of being able to check for errors. To be successful, developers (and designers) must walk a tightrope, balancing speed and accuracy. Focus too much on speed and your accuracy may slip, leading to mistakes. Conversely, focus too much on accuracy, and you may miss deadlines. And then there are timezones and long-distance communication. All of these factors can affect accuracy and efficiency, as well as speed. 

The Next Step in the Evolution of Software Development Process

Just like transistor technology, software development has evolved, with advanced, local developers now capable of delivering competitive results. WorkingMouse is one of a new breed of agile and innovative software developers. These developers rely on new and improved technologies and business practices, as well as the rich human capital available in Australia and other advanced countries, to overcome higher labour rates. 
At WorkingMouse, for example we have our Innovation Platform, which uses codebots to write code. This allows us to deliver projects quicker and cheaper than most other teams, including offshore. The use of codebots helps with accuracy, efficiency, and speed, as the majority (92.86% to be exact) of our code is written by bots. Because of this, we can effectively mitigate the rate of human error in our projects. This in turn has enabled us to complete projects with great accuracy and efficiency. Well known programmer and author of C by Example, Greg Perry said "computers are finite machines; when given the same input, they always produce the same output." I feel this statement sums up exactly why self-written code is the future. Unlike the human brain, the computer is able to repeat the same task time and time again in a flawless manner. Few outsourced programming firms can claim that level of consistency and efficiency. 
With technologies such as our Innovation Platform, it's unclear if the savings found in offshore development offset the potential detriments. 
If you want to read more on outsourcing, check out Eban's article on The Key to a Successful Relationship with Your Software Outsourcing Company.