During my work in the IT sector, I have talked with hundreds of CEOs, CTOs, and Engineering/Development Heads, etc, about their views, fears, and hopes for outsourcing. Their knowledge level and perception of outsourcing have greatly varied, depending on the size of the company they represent (we support both 30-people startups and corporations with 250,000 employees worldwide) and their general experience.
As it turns out, the majority had an outsourcing operation (as it seems fewer and fewer companies are interested in offshoring) or were considering starting one, and still, they all shared the same doubts regarding:
- Which aspects to consider when deciding on an outsourcing partner,
- Remote agile development vs fixed price,
- When to start outsourcing / Reasons to start,
- How to scale,
- How to maintain quality,
- Keeping the knowledge in-house – if it is an issue,
- How to prevent rotation,
- How to manage the costs / how to counter the distance cost,
- What legal aspects to consider,
- If it is time to change a Partner / how to do this with minimal cost.
Today, I want to tackle the first point on a more general level.
Which aspects to consider when choosing the right outsourcing partner
- Timing – be ready or become ready to start an outsourcing software development operation.
- If you are starting by augmenting your existing workforce with additional developers, make sure your team leaders know how to manage remote resources. Make sure they will actually have time (!!) to get them up to speed (very often after we start cooperation we wait for 2 – 4 weeks until all types of access are given, and only then can we start the actual work)
- If you are starting by building a dedicated team, the best idea is to have a single point of contact on your side (usually the Product Owner).
- Be as specific with the task requirements as possible. If you have been making decisions and learning everything on the go until now – do make time to plan ahead, both in general long-term plans and with specific short-term plans. Leave as little as possible to chance.
- Decide on a well-established company with a proven track record and established business processes. It’s really self-explanatory, but if a company has been on the market for a long time and can show you client references, then they are definitely doing something right.
- Look for a company with long–term experience within your technology. Avoid companies that can help you with all possible technologies and tools – the more they are spread out the less competence they have within specific fields. Make sure the vendor does have existing experience in your technologies, and can actually share it with you.
- RFP – skip it. RFP processes are long and tiresome. Moreover, the paper accepts everything so it is easy for companies to manipulate. Do use RFI to get familiar with selected companies but always go for face-2-face meetings or at least video conferences before making the decision.
- Learn from the meetings/conferences with the suppliers, to get to understand the competitive edge each one represents. There will be similarities, but there will also be differences – although the presentations can have a similar setup, during the meetings various companies will stress various aspects of cooperation, this is how you can differentiate them.
- Look for the same mindset! Look at the values the company is driven by, how well you communicate with them, and what their core business model is. Are the people you are talking with during negotiations the same people that you will actually work with? Are they the actual decision-makers for the company?
- Ask the vendor to go through an actual project they have carried out. Discuss both the business layer as much as the technical side, and on this example review their best practices (additional case studies are always welcome).
- Ask the vendor what their rotation is and what steps they take to keep it to a minimum. Even if you are not looking for a permanent engagement at this moment, you do want to have the option to prolong cooperation with the same developers in the future.
- Ask the supplier how the developers will be chosen for you, about their interview process and how you can be a part of this. When starting cooperation, you will want to organize a video conference between the candidates from the vendor and your Product Owners / Architects. This will allow your employees to feel more responsible for the remote Team, and help with their communication.
- Price – do not hope to get the same quality for the same price even when looking at different countries. The IT sector is highly competitive, and good developers are not easy to find. Companies that hire the best also have higher rates – recognize the fact that IT wages are often disconnected from the actual cost of living in their countries and the major aspect of the price is the experience and the quality of the developer. When discussing the price – ask about hidden costs – you want to have a full picture here, you do want cost reduction, don’t you? ( example: what licenses are included, and which are paid extra?)
- If possible, do find time to have an onsite visit to view the company operations. If initially, it might be difficult when talking to a few vendors, then plan such a trip with the partner of your choice during the Proof of Concept phase (usually the first 3-6 months of cooperation).
- Think of security and safety – if possible, stick to EU countries (being in the same time zone also helps). Check how the service provider treats security – you can start by reviewing the framework agreement (responsibility and intellectual property aspects), but an onsite visit will go a long way in this regard. Ask about the network and data security policies.
- Labour pool – estimate if/how fast the supplier can grow with you in the coming years. Check the situation on the local market when it comes to developers.
- Make a time-frame for your selection process and stick to it. Be fair to yourself and to your possible partners, prolonging the process means you are not really convinced about starting outsourcing – if that is the case, be open about it.
All in all, selecting the right vendor for you is not an easy task, at the same time, starting the cooperation is not difficult either. It is important to be committed to the first step and conducting the Proof of Concept.
Author: Martin Konieczny, Business Development Manager @j-labs
If there are any other specific topics connected to outsourcing you are interested in, please contact me – firstname.lastname@example.org.