Offshore Software Development – You Get What You Pay For
I’ve spent more than 3 decades working for Fortune 500 companies driving their software development efforts. While writing software and managing software engineering departments, I have learned that many CEOs and boards will consider the single data point of the hourly cost for a software engineer in making decisions on where to develop software. Paying $20 an hour in India versus $30-$75 an hour in salary in the US seems like a no-brainer. After many years of chasing this illusion of saving money, some US companies have finally recognized that there are many other costs to consider when calculating the total cost of ownership. Today they are either cutting back their overseas software engineering teams or pulling that capability back completely after many years of effort and billions of dollars spent.
I have personally worked with and managed multiple teams in India and Russia while working for these companies. I have software development friends who still live overseas and I stay in touch with them. Employees for overseas software companies are often very friendly people and truly work hard to meet the needs of US companies. In 2016, I started my own custom software company – Flint Hills Group. Our company employs highly experienced software engineers across the US, some of whom were born in other countries but are now US Citizens living in the US. These are very intelligent and hard-working engineers. Many overseas engineers have great technical qualifications. I get approached by foreign software companies every week to outsource Flint Hills Group work to them. We choose not to pursue their offers and have a great deal of confidence in our US-based software teams. In most cases, there are things outside of the control of overseas software companies that make their model a poor choice for US companies.
We Need A Project Manager To Span Both Teams
In the beginning, companies often fail to understand the need to staff a dedicated project manager to facilitate control and communications between the US team and their offshore software team. This becomes an added cost to the project that may have been overlooked. Along with this cost comes the additional cost of occasional travel back and forth between the offshore and US teams. The lifestyle of this Project Manager can be viewed as hectic at best. It’s not uncommon for 6am or 10pm calls to be a normal part of their life because of the time zone differences that accompany offshore development. Traveling on planes 20+ hours to offshore development locations affects their work-life balance as well. My sister filled this role for a major technology company for years and eventually left the company after the negative impact to her health and family.
Communication Delays Drive Cost and Stretch Schedules
When working with an offshore team, it’s often the case that they are sleeping when the US team is working. As a result, emails and phone calls are delayed by a day each direction. This slows down the project while costing time and money. Even with teams in the same time zones as the US such as Argentina or Brazil, communication barriers can lead to delays. Of course, this only happens if you’re lucky enough to even communicate with the software team. Software companies often shield customers from them to avoid these issues. They mean well, they try very hard, but it can be inefficient to communicate directly with them at times.
Culture Can Be Impactful
Corporate America has a specific culture. Teams are expected to be successful if given a reasonable amount of time and resources. If a team is in trouble, it is expected that they will voice this in some way. It’s often candy-coated but the attempt is to voice bad news. There is also a cultural expectation that team members will support each other. This is not always the case with overseas cultures. It’s not unusual in some countries to NEVER share bad news with customers. It’s considered disrespectful for them to do so. I’ve been in scrum calls with overseas teams where their burn-down charts clearly show they will miss their schedule by months. They frequently refuse to admit this, saying they will work longer hours to get back on course. It’s a recurring story with the same result of missed schedules. Of course US teams can also miss their deadlines. The difference is by how much and how they communicate. It’s often a clearer discussion on schedule slips or how large of a schedule slip. I’ve always said that bad news is not like a fine wine, it does not get better with time.
Some people call this the March of the Lemmings. Lemmings are furry, cute little creatures that have been known to follow each other no matter what risks lie ahead. Some overseas developers have been known to simply follow the specs to the letter of the law, even if they don’t make sense. This lack of innovation may tie back to culture and the avoidance of conflict or challenge. After all, they were just following the spec! US developers are often better at asking clarifying questions and offering alternative solutions. This may cause some pause early in the project but it can also save time and money if the suggestion makes sense and is adopted. Overseas teams may also be following a waterfall development approach instead of agile development approach which requires full definition up front. Flint Hills Group follows an agile software methodology and helps by also providing UI/UX Usability architects to solve Human Factors challenges.
You Don’t Always Get The A-Team
Some overseas software development teams may not assign their top developers to your project. You can’t see them or interview them to tell if they are qualified. They may be fresh out of school or possibly still in school. Companies often use less experienced engineers to lower their costs. You just don’t know. If you get a less experienced team, you may receive software solutions that require rework at an additional cost. It’s always best to ask for a list of certifications, experience level and degrees for the development team. You may need to familiarize yourself with overseas degree levels and capable schools which are often available by searching the net. When you work with US software teams, it’s easier to meet them, interview them and evaluate their credentials.
Need Developers Onsite?
When working with offshore teams, travel often costs an arm and a leg and may involve dealing with VISA issues and delays. Working with US developers allows for phone discussions in roughly the same time zone. Even if a trip is required, travel can be achieved for a fraction of the cost in 24-48 hours compared with overseas flights.
You Say He Quit?!
Until you have experience trying to grow a software team overseas as I have, you cannot fully appreciate the difficulty of holding onto talent. There is a cost for training new talent to understand your business and your project. In countries with high growth, software developers are known to jump ship for a 25 cent raise down the street. This results in team churn, retraining costs, lost time and schedule slips. Just talk to any number of companies who work with overseas teams and they will share this unfortunate problem which is rarely talked about.
Corruption In Other Countries
Flint Hills Group worked with a customer who started their project with overseas developers. More than 2 years later, the project was still not complete despite spending more than if they would have worked with US developers from the start. The cheaper hourly costs make companies believe they will be better off but this is rarely the case. In the latest example brought to Flint Hills Group, it was witnessed that these overseas developers had staged other customers’ databases on the US customer’s cloud hosted solution. They were billing other customers for these resources and allowing the US customer to pay the added cost. With the company outside of the US, there was limited recourse to legally pursue them once this was known. In addition, any intellectual property can even be taken and applied to other companies. Flint Hills Group mobile developers were able to shift the resources away from the overseas developers and move the US company’s hosting services to an enterprise-level US hosting service dedicated solely to the customer. This will save thousands of dollars per year as a result. Many overseas developers are honest and upfront people. Some are not. You need to take into consideration where overseas developers are located. Is their country or company under scrutiny for other ethical reasons? If so, you may experience some unfavorable results.
Many US Tech Leaders Share The Same View
In 2014, Forbes brought this to light with an article titled The True Cost Of Offshoring Your App Development. This holds true for all software projects and not just apps. Multiple costs contribute to the total cost of ownership for a software project. It’s only after years of hemorrhaging dollars and slipped schedules that many companies recognize they have made a bad decision.
Other IT and Technology leaders have shared their stories with Forbes on pursuing overseas software development. Susan, a former EVP for a large healthcare company shared her experience with overseas software teams.
I led the PMO at a Healthcare company that had outsourced most of the development work to a company based in India. The decision was based on cost. There was little or no happiness with the decision. Turned out the cost savings was much less than predicted- it took more management time in the offshore development teams than had been originally anticipated. There was also more turnover on the development team than had been planned for — job mobility in India is increasing as salaries and skills rise. This turnover resulted in less experienced programmers being assigned to the projects. This inexperience also lengthened development time. Trivial example: In an ETL project, if the spec said extract name and street address, only those fields would be extracted. An experienced developer would probably say that they might really need city and state and might go ahead and include them in the extract. This did not happen. The time gap between US and India was a double-edged sword. Development occurred round the clock but any questions would have to wait till turn over the next morning. So, was the schedule improved? Probably not.
Geoff is a CEO at a New York tech startup company. He voiced his concerns in this way.
In my experience, geographic distance between work centers introduces friction into the product development value stream, and friction needs to be overcome with additional work. Technology and practice have allowed us (collectively) to become much more effective at overcoming this friction, but the work still comes at a cost (which includes doing things like sending people to work in the other location – either direction – for extended periods of time to help pollinate culture and context). There are other less obvious costs that come from slower cycle times, which delay the delivery of business value and amplify the cost of experimentation. This is one reason why cost savings are rarely realized in offshore outsourced development these days, despite the significantly lower unit costs in some regions.
What To Do?
Know what you’re getting your company into on a software project when comparing US-based companies and overseas companies. The overseas software teams are hardworking people trying to earn a living but they may have shortfalls that impact your project, costing you more time and money in the end. Companies are getting wiser and pulling their overseas work back to the US after huge cost overruns and missed schedules. 20/20 hindsight is definitely clearer – you get what you pay for.
We specialize in building custom solutions crafted around the needs of your business while harnessing the latest and greatest technologies. Our company is fully distributed and operates entirely remotely. Our expert US-based software developers can give your business what it needs to thrive in a dynamic technology climate. Browse what Flint Hills Group can provide for your business.