The Pains of IT Outsourcing and How to Prevent Them in Three Steps
Delegating IT services to third parties looks like a panacea for many businesses. Ideally, this reduces labor costs, gives access to a wider pool of talent, and improves productivity. In reality, things don’t always go that smoothly. Along with the promise of rewards, outsourcing from top IT companies also involves certain risks that can turn a healthy idea into pain and suffering.
“I was constantly nervous about the 6-hour time difference between us.”
“I’ve had to spend a lot of time and money redoing and undoing things because of a lack of communication.”
“I paid them, but they never finished the job.”
“About 95% of outsourced developers are not going to be a good fit for most companies.”
These are just a few complaints about the failures of remote teams we’ve heard from our partners. Does this mean that outsourcing IT projects is a bad idea? Certainly not. For many startups and small businesses with limited resources, delegating tech tasks to external teams remains the only realistic and cost-effective way to grow.
While it’s impossible to eliminate all the risks associated with outsourcing, you can successfully anticipate and mitigate most of them. Simply put — prevention is better than cure. Here are some common pain points and ways to address them.
Lack of Trust
Many people find it hard to trust somebody without eye contact. “I need to look them in the face before striking a deal.” — That’s how entrepreneurs often explain their fears regarding outsourcing. The reality is that by 2020 over 50% of skilled workers will be a part of remote or hybrid (remote/office) teams. One way or another, business owners should learn to build trust with off-site employees using methods other than eye contact.
Developing trust takes time, yet you can alleviate some major concerns at the vendor selection phase.
Step 1 — do thorough research
To identify the right candidates, you should have access to verified information about them. Seek advice and help from people you know personally. Check with other business owners who have already used remote services. Visit popular review platforms like GoodFirms, which publishes exhaustive client feedback about different service providers.
When you have narrowed down your choice to a few vendors, ask them for case studies and references. Contact their clients to obtain first-hand objective information about your potential contractor.
Step 2 — check if the communication is good enough
Smooth communication is key to trust, so slow response time and one-word answers should raise a huge red flag. To succeed, you need a proactive team capable of understanding your ideas and offering better solutions. Poor communication makes this impossible.
To know people better, take time to interview them properly. Feel free to ask any questions you have, especially technical ones. Prompt and clear feedback via e-mail, messengers, phone or other channels increases your chances of developing an effective relationship.
Step 3 — consider a business trip
A picture is worth a thousand words. We can’t deny this. Phone calls, social media or even video sessions can’t entirely replace face-to-face communication. If it’s possible, visit your team or meet with their representative (team lead/sales manager/business owner) in person. It will give you a better understanding of further prospects.
Loss of Control
Even the most trustworthy team needs proper management and supervision to perform tasks on time. Here we face the next challenge: how do you keep track of remote employees? Being in different time zones when you only have a couple of business hours overlapping makes the problem even harder to solve.
Loss of control results in the so-called ‘4x Rule’ — it reflects the fact that an outsourced project takes four times longer to complete than your initial estimate. Fortunately, there are proven ways to minimize this risk.
Step 1 — appoint a project manager
Some entrepreneurs prefer to control their remote team themselves. In our opinion, appointing an onsite project manager is a far more effective solution.
An experienced PM knows your hires well and can monitor their work during local business hours. How else do onsite PMs contribute to your project success? Among other things, they:
- develop schedules.
- track deliverables.
- take your ideas and turn them into detailed plans.
- document and regularly update all processes within the workflow.
- give you reporting at the agreed times.
Note that good service providers are very flexible in terms of working hours. Their PMs adapt to time differences and to national traditions. For example, if the client is from Israel, with a Friday-Saturday weekend, the PM will take that into account and be available on Sunday.
Step 2 — choose the right project tracking software
Modern project management tools make all activities from the vendor side more transparent than ever before. Such apps as JIRA, Mingle or Assembla (to name just a few) allow you to see what has been already completed and what is still in progress, along with the due date/time for each task.
Step 3 — hold regular meetings
Though your project manager is supposed to keep you in the loop, you can also schedule regular online meetings with your team. These weekly or monthly sessions enable you to review goals, identify and fix possible workflow bottlenecks, and create mutual understanding.
Even skilled teams with the best recommendations sometimes fail to deliver software products of the expected quality. To get the best results, you should clearly define your quality standards and take steps to guarantee their implementation.
Step 1 — beware of extremely low rates
The cheapest is usually the worst, so when you select the lowest cost you compromise the quality of your future product. Use the average software development rates across the region as a reference point. Roughly, the hourly price range is as follows:
Eastern Europe — $25-$50
Asia — $18-$40
Latin America — $30-$50
Africa — $20-$40
Bear in mind that services of experienced software developers are comparatively expensive everywhere.
Step 2 — ask for a free trial or start with an MVP
Many custom software development companies agree to provide a free trial in order to prove the code quality and their ability to fit the time frame.
Another option is to start with a minimum viable product (MVP) to test your business idea. Building an MVP takes 2-4 weeks. During this period, you’ll figure out whether the team meets your requirements — how they make updates, communicate, solve timezone issues and, of course, if their expertise and skills are good enough.
Step 3 — include quality requirements in the contract
Specify your requirements for quality in the agreement. The contract should contain code quality standards, criteria the final product must meet, its maximum throughput capacity, list of devices that the app is supposed to run on, etc.
Sometimes, apps work properly at first but start malfunctioning in a week or two when the vendor is no longer responsible for it. To avoid such issues, negotiate a warranty period during which the development team agrees to fix all the bugs you find for no extra cost.
Outsourcing leads to costs you may have never thought about. For example, at some stage, you may need help from a contract lawyer or business analyst. Take into account expenditures on business trips mentioned above. However, in our experience, the major extra costs in outsourcing are caused by two factors:
- Not all the client’s requirements have been clarified.
- The client wants to add features or make changes that are beyond the initial scope of the project.
On this basis, we recommend that you consider the next steps:
Step 1 — define your expectations as clear as possible
When we talk about complex and non-standard software projects, it’s impossible to take into account every detail and foresee every possible challenge. Over the course of app development, requirements are often modified, refined or added to. However, the more clearly you explain (and document) your requirements at the outset of the project, the more accurate the cost estimate will be.
Step 2 — be ready to pay for the expansion of scope
Minor changes that emerge during app building can be implemented without using extra resources. Yet, if your project grows or you suddenly decide to implement new features, you should prepare a change request. Based on these alterations, the project schedule, scope and budget will be reviewed and changed.
Step 3 — avoid complicated documents
It’s true that contracts and change requests should be as detailed as possible. At the same time, the agreement should be easy to understand. Tricky wording and complicated legal terms, as well as small print, may disguise hidden costs. In all cases, carefully read every line before signing.
Intellectual Property Concerns
When you send sensitive information to a remote team, there’s always the danger of leakage. Also, you may feel nervous about your newly developed app. What if the vendor uses this software or a part of it as their own or for the next client? To avoid this, you should take legal measure to protect your intellectual property (IP).
Step 1 — sign non-disclosure agreement (NDA)
An NDA is a basic way to protect your IP when you start working with a new distributed team. The document defines what is considered confidential information that needs extra privacy. It can cover trade secrets, know-how, ideas, designs, client lists, and other data that you need to send to your vendor for assessment and further development of the project. By signing the document, your service provider agrees not to misuse or share sensitive data without permission from the client. In case of violations, the agreement provides for penalties and legal prosecution.
Step 2 — protect your final app in the main contract
The main contract should contain a clause stating that intellectual property of the final app and everything related to it (source code, algorithms, etc.) is transferred to your company. Once you have paid the bill, the software product belongs to you.
Step 3 — think of your service provider as a partner
You can solve security issues far more efficiently by developing a long-lasting partnership with a reliable service provider. As your relationship matures and you start treating each other as business partners, the odds of cheating and theft get lower. Instead, mutual trust enables you to double safety and security efforts.
Most risks mentioned in this article emerge when you delegate a software project to a remote team for the first time. You perceive them as total strangers, and not without good reason. However, as the old saying goes: “Time heals all wounds.” Finding a service provider that fits your expectations, negotiating all the terms, creating a well-structured workflow— all these processes take time. The more diligent you are at the initial stage, the more aches you’ll prevent. Taking the long view, you should also invest time in developing a partnership with your vendor. A lasting business relationship based on transparency and trust is a universal cure for many worries, fears, and pains.
In this podcast discussion, the GoodFirms team talked about the various facets of artificial intelligence with Vadim Peskov, the CEO and Co-Founder of Diffco. continue reading