Software development is an intensive process. It takes time, money and a lot of talent to create great code. In a world that pushes competition to the limits, companies have turned to software development outsourcing.
Giving your code to a third-party organization to develop on your behalf is not a decision to take lightly. Software code is intellectual property, and as such, highly valuable. But outsourcing continues to offer enough of an incentive to take this risk.
We will look at how and why certain countries, like India, have dominated the software development outsourcing industry. And, how the dominance by the established players looks set to change as the software development industry evolves and quality and cost become a battle-ground.
Why Outsource Software Development?
Before beginning an exploration of software development outsourcing in India and other countries, let’s look at how the choice to outsource is made. The decision to use an external party to develop software is often based on a number of factors. These factors determine the drivers for the market and any shifts in dominance that may take place.
Software outsourcing, also, does not mean that an entire product is developed off-site; individual modules and components may be outsourced, the end product being pulled together using internal resources. The general reasons for choosing to move your code development to a third-party are:
Programmer skills gap: Countries like the U.K. and the USA are hubs for tech start-ups and giants alike. This causes competition for technical resources. In the USA, there are almost a quarter of a million unfilled software developer roles. Outsourcing is often used to augment an internal team’s specialist skills. For example, adding protocol support, encryption or digital signing capability to an application, often requires specialist knowledge. Off-loading this work to a third-party can be easier than employing an expensive specialist.
Costs: The number one reason to outsource software development has been, to date, cost-reduction. Outsourcing to countries, like India, with a lower cost of living has proven cheaper than employing a programmer in the U.S., with an average salary of over $100K.
Time: Time is money and time to market is a competitive make or break call. Outsourcing has the potential to expand your team to get solutions into production faster.
A report from Statistics Brain found the top three countries that outsource development are, in order of greatest need, the USA, UK, and EU. The report finding that 43% of US companies were outsourcing programming jobs. This is not surprising when you consider the competition for expensive skill sets in those countries.
Once you make the decision to outsource your software development you need to find the right company. In the world of software outsourcing this has been dominated to date, by India.
Which Countries Are Best Known for Offering Outsourcing Software Development Services?
India is considered to be the number one country for development outsourcing needs by the U.S., U.K. and the EU. The economic liberalization of India in 1991, kick started the country’s outsourcing revolution. As a result, India quickly became the ‘go to’ country for outsourcing with revenue of around $12.5 billion for the year 2007-08.
One of the reasons for India’s meteoric rise in software development outsourcing, is the investment of the government to encourage citizens to learn programming skills. Organizations like the National Skill Development Corporation India (NSDC) have been setup to fund and train the skills needed in a global marketplace with a focus on software development. And global companies such as Google have partnered with the NSDC to help train young programmers.
Trends and Patterns in Outsourcing
Analysts, McKinsey have performed extensive research into trends in outsourcing. They have found that 70% of offshore delivery centers place their global operations in three key locations – India, China or the Philippines. There are historic reasons for doing so, namely the availability of highly skilled but low-cost labor. However, McKinsey cautions that this reliance on those geographies is exposing providers to “location-specific risks”. These risks include:
- Local laws and Intellectual Property. Outsourcing often means trusting a third-party to protect your IP as if it were their own. Not to underestimate the importance of confidentiality and IP a report by EY stated: “When organizations perceive confidentiality as a risk of outsourcing they are less willing to outsource their service(s) to another country.” Countries like India have good IP protection laws; however, the enforcement of the laws could be difficult from afar. A recent publication by the UK government on IP protection in India points out a major issue in the enforcement of IP protection if violated could be a costly and time-consuming process. Add-on services that prevent data loss prevention (DLP) can help change this situation, which leads into:
- Focus on security and data protection. The level of cyberthreats has never been so high. There is an expectation that over $6 trillion will be spent on cybersecurity threats by 2021. Software development providers in countries that do not place a focus on using technologies like data loss prevention (DLP) will lose customers.
- Economic shifts from service-driven to product-driven. The economies of countries like India are adjusting to the massive government investment into IT. Initiatives like “Startup India” are encouraging entrepreneurship in tech. This will enhance the economy with a trickle-down effect of increased prices in the service center for software development.
- Increasing costs: India is expected to see double-digit pay rises in the country in 2019. This is on top of the 9% pay rise increase in 2018. These increases have been described as “impressive”. Although still comparably low with countries like the U.S., budgets for outsourcing will have to take potential increasing salaries into account.
- Language barriers or time difference. Any language barriers can have knock on effect to timing of delivery. Time differences can also potentially cause issues with project management.
- Quality of programmers. In a somewhat shocking report by Indian newspaper “The Hindu” they discuss a report by Aspiring Minds into India’s software development education programs. The report found that there is a serious talent shortage in programming and that 95% of graduates received a poor quality of training.
- Staff turnover. A number of organizations have found high turnover rates for IT workers in India. This includes a study by the Associated Chambers of Commerce and Industry in India who found that the sector had a 55% turnover of employees in the first year in a company.
One of the key trends in software development outsourcing is a move from outsourcing to countries like India and China to using Eastern European countries (CEE) – or nearshoring.
Is Nearshoring the New Outsourcing?
Nearshoring, or choosing an outsourced software development service in a country close by, may be the new trend in outsourcing.
Nearshoring has been described as ‘outsharing” by the World Economic Forum. Weforum describe the CEE countries that offer outsourcing as using a model that is like
“having an equal remote partner and building the product together. Outsharing tech partners focus on understanding complex (business) logic and reading between the lines.”
This move to a focus on cost-effectiveness rather than simply cheap work, seems to be taking hold. The ethos of outsharing as opposed to outsourcing offers fixes for some of the most important concerns when giving development control to third-parties. These include loss of confidentiality and knowledge as well as quality control.
Nearshoring countries include Ukraine, Bulgaria, and Poland in Europe. Whilst in the U.S., Latin American countries such as Mexico, Guatemala and El Salvador are replacing countries like India according to IDC.
Nearshoring offers a number of valuable competitive advantages over outsourcing to countries like India. These include:
Proven large scale projects and quality control: CEE countries have been behind the code for very large scale projects like Kayak, the global flight search engine. And, Lithuanian developers helped create the NASDAQ platform.
EU Compliance knowledge and security: Being in the EU, CEE based developers will have gained experience building systems to the stringent General Data Protection Regulation (GDPR) data privacy specifications. Software development vendors who work in an environment where data security plays a central part in development offer a value add.
Geographical closeness and time zone: Being that bit closer is important for project management. Being able to hop on a train or a short plane journey to sort out complex tasks helps to keep a project on track. Having a similar time zone also is very helpful for meetings and deliverable timings.
Shared culture: A shared culture can go a long way to ensuring that communications run smoothly. Throughout a project, discussions over development need to be seamless to be productive.
Countries like Ukraine have a buoyant IT sector that offers nearshoring opportunities to European countries. Ukraine is predicted to have 200,000 IT professionals across 1000 tech service companies by 2020.
Cost-Effectiveness Not Cost Alone is Driving Nearshoring
Although cost is a factor in the decision to outsource it is not the only consideration. Cost-effectiveness, which looks at the bigger picture, is chipping away at a model based on the race to the financial bottom.
Robust relationships between the client company and the software developer/agency is important for a successful project. Software development projects are often complex and long and also critical to the client’s strategic future. The communication channels between client and developer have to be fluid. This is one area driving the move to a nearshoring development partner.
Agility is also a key requisite to move to a nearshoring partner for development. This agile approach needs to be coupled with a more customizable approach to software projects with speed to market focusing the delivery date. This method of working leaves no room for mistakes.
And last but certainly not least, a secure attitude towards IP and coding may set nearshoring companies apart from their offshore equivalents, unless focus is placed in this vital area.
Can India Stay On Top of the Outsourcing Tree?
Nearshoring is not about costs alone. In fact, in a survey by AT Kearney, companies that outsource to Central Eastern Europe save around 50% on a development project compared to 75% when using India.
This focus away from pure financials to include intangibles such as relationship management, agile methodology, IP protection and data security and compliance will change the outsourcing agenda. This means that in the medium-long term we should see a trend away from Indian outsourcing to nearshoring; CEE being the choice in Europe and Latin America for U.S. firms.
However, India still offers great value for money and it is unlikely to lose its position as number one software development outsourcing location, anytime soon. This is especially true if the Indian government invest in technology education, data loss prevention and the IT industry in general.