Building high-performance teams

Top 5 risks of outsourcing and how to mitigate them

Time for reading: 13 min
Share article

Did you know that more than 300,000 US jobs get outsourced each year? And among all sectors, IT is the fastest at moving toward outsourced suppliers. It is a practical element of business strategy that solves capability issues, cuts costs, increases effectiveness, and brings innovations.

Sometimes outsourcing is the only way to access skill sets that aren’t available in-house. However, the devil is in the details. Unless handled carefully, you might encounter some pitfalls and risks of outsourcing.

Here at MindK, we’ve been working as an outsourced IT vendor for more than a decade. During this time we’ve been gathering customer concerns, assessing the possible impact of various risks, and finding the solutions to mitigate those risks. So let’s look at the top 5 things that can go wrong in outsourcing and how to prevent them.MindK development copmany

#1. Go wrong with the vendor

Most outsourcing companies talk of vast expertise and top-notch talent, but is there any credibility to their words? You might fear that the software contractor won’t fulfill your vision. What’s even worse, they might go out of business in the middle of development.

How to avoid:

Make a detailed investigation

Spending more time while selecting a trustworthy software development partner may save you time, money, and nerves in the future. Here’s some tips:

  • Research enough to be aware of IT market resources. Pick at least 5 high-potential IT companies that seem to fit your needs.
  • Compare such criteria as service models, cooperation approaches, portfolios of latest projects, and client feedback.
  • Make sure that the development company has previously worked remotely as an outsourced service provider and have all the processes set for that.
  • Learn about vendor’s technology stack, best practices to make sure that you deal with cutting-edge professionals.
  • Do not hesitate to request CVs of the development team members to make sure you are hiring the best talent.
  • Interview company representatives. You will get a better understanding of how comfortable you are in communication with them, while they should be able to demonstrate their ability to solve your pain points.

At MindK, we usually start with a discovery call where we tell the potential client about our company and the team as well as get to know their project needs. If the requirements are clear, we provide a client with a rough estimate. In cases where the project requirements need a more detailed discussion, we set up an additional meeting.

A rough estimate is based on the client’s brief and is delivered within 2 days of receiving the business requirements. Our rough estimation document, for example, typically consists of five sections: the estimate itself, our assumptions, our suggestions, limitations, and our questions. Sure, a rough estimate alone isn’t enough to draw up a detailed budget but can serve as a roadmap for your project.

Start small

This tip can prevent many risks of outsourcing. To verify whether the IT service provider fits your long-term goals, start with a small project. For example Proof of Concept (PoC) or Minimum Viable Product (MVP). This is an effective approach some of our clients use.

For example, on the project Melody, MindK team firstly built a Proof of Concept – a robust Progressive Web Application (PWA) that performed great on various devices. The client was satisfied with the results of our cooperation and was ready to move forward. He came back and we developed a feature-rich web app together with mobile applications for iOS and Android.

melody

Are you worried about exceeding the budget at the initial stage? Opt for a fixed priсe development model. This model is ideal for establishing trust with a new partner at the initial stage of cooperation and while developing a MVP.

If you need more detailed information on getting started with outsourcing, then check our guide on how to build an outsourced IT department properly.

outsourced IT department

#2. Loss of control over the project

Losing control over the project is the nightmare of each company that decides to outsource software development. Lack of communication with third-party developers or their slow responses can lead to serious issues and, sometimes, to a significant increase in the price of the product development. Therefore, losing control over development is one of the biggest fears among clients.

How to avoid:

Assign a Product Owner for your project

Product Owner (PO) is a term from the Agile software development methodology. It is the person who has a vision of the final product and who conveys this vision to the project team. Oftentimes, PO is introduced by C-level executives who are more than passionate about the final result and know exactly why the product should exist. The more important the project is for the company, the higher the PO’s position in the business.

PO

Source: userstorymap.io

Whether you selected an Agile approach to software development or not, you need a person from your side to control the development. The development partner should have a project manager (PM) from their side. Here at MindK, we have a dedicated project manager for every project we work on. To ensure your project is completed on time and within budget, our PMs possess the world’s most prestigious certificate from Project Management Institute (PMI).

Set up a communication plan from the start

Among the key reasons for the development project control loss is a lack of communication between the parties. This leads to the situation when the client feels like they are losing control over the development. That’s why communication with your business partner should never be underestimated in any way.

You may wonder, why does communication affect development so badly? The answer is quite simple: because communication involves people!  And because it assures that the two parties can work together effectively. PMI states that poor communication is a contributing factor in 56% of the projects that failed.

Reputable companies usually have their own standards, defining the communication channels they use. The most common communication means are emails, instant messengers, phone and video calls. Your remote development team should know the communication options and which work best for you, whether it’s your own Slack channel or maybe you prefer periodic phone calls.

For projects in MindK, we’ve adopted the following approach: before beginning the project we work out and ratify a сommunication plan with our client, identifying the most convenient means of communication for both sides, who is responsible for different tasks and project stages, and how often we need to hold meetings and provide demos. In this way, our clients have a clear understanding of what to expect from us and when, so they can plan their work easily and efficiently.

Build trust with your IT partner

Your remote team is here to share their experience and technical expertise with you, take advantage of it. This is where transparency and trust come first. If you hire high-caliber professionals, they will need some freedom to do things the way they are used to doing them. If you try to control every step, they will be unable to operate at maximum efficiency, which may result in a lower quality product. And if you did make the right choice, your partner will keep you informed of what is happening at every stage of your product development.

Any reputable software development company understands that your product is like your child and they share your desire of raising it into an admirable adult.

#3. Unforeseen expenses

When you engage in outsourcing for the first time, it’s natural to worry about unexpected costs that might arise during the development. Although most expenses are easy to discover before the start of cooperation, some might be hidden from your eyes.

How to avoid:

Set up clear requirements before the start of cooperation

This will help you define the scope of work and reduce the chance of unexpected costs. At MindK we always run requirements gathering sessions with the client and discuss all the possible issues before the work starts.

For years we have been holding a requirements workshop with our customers. It is one of the best requirement gathering techniques to put the process on the right track. More about our approach to the requirements workshop we’ve already covered in the article about the requirements gathering process.

However, sometimes it happens that it’s difficult to clear up the requirements during a session. There are many reasons –  from complicated business processes that require more detailed investigation to the inability of the client to provide a clear-cut product vision. In such a case we propose running a Discovery phase. It allows us to gather requirements deep enough and the client to get the project scope, budget and timeline defined. From our experience, the more detailed the requirements are, the more accurate the estimates are and the higher chances of meeting them.

types of requirments

Source: velvetech.com

Choose the pricing model that fits your project

Before starting the collaboration with a development partner, discuss the engagement model/pricing model for your project.  There are several main options: fixed price, time and materials (T&M), dedicated development team. In our article about the engagement models, we explained the strong and weak points of each of them.

In short, the fixed price model is all about freezing the costs of your project in place long before development starts. That is why it doesn’t suit the projects with changing project requirements.

However, a fixed price approach may be a good fit for a short MVP lasting no longer than one-two months with crystal-clear project scope and requirements, or Proof of Concept (POC) which is intended to determine whether the idea can be turned into reality, as well as to test the idea’s potential.

On the other hand, Time and Materials engagement model suits long-term cooperation between a client with evolving requirements, and trusted development companies. A dedicated team approach, in turn, is the best option for projects with definite goals and flexible requirements. It is ideal for long-term partnerships with the development partner.

pricing model responsibility

At MindK we communicate the engagement model with the client. As far as each of the engagement models has its level of control and responsibility,  we choose the one that best fits the software project.

Sign a Service Level Agreement (SLA)

The Service Level Agreement lists services provided by the web development outsourcing company and their costs. Make sure you’re aware of all the hidden costs like integrations, hosting, on-site visits, working overtime, and buying the necessary plug-ins, hardware, or software.

#4. Low quality of the end product

If you ask a dozen people who failed with outsourcing, most of them would tell a similar story. They all wanted to save money. They all went for the cheapest offer on the market. They all got a team of newbies in the middle of nowhere and a host of communication problems. However, when the end result is an undocumented mess of a code, all the possible cost savings went out of the window and it was a huge surprise for them.

How to avoid:

Do not fall for low price tag

Although a remote software development may save you money, it shouldn’t be the number one reason for considering it. In fact, only hiring a properly selected and experienced company will help you cut costs.  Choose the wrong one and you may end up overpaying. As a rule, companies with higher rates are more productive and efficient, while lower rates may lead you to overpayment and missed deadlines. Productivity matters. Selecting the initial lower price for development may result in a higher final price and poor quality.

Make sure the IT vendor applies high-quality development standards

There can be no compromise when it comes to quality. Make sure that the development partner has Quality Assurance on the project and employs code review. Look at the vendor’s technology stack (for example, frameworks, libraries, testing, and monitoring tools). Ask yourself “Does this vendor only focus on manual UI testing or can provide the full range of QA services including Performance testing, API testing, Test documentation creation, and extensive QA automation?”

Learn whether the contractor uses state-of-art DevOps practices to speed up development and maintain great quality like continuous integration and delivery, containers, source control systems, build automation tools, and much more.

At MindK, Quality Assurance that involves both manual and automated testing is an integral part of every product. At every stage of the development process, our quality assurance team protects the client’s project objectives. The MindK QA approach emphasizes early testing and predictability. By means of automated quality assurance and solid DevOps expertise applied, developers are notified as soon as the automated test fails. It secures our clients from defects seeping into production and ensures a high quality of the end-product.

#5. Information leaks and security

Your confidentiality risks increase when you involve anyone in your business, even if it is a new employee. Outsourcing is no different. Some entrepreneurs or businesses do not want to share confidential data about their software or technology, which is why they are hesitant to hire an outsourced IT vendor.

How to avoid:

Learn whether the IT outsourcing firm has experience of handling confidential data

It’s especially important when you deal with financial, healthcare, and government sectors. Ask about their data protection practices. Sign a Non-Disclosure Agreement (NDA) before the start of cooperation  

It’s a common practice we use as the basic step of our communication with a new client. Such agreements usually set out the terms and conditions under which information is to be kept confidential. The terms usually include any work or discussions related to the product, its future versions or development process.

NDA also covers the consequences of disclosing specified confidential information to a third party. A signed agreement protects the information you disclose during negotiations, meetings or the development process, and it should guarantee that all of your proprietary data will remain confidential.

You might worry that the vendor will use the knowledge of your system to develop a competing product. This risk can be easily mitigated with a Non-Compete clause. For example, we recently signed a contract with a large recruitment agency that prohibits us from developing a similar solution for the DACH region. Such clauses are tough on IT services companies, but can be necessary to protect your interests.

Wrapping up

With enough oversight, you can mitigate most IT outsourcing risks. Following these tips can save you a ton of time and money on remote cooperation.

A small initial investment in the form of a discovery workshop can protect you from a lot of risks of outsourcing. But to get the most out of remote partnership, you’ll have to stay involved in the development process. This simple rule will make your life much easier and ensure the success of your project.

If you have some questions about working with remote teams or need outstanding developers for your next project, don’t hesitate to contact MindK.

Subscribe to MindK Blog

Get our greatest hits delivered to your inbox once a month.
MindK uses the information you provide to us to contact you about our relevant content andservices. You may unsubscribe at any time. For more information, check out our privacy policy.

Read next

Cover image on posts about 2018

It has been a great year in MindK [Highlights of 2018]

Read more
15 key steps to make your software GDPR compliant

15 key steps to make your software GDPR compliant

Read more
Kanban vs Scrum

Kanban vs Scrum: How Do You Decide Which Methodology Is Best for You?

Read more