19 November, 2020
Outsourcing software development becomes a must for some companies. The reasons can vary, from local war for talent due to software engineers shortage to killer deadlines imposed by shareholders or ever-changing business environment. No matter if you understandably fear the unknown risks of outsourcing because you haven’t done this before, or you have already outsourced with unsatisfactory results and you promised yourself “never again” – we’re here to give you some advice on how to properly approach software development outsourcing and how to choose only those software development companies that will fit your business profile.
The state of software development outsourcing around the world
According to Techanvio research, the outsourcing market size will grow by $98 billion during 2020-2024.
Another study by the National Outsourcing Association states that over 70% of companies plan to increase their use of outsourcing, with 35% of businesses planning to do so significantly. In the same report, NOA asked the respondents for primary reasons why they decided on software project outsourcing. The top answers were:
- 35% – cost saving,
- 23% – improving the user experience,
- 17% – transitioning from legacy solutions to “as-a-service” models.
That’s for the good news. Realistically and statistically speaking, it’s impossible that all outsourced software development projects have a happy ending. Back in 2000, Dun & Bradstreet released “Barometer of Global Outsourcing” that reported 20 – 25% of all outsourcing relationships would fail within two years.
20+ years later those numbers are probably lower due to widespread outsourcing services and more information online. However, it doesn’t change the fact that some companies are still terrified to outsource software development and the prospect of trusting their precious apps to some strangers from a third party software development company.
Why do companies decide to outsource software development projects?
Whether it’s access to otherwise unavailable software development team with specific tech skills, speeding up the development process and time to market, delivering high-quality software from scratch or acquiring a permanent business/outsourcing partner – outsourcing software projects can help plenty.
In this article, we aren’t focusing on the advantages of software outsourcing. However, if you’re interested in outsourcing benefits, we’ve got some resources on our blog that you can check out:
- IT outsourcing services in 2020: Five real-life scenarios for you and your company
- 5 software development outsourcing scenarios for CTOs
Why do companies hesitate to outsource software projects?
I needed some experts on the subject, so I talked to:
Marek Gajda (CTO of The Software House)
Gerbert Oude Velthuis (CTO of Travelia and General Manager for TSH NL)
Every day they talk to organizations from around the globe and dispel their doubts about software product development and outsourcing services. I was curious about what real-life concerns and threats they associate with outsourcing.
Some fears are old misconceptions debunked by the software development community ages ago. Some are legit reasons that can’t just be shrugged off. Let’s see what the main reasons for this outsourcing phobia are.
The outsourcing company will promise something, then won’t deliver
Marek Gajda: At the sales stage, companies often put the most senior and impressive people upfront. You fall in love with them, and then when it is time to work, the software development team changes completely. You got people with less experience and knowledge, and nobody cares. You’re left with no support from the software company and you have to deal with developers on your own. Eventually, the team becomes unreliable – it doesn’t deliver what it has committed to on time or in good quality and no one wants to take responsibility for project failure. All you hear is excuses.
This situation can be easily prevented by demanding to meet your development team beforehand, and getting assurance that the same people are going to work with your project.
Of course, random situations like sickness can occur, and some team members will have to be swapped but you can always ask for the qualifications of replacement software developers. I’ve already described this topic in more detail in the article below. Even if you’re not a technical person, there are ways to do some background checks on the company you’re about to hire.
The language barrier will kill my software project
Gerbert Oude Velthuis: Let’s be real – English is the language of technologies. If a company wants to be recognised on the international level, their development teams must speak English on a proficient level.
It’s true that sometimes it can be a bit difficult to understand each other if English is not your native language.
In general, software developers are very used to English (most of the programming languages, tools and frameworks are in English).
Picking a company that has proactive language training programs helps. You can always ask about that during the first business call. It’s also worth talking to the software developers about ordinary things. You’ll kill two birds with one stone – check their language skills and see if you “click” as a team. If you want to be sure about the general language skills in the country you’re about to outsource to, you can check the EF English Proficiency Index.
The software outsourcing company will be far away and that will make communication impossible
Some outsourcing companies treat their clients like a fragile egg – always leaning towards customer’s ideas because “the customer is never wrong”.
That attitude introduces distance and makes the software team reluctant to talk about problems in the project (if anybody tells you there won’t be any troubles, they they probably don’t know what they are talking about), and the word “no” disappears from their vocabulary even if the customer is obviously in the wrong.
I’ve personally heard about this extreme example where the software outsourcing firm just stopped talking to the client altogether. There was a massive (yet fixable) fail in the project but the development team went silent, didn’t answer the phone and simply abandoned the project. The client was left with a half-baked app and no possibility to go to world’s end to ask what happened. It’s hard not to be prejudiced against outsourcing software project after something like that.
Appropriate communication is the key. You can read more about remote management in software outsourcing here. Also, make sure to check with your chosen company if they have their communication processes in order and what tools they use. You’ll see from the very beginning if you’re dealing with pros who’ve done that hundred times before or “spontaneous” amateurs with no plan in place.
I’ll have no time to control a remote application development
Gerbert Oude Velthuis: Two things I always hear in this case are: “when a dedicated team is in the office full-time, changes are done quickly and easily” and “project management with a remote outsourcing team takes up more time than local application development”.
I agree that sometimes it’s good to have flexibility guaranteed by the common office. But too much flexibility negatively influences efficiency and progress. It’s good procedures that are important. If your in-house processes aren’t worked out properly, it won’t be easier, nor quicker to control somebody that sits next to you. With the right processes and communication channels (like daily calls and Slack updates) you won’t notice the difference.
The current pandemic situation cannot be ignored here either.
With software developers working from home these days there’s no difference in management between your “local” team and a remote team.
The difference is that software development companies that outsource their services had all procedures in place even before Covid-19 hit. Organisations that relied on in-house work had to develop a new way of working at record speed (sometimes with questionable effects).
The predictions say that it will partially stay this way even after the pandemic. So eventually every business will have to adjust to these changes.
To outsource software project is so expensive that I’ll need to rob a bank
Marek Gajda: almost in every case of a reluctant customer, I get asked about the money. And rightfully so – nobody wants their business to go bankrupt because they decided to outsource software development.
If you had a bad experience with custom software development I bet it went something like this – the outsourcing company was very “optimistic” when estimating the project at the sales stage. Then it started development and made you more and more dependent on itself. When you realise that the project is too far gone to withdraw, the estimates magically increase and the new budget puts you against the wall. No other way but to pay up.
There are many, many ways in Agile methodology to control the real amount of time that developers spend on the project, and check if they are really using their working time effectively. In The Software House, we call it regular updates with the customer and transparent tasks in Jira.
Remember that choosing a tech company that proposes the lowest rates for your software outsourcing projects, won’t always save you money in the end. More experienced companies simply present more reliable estimates and transparent value for money.
If it’s not from my country, it can’t be good
Gerbert Oude Velthuis: Research shows that countries like China, Russia, and Poland have the best developers and top software solutions in the world. This has its roots in the education system that puts a lot of emphasis on Maths and foreign languages – that is eventually very important for developers.
The bottom line is – sometimes you just need to trust people.
You’ve talked to the company and their developers, checked credentials, case studies, the Clutch profile, testimonials and everything looks. With trust comes the control you need.
Should you put your software projects for outsourcing?
You’re not alone in your doubts about outsourcing custom software development. Below you’ll find the video from our very first CTO Roundtable with Dimitrios Psarrou (CTO at Endouble), Sietse van der Laan (Tech Team Manager at Tiqets) and Matthijs Ooms (CTO at Splitser). Their businesses experienced the same problems you’re probably facing right now.
Outsourcing software development services has its pros and cons but don’t let your past bad experiences and unjustified fears prevent you from digital transformation, improving your software or simply growing your entire business. Software outsourcing can help, you just need to find the right fit.
We’re not gonna lie – not every customer that knocks on our doors starts a business with us. Sometimes is not the right fit when the tech stack is concerned. Sometimes it is a different vision of quality software. Sometimes we just don’t get along as people. And it’s all okay – they probably successfully put their software development projects for outsourcing elsewhere and we made some other business happy.
We’ve already helped hundreds international businesses to boost their technological game. Check, if we’re the right partner for you. The first consultation is always free of charge! You don’t need to decide on anything straight away.