The three facts about India are impressive. The history of this country extends back about 5,000 years. The territory of the country takes in the greater part of South Asia. According to Worldometers, as of July 23, 2018 the population of India has reached 1,354 bln people. This country has become one of the top outsourcing destinations for overseas IT projects and startups. However, a great number of people warn about the risks of cooperating with Indian vendors. So, why outsourcing to India is a bad idea? Or is it a regular competitors’ trick to scare the customers? Let’s figure out.
India IT Industry Overview
The first IT companies in India like Tata Consulting Services (TCS) were established in the late 60’s. During 70’s the country didn’t observe significant development in the IT sector. That time was spent inefficiently because of restrictions and high import taxes on computer devices. The appointment of Prime Minister Rajiv Gandhi in 1984 marked a turning point in the development of the Indian IT market. Among the greatest reforms of Gandhi were the increase of government support for technology, science, and related sectors as well as the reduction of import taxes on telecommunications, computers, and other technology-based devices. Since then, IT has become one of the major industries to invest in.
The liberalization policy of the Indian Government in 1991 was aimed at making the economy more service and market-oriented. It gave a further boost to IT. Today, IT is the 5th largest industry in India. According to Statista, in 2013 8% of the overall GDP was represented by IT sector. In 2016, the country exported software and IT services worth 61 bln US dollars.
India is known for its Software Technology Parks (STP), a community established in 1991, that provide training, consulting, implementation IT services. The benefits offered by the STP include the following incentives:
- tax incentives;
- deferred tax assets entitlement;
- software exporting.
The technology industry is expecting to streamline the overall business environment in India. According to STPI Annual Report 2015-2016, in 2015 India has become the third-largest home in the world for 4,200 startups, after the US and the UK holding the first two positions. The more recent report 2016-2017 shows that the government’s prime objective in the development of the IT market is promoting startups. The most profitable vertical startups, FinTech, HealthTech, and EduTech reached around $450 million in funding. It is expected that innovations in these sectors will drive the country’s economy to $1 trillion in 2022-2025.
Top 4 Trends in the Indian IT Sector
By reading annual reports written by STPI I could identify the main tendencies of IT market development in India for the next couple years. Below are short theses describing the trends:
- India is transforming its IT market from a service-based to a product-driven industry. By the way, Sramana Mitra, a contributor to the Huffington Post, also predicts that “more product entrepreneurs will hit the market”. She states that there will be more high-value services along with more IT products built in India.
- Technologies like Blockchain, AI, IoT, and innovations in social, mobile, analytics and clouds (SMAC) sectors will enhance the outsourcing experience of Indian developers.
- India is crafting new schemes to promote BPO services. The objective of the schemes is to create more job opportunities for youth in small towns.
- India promotes SMEs by creating a special environment and organizing professional events related to the IT sector.
Outsourcing to India Statistics
Before proceeding to India outsourcing statistics, let’s define the main terms below.
Offshore outsourcing is a term covering a range of information technology and business services delivered to customers in developed countries by personnel based in developing countries. The offshore outsourcing market, initially developed as software development, has expanded well into an area one calls information technology enabled services (ITES) that is fast emerging as the major part of the IT industry.
Business Process Outsourcing (BPO) can be defined as the transfer of a company’s entire noncore but the critical business process/function to an external vendor who uses IT-based service delivery. With the current focus on core business capabilities, many firms are outsourcing select business functions to expert partners as the basic impetus for outsourcing remains leaving the non-core business processes to specialized service providers that not only minimizes costs but also improves the chances of the processes being handled by experts. It aims to raise a parent firm’s shareholder value because it is about delivering outcomes - that is, higher performing business processes. BPO forms an important part of the ITES industry and is all set to grow substantially in the years ahead.
India’s IT sector includes the following subsectors (market size 2017 included):
- IT Services with the market size of $80,8 billion.
Over 81 percent of revenue comes from the export market. Business, financial services, and insurance (BFSI) continue to be the major vertical of the IT sector. IT services had 52 percent share in total Indian IT sector revenues in 2017.
- Business management within the market size of $29,26 billion.
Around 87 percent of revenue comes from the export market. Market size of business processes management (BPM) industry is expected to reach $54 billion by FY25. BPM segment had 19 percent share in Indian IT sector revenues in 2017.
- Software products and engineering services with the market size of $29,26 billion.
Over 83.9 percent of revenue comes from exports. The software products and engineering services segment grew 10.5 percent in FY17. It had 19 percent share in Indian IT sector revenues in 2017.
- Hardware with the market size of $14,0 billion.
The domestic market accounts for a significant share. The segment had 9 percent share in Indian IT sector revenues in 2017.
Why Outsourcing to India Is a Bad Idea? The Issue That Should Be Approached From Two Sides
I’ve heard so much of “the low quality of code and a different mindset” of Indian developers but I consider that it’s not correct to judge Indian developers by what their competitors said. That was the reason why I’ve decided to approach this issue from two sides.
Lack of Experience
Zhenya Rozinskiy wrote in his article “Why Is Indian Outsourcing Doomed?” that India is facing the so-called “Tech Bubble” which is, according to his words, a phenomenon when people with no technical background are becoming QA or software engineers just because these positions are prestigious and allow to earn money. He explains that this factor will affect the quality of the projects delivered to the customers of Indian IT firms as their projects will be a testing ground for the entry-level developers.
There are a lot of similar opinions you can find over the Internet. And all of them trigger an immense defensive reaction. My own argument is that this is a very frequent practice to provide a training ground for the entry-level employees all over the globe. That happens not only in India, remember that. Below is our article on the related topic:
Another frequent argument that is against working with Indian engineers is all about the difference between the time zones. The difference is actually immense.
The main problem about the difference that it takes over 24 hours to get a reply from a development team. However, a belated response can be caused not only by the time difference but also by the lack of information, for example. Usually, agile teams try to accommodate to the customers’ schedule if the difference in the time zones is little.
Rozinskiy mentions of “blended costs” in his article. He describes how a typical Indian team of developers looks like:
50% - juniors who can barely work;
25% - juniors that are a little bit better than the first group;
25% - middle developers that were juniors recently.
This distribution has nothing to do with how it actually looks like because influencers can’t simply generalise all Indian developers, even if you had a long-term experience in collaborating with some of the teams located there.
Along with the positions distribution of developers in a team, the author writes about the “blended costs” which means that you will pay for senior developers instead of those mentioned above. Below are our recommendations on how to operate if you feel you are deceived:
According to the words of another author, Christophe Delsol, enlightening the readers about the risks of outsourcing to India, one of the major cons is that Indian developers prefer verbal communication rather than writing SRS documentation. This leads to the misinterpretation of the assigned tasks and misunderstanding between a customer and a developer. However, we all know that that’s the customer who chooses a vendor. Communication processes and issues should be discussed at the very beginning of your cooperation.
Are Indian Programmers Over-Rated?
I have found a brilliant answer to this question on Quora. Rambabu Thota, for example, considers that programming has no nationality or religion. It’s not correct to judge talents based on their race.
A lot of Indian developers are offended in Reddit threads, Facebook, or on other social media pages just because is widespread to consider that all Indians write the code of low quality. But do you remember that long time ago, in 2005, Bill Gates said that Microsoft’s best programmers are from India, don’t you?
That year during his visit to India, Gates has also announced about the contest for young Indian developers, the main objective of which was to find the rising talents. In his speech, he mentioned that his objective is to make digital devices inexpensive and easy to set up for users. Isn’t it the main reason why so many international companies outsource their projects to India as this country offers “cheap labour”. Let’s see how much Indian developers earn.
According to Payscale, Indian developers make around 391,000 Rs per year. That is approximately 5,700 USD. The lowest yearly payment is 179,000 Rs (2,600 USD) whereas the highest salary reaches 884,500 Rs (12,900 USD). The hourly rate ranges from 98,5 Rs to 1,230 Rs (14-18 dollars per hour). The high-paid skills include C++ and Java/J2EE. The data on Payscale is backed up by 11,410 individual reporting from the developers working in India.
Top Factors Affecting Developers Salaries in India
First off, we should mention the skills as the top factor affecting the payments. The skills that are the most sought among the programmers are as follows:
- HTML and CSS
- Microsoft SQL Server
Gender is the second factor affecting the job involvement as Payscale shows that 84% male and only 16% female work as software engineers.
Years of experience in programming also influence the engagement:
72% of developers work 1-4 years in IT;
14% work less than 1 year;
13% are occupied as developers 5-9 years;
2% only work for more than 10 years;
0% work more than 20 years.
The location of developers affects salaries as well. It is obvious that those who live in larger cities earn higher salaries than those who are located in small towns. Here is a visual aid demonstrating the pay difference by location.
What Are the Main Issues With Outsourcing to India?
While a lot of bloggers and influencers write that Indian programmers are incompetent, the latter are facing the issues that bother them greatly. Let’s see what pressing issues of the day are the most frequent within IT community in India.
I read a lot of reviews and stories written by Indian programmers. Below are some of the frequently reported issues they face, according to Payscale:
- No compensation for overtime.
- Low rates as compared to those paid in other countries of the globe.
- Stressful work environment.
- Poor project management.
- Lack of recognition and no benefits.
- Too many tasks per one employee.
- No career growth opportunities.
- No technology upgrades.
- Unequal distribution of tasks between coworkers.
These were the major issues that can affect the entire situation with outsourcing to India.
Despite shortcomings, people working in India as software engineers, programmers, and developers describe the pros of their occupation in IT. Here is what Indians like about their jobs in IT:
- The possibility to obtain new skills and knowledge.
- The development of problem-solving skills.
- The possibility to work with experienced developers remotely.
- New technologies learning.
- Flexibility in working hours.
- Communication with clients.
- Dedicated mentorship.
- Office conditions.
What Are Other Disadvantages of Outsourcing in India to Take Into Account?
My article is not aimed at convincing you to throw away your thoughts about India as an outsourcing destination. Indeed, I’m trying to understand why so many people are against this idea. That’s why I have collected other disadvantages that you should take into account while planning to delegate your project tasks to an offshore vendor. So, here are some other cons:
- You can easily meet scams who will copy and sell your project SRS or other data related to your project.
- Due to the language barrier, for example, you may lose the time for the development. Some Indian programmers don’t speak English that’s why SRS documentation is translated into Indian often. It takes some time, surely.
- According to Hewitt survey, this year, India is facing a salary hike of 9,4%. That will, surely, lead to the developers rates increase. That means that customers need to plan their budgets accordingly.
Among the threats that India faces today is the development of new centers, such as the Philippines and China, which are fast gaining ground among investors due to their low-cost advantages. Here is a need to compare Indian developers with their Chinese colleagues.
Indian Programmers vs Chinese Programmers
HackerRank concluded that the largest programmers communities are located in the USA and India, and the best programmers are based in China.
HackerRank evaluates the qualification levels of developers and unites online communities of programmers all over the globe. They analyzed more than 1,4 million test tasks done during the last years. Chinese programmers are superior to the representatives of other countries in mathematics, functional programming, data structures. According to this rating, India is a leading country in developers growth speed.
While Indians are complaining about overtimes, Chinese developers sleep at the workplace because of the rough competence on the domestic market.
Developer Salary in China and the USA
According to Payscale, the average salary of Chinese developers is around CNU 182,500 which is approximately $26,900 per year. It’s quite higher than Indian developers earn. The payment depends on the level of experience, gender, location, and a set of skills of a developer. Thus, those employees that are located in Beijing earn more than those who live in Shanghai, for example. Skills that are in demand in China include C#, C++, Java, and .Net.
If we compare Indian programmers vs. American programmers, we will surely need to find out how much the latter earn per hour and per year.
According to Indeed, American developers earn around $102,000 per year. Below are more details regarding the different jobs in software engineering:
- Software engineer - $102K
- Java developer - $100K
- Web developer - $71K
- .Net developer - $91K
- Application developer - $84K
- Full stack developer - $112K
- Front-end developer - $103K
- Senior software developer - $117K
As you see, the US programmers salaries are much higher than those in India or China. However, we should take into account that each single job position in the USA and in India may vary greatly, i.e. developers may be required to have a different set of skills.
Among the things that US programmers don’t like about their work are the issues with project management, deadlines, and unclear SRS documents. A lot of employees complain about high responsibility and pressure at the workplace.
Why Do Americans Outsource Their Projects to India?
According to “The Indian Software Industry” report, the most frequently reported reasons for outsourcing have to do with the shortage of skilled professionals in the USA. Companies say that they can’t find a required number of professionals quickly. Another reason for outsourcing to India is the fact that American companies don’t want to invest in in-house capabilities that don’t match with their core competencies (for example, developing apps for legacy platforms). Outsourcing such projects to India or another country frees their in-house employees to handle more creative projects.
Firms engaged in developing software products emphasized the need for accelerating product development in the face of ever-shorter product life cycles. In some cases, US firms outsource to Indian firms to get access to more specialized engineering talent, particularly in the area of telecommunications. Other reasons include the option of round the clock operations and the ability of Indian vendors to assemble "functional" teams of engineers at a very short notice.
The thing that surprised the authors of the report:
“One reason that we expected to hear, but frequently did not, was outsourcing to reduce costs. Many of the respondents downplayed this issue, insisting that cost was a relatively minor consideration”.
This appears to be a response to the prevailing concern in the US about the possible harm to US engineers from software outsourcing and inflow of foreign software programmers. It is also inconsistent with the extensive price competition that prevails in the Indian software industry. According to the report, most of the US managers commented on the excellent programming and coding skills available in India. They also noted that their Indian vendors were good and willing learners, and receptive to new ideas, and flexible in terms of the software and hardware platforms for which they provide services.
You might be interested in the related topic: “Outsourcing to India or Ukraine? Differences Between Top Destinations”
The Organization of Software Outsourcing to India
Software outsourcing and exports are divided into three categories based on where software is developed and how the development is managed and organized.
The 1st category is onsite consultancy or onsite projects, where the Indian company provides the US client with software professionals with the particular technical skills asked for by the client. These skills could vary from mainframe-related software to specialist expertise in UNIX and WinNT platforms with JAVA programming skills. In essence, the entire project is executed at the client’s site. The customer manages the project, controlling the deliverables and deadlines. The software is developed according to the customers’ processes.
The second category of exports has a mix of work done offshore (i.e., in India) as well as onsite. In this model, the Indian company sends a few software professionals to the client’s site for requirement analysis or training in a particular system. These professionals then bring back to India SRS documentation and have a larger team develop the software offshore. If the project is large, a couple of Indian professionals remain at the customers site acting as liaisons between the project leaders offshore and the clients. Sometimes these onsite professionals are needed for emergency operations and for reassuring the client that the project is proceeding according to schedule. To execute such projects, a firm needs not only skilled professionals, but also a software development process and methodology, and an ability to manage software development. Unlike in onsite projects, the Indian firm provides technical and managerial expertise as well.
The third method of software export is in the form of an Offshore Development Center (ODC/OSDC). An Offshore Development Center is a popular organization form especially for firms based in the U.S and Europe and who wish to take advantage of the skilled talent pool and lower wages in India. An offshore development center involves an umbrella contract with a long-term agreement on prices for time and materials (usually standardized on a man-hour basis). In this method of outsourcing, a large fraction of the project is executed offshore and the Indian firm is responsible for adherence to schedules for delivery. From time to time, the client sends projects to the center. For each project, the negotiations are largely restricted to the resources and time that will be required. In some cases, the place where the work is done is physically separate (from the rest of the Indian company) and secured. Many of the established Indian software firms will have more than one development center.
Firms that have been outsourcing software to Indian firms for a long period prefer this form of organization since they are confident of the Indian firm’s capabilities and rely on their processes for delivering software. Working together over time reduces the time for training as well as knowledge transfer.
To sum it up, I should say that the entire picture of the Indian IT market and outsourcing experience is rather mixed. On the one hand, the software development market in India is growing rapidly demonstrating a tendency to the development of product-based organizations. On the other hand, Indian developers have very few opportunities to enhance their skills, learn new technologies as well as to move up the ladder. The salary they earn is rather low as compared to the payment offered in the United States of America, China, or Europe.
We can’t just agree to the opinion “Indian outsourcing doomed” or else without even trying.
If you gonna get your project done by offshore developers, you should be very careful when choosing the right vendor. I have provided some helpful links within this article for you to learn how not to be deceived by a software vendor. Wherever you outsource your projects to, you should be aware of the tips and tricks to check if your vendor is cheating or not. Should you have any questions about offshore software development, feel free to ask our experts. They have a strong background in training, consulting, audit, and estimating.