Learn how to evaluate a potential outsourcing partner and what to consider when making a selection.
Cost-cutting and the inexperienced outsourcing team responsible for the software of Boeing 737 Max led the airline to lose $19 billion. This crisis could have been avoided by answering just one question: what level of technical expertise should an outsource provider possess?
Certainly, there is an imperative for companies to properly assess the skills of outsource partners when people’s safety depends on the product. But even for less vital products, failure to employ competent developers can mean damage to a company’s bottom line.
Digital transformation is what moves the outsourcing market forward. Companies of all sizes improve their responsiveness to the ever-changing digital economy by rethinking legacy IT solutions and breathing new life into existing projects. They are seeking new talent, innovations, improved customer experience, and cost optimization.
Key benefits of hiring an outsourced development team:
- Significantly reduced in-house development costs
- Higher operational efficiency
- Flexible scalability
- Access to developers with domain expertise or highly-specialized skills
STEP 1. Are You Ready?
To begin your outsourcing journey, we recommend answering questions:
- What is the specific need you want to focus on with outsourcing?
- Is your business idea already proven?
- Do you need additional help with non-development resources?
- Is this a one-time project?
- How will you distribute your risk and responsibility?
- How much do you know about the tax treatment of software development costs?
Types of outsourcing models
Regardless of the size of your business and your team goals, choosing the right cooperation model is the first decision you make. If you’re ready to outsource your software development, selecting the right outsourcing model is key.
- Out-staffing. This helps increase team size without providing any in-house infrastructure while remaining in control over the development process. You can fix a price and expect the largest cost-savings here if you have a complex task.
- Product development. Outsourcing product development is a more expensive alternative with a focus on final results. Less management and control, though, may lead to overspending here. To get a custom solution, it’s best to prepare a detailed timeline and scope of work.
- R&D. Innovation outsourcing operates at a higher level, applying cutting-edge knowledge to evaluate the market state, develop a proof of concept, and examine the investment return of potential development projects.
STEP 2. Early Stage Considerations
The first step is carrying out due diligence on your potential outsourcing provider to ensure they have the competencies and integrity to become a reliable partner.
Some key points to consider include:
- Technical experience. Weigh the expertise of the outsource team against that of your own team. Study what types of software the potential provider has developed previously. Ask questions that not only investigate their competencies, but their motivation, as well. If you still have doubts, ask for a trial before signing a contract. At Erbis, we offer our potential clients a paid 3-month probation period to test our proficiency.
- Time zone & proximity. Although there are few economic incentives to gather your team in an office, face-to-face contact improves relationships and that can impact important variables like motivation. Some outsource teams may make business trips to meet with clients in person (we sometimes do this at Erbis). Teleconferencing may be a more cost-friendly solution, in which case you should choose a partner located in a region with a comfortable time difference.
- Culture differences. Cultural aspects can sometimes affect the collaboration and create friction between team members. That’s not to say that working with offshore teams is inadvisable if you make an effort to ensure that both teams are on the same page. Start with introducing your company, its culture, and values. Be clear in wording and be clear on priorities and expectations. We at Erbis possess an immense knowledge of working with different cultures from the US West Coast to South-East Asia, treating all cultures and mentalities respectfully.
- Communication approach. When outsourcing, seamless communication becomes a key factor. Give a potential outsource partner’s communications a test run before signing the agreement. Start an email thread and check: how long did you wait for a response, and did you get answers to all the questions? Did they suggest specific approaches or make only general recommendations? At Erbis, we match our working hours with the timezones of our US-based clients to bring the most value to our cooperation. Still, we recommend writing clear guidelines for communication that contribute to efficiency and mutual understanding.
STEP 3. Team structure
To start shaping your outsource team, write down what business task the team is supposed to solve. Let’s study 3 examples from our practice:
- A project started by someone else
In this case, we recommend resembling the original team structure and skills needed to develop the project further. A balanced team of 3-5 experts (back-end & front-end developers, QA, and design) would be able to pick up any project in a relatively short time.
- A project from scratch
Starting a new project, we go through the discovery phase first to understand all the needs of the customer. After that, we assemble a team of professionals, perfectly matching the unique skills required by that specific project.
- Support and maintenance
Usually, we start small for support and maintenance projects. First we bring on a single full-stack developer, allowing us to scale up while we’re fully operational.
Regardless of the role distribution you end up with, some things can hardly be delegated. No matter how skilled, creative, professional, and competent the outsourced team is, you are the one in charge of your business and aware of the goals best.
STEP 4. Behind the contract
There are some specific red flags in software development agreements that you need to pay special attention to. Understanding the possible tricks behind IT contracts will also give you the last chance to assess the honesty of your partner before the cooperation.
- Jurisdiction. Laws between countries often do not match. Naturally, you want to use your own country’s law as the legal measuring stick, but both sides have to agree on this on paper. If the negotiations are tough, think of using a law foreign to both parties. Thus, it becomes similarly inconvenient for each side to sue the other. British law is used in many international contracts for this purpose.
- Staff availability. The most common type of development agreement is the time-and-materials contract. Due to the high demand for software services, the provider may redistribute some portion of the time of your team members to address new clients, leaving a project without support. To prevent it, do not only specify the team size in the contract, but also note the minimum availability of each member.
- Rights of use. Some developers may leverage open-source tools, components, and libraries when creating software. There are some licenses unsuitable for commercial use and having them incorporated into your software can generate legal issues and costs. To stay safe, you should make your contract forbid the use of open-source software with the copyleft license.
- Documentation. When signing a contract, make sure that the team you hire will be obligated to produce and continuously maintain the documentation of different types. Technical and user documentation should be transferred to you as often as the source code, and project documentation should be accessible for you at every time.
Always be sure that you get a lawyer with IT experience to look over any contracts. The cost of attorney review is far less than the cost of a lawsuit.
Now you have an idea of how to choose a promising outsourcing partner. We wish you to maintain long-term cooperation based on partnership and trust, rather than cost. At Erbis, we strive for these qualities alongside state-of-art software and flexible, reasonable prices. Our practice combines smart solutions, trustworthy staff, and cost-efficiency. Your business will take off with custom Erbis software development.