In this article we want to explain how cooperation with an outsourcing partner can look like. There are various standard models.
To explain the usual forms of cooperation, we often use the analogy of the "White Box" vs. “Black Box”. We can look inside the white box, whereas with the black box we only see the outer shell.
This is often the classic Contract for work and services. The client describes the final product and the contractor quotes a price, a "delivery date" and delivers the product. This is what it looks like in the software industry:
- Creation of specification, which can be very long.
- Fixed price is agreed.
- The outsourcing partner informs about the status/progress of the project.
- However, it is common practice that requirements are often changed, and the price is adjusted accordingly: both the client and the contractor discover in the middle of the project that the specification is incomplete. However, certain gaps have a massive impact on the price. Therefore, it is not necessarily a good idea to choose the cheapest provider when comparing prices between suppliers, as the cheapest provider may have overlooked these gaps to a far greater extent than the more expensive one. Providers often make different assumptions based on the specification.
- The client has no insight into who is working on the software and whether the software is being worked on efficiently.
- From our experience in the software industry, at least 30% of these projects go wrong because either budget, quality or deadlines are not met.
A White Box solution, on the other hand, looks like this:
- The outsourcing partner introduces the client to suitable specialists, from which the client can choose.
- The tasks are given to the team members by the client.
- The client defines the methods and processes to be used (Kanban, Scrum, ...)
- The client is in close contact with the team and leads it.
- Because the client is close to the process and the team, he can adapt the requirements to reach the goal faster. He gets quick feedback from the team.
- No fixed price is agreed upon, but an hourly rate per employee.
The advantage of the white-box solution is that costs can be saved and a more flexible product development takes place. Since there are no rigid specifications, the product is developed incrementally from the prototype to the final version.
Such cooperation can be short-term, with freelancers via platforms such as:
- 99 Designs
For longer-term and larger projects, however, it is advantageous to choose one of the following solutions:
- A in-house team at an outsourcing provider, where the team members work exclusively and 100% for the client. The team is put together specifically for the client.
- Establish an own subsidiary. However, this requires knowledge of the labour market, language, culture, wage levels, labour law, company law etc. It is often quicker to reach your goal if you use the existing knowledge of an outsourcing provider who already has office space and many years of experience in the local market in the target country.
- It is definitely worth considering to negotiate a "buy-out clause" with the outsourcing partner: a fee per each IT consultant is agreed. This is particularly interesting for start-ups that want to show more personnel on their own payroll compared to their own investors. In our experience, such considerations make sense once a certain team size has been reached.
We have talked a lot about the White Box solution and its advantages. However, we must point out a very important moment: you can only enjoy the benefits of this solution if you have the necessary experience in managing teams at a distance and if the software development process in your own company is designed accordingly. Without this prerequisite, the White Box solution is doomed to failure. Therefore, it is important to investigate whether you are "nearshore ready". Accordingly, we have created our own contribution for Nearshore-Readiness