When you are looking for the way how to cut costs for your software development project but still keep its quality, most likely you will think of offshore outsourcing. You will quickly find all the advantages of such a model. But less frequently one can talk about some risks accompanying this initiative.
Let’s see what risks a customer can face when it comes to offshore software development outsourcing and how to manage those risks. But first of all we need to point out that there is no business without risks and in most cases we talk about reducing risks but not about completely avoiding them.
The very first question arises when you look for outsourcing is “who do I hire”. And when you start searching you see a good bunch of outsourcing companies providing their services. But first you should probably pay closer attention not to what they say about themselves but to what others say about their work. Look what clients they have already worked with, contact them and ask for the opinion. You may probably want to start with a small project as a touchstone. But don’t forget that software developers also see you for the first time and have their own set of risks. Make sure you both understand your goals and objectives. Try to be as clear as possible about what your project is and listen to their assessment and evaluation. You may consult with a third-party to make sure your outsource developers know what are talking about.
From the first contact you will have an idea if developers understand you correctly at least on conversational level. Make sure that you both understand that you will communicate a lot since this you both want the project to be a success. The more you communicate the more exact result you receive. Discuss various methods of communications: email, phone, chat, video conference. Work out a communication schedule (especially useful if you are in different time zones). Discuss the way of keeping track of development progress so you could carry out your independent control.
You should always know your project manager to refer with any question or explanation. But don’t mind to directly communicate with developers. This will give them the feeling that the project is under control. At the same time this will give you a better idea about how it is going on and train yourself to make clear queries and instructions.
This risk may be combined from risks of competence and communication. If you reduce those risks performance risk will automatically be minimized. But anyways we need to highlight this once again: in many cases performance risk or a risk of project failure or delay is a bilateral fault. To reduce such a risk you need to negotiate with your vendor the project development schedule, deadlines, progress updates, development process methodology. Do it on the very first stage when discussing the project!
And never sacrifice the quality of the project in the name of an early completion. Set reasonable dates.
Knowledge/data transfer risks
If you posses a security sensitive data or knowledge first of all make sure you do not share unreasonable amount of it. Make available to your developers only minimum necessary information. Always exchange confidential information directly with your outsourcing partner.
Before the onset of the project discuss the question of confidential information transfer and storage. A separate non-disclosure agreement or inbuilt contract clause will be a good way to protect your commercial secrets, unique knowledge or brand-new product information.
Don’t hesitate to make copies of all files, spreadsheets, documents, source code which is involved in the development process. It is wise to be safe in case of an occasional data loss.
Also make sure that you own copyright of the product or a piece of software. Just note in the contract that all legal titles of all works is transferred to you after the project is finished, paid or any other occasion.
One of the main reasons for a customer to refer to offshore outsourcing is cost advantages. And the main disappointment occurs when the final calculation brings a different than expected cost. To avoid such a situation you need to ensure that your partner development company offers a transparent costs calculation and doesn’t imply any hidden amounts. Set a clear calculation and payment scheme which could insure your both interests. It would be probably wise to agree of the final payment only upon the project completion or product delivery.
Be aware that in most cases you do not provide the final fixed cost in your outsourcing contract. You can only negotiate a method of calculation and total cost assumption.
We came across the most common risks which usually occur in case of offshore outsourcing of software development. Yet there could be many risks which were not mentioned since many of them have an individual character and can be described only on a case by case basis.
Like it was already said before both parties bare the risks. A development service provider as well as a client run their own businesses and are interested in the most favorable outcome. That’s why success of a project is a shared responsibility of customer and contractor. To minimize most risks they need to negotiate them and find the solution on how to reduce them.
Don’t put the risk factor on the scales when it comes to decide if you want to outsource. Every business project can be evaluated not by the number of risks it has but by the risk management methods implemented by the parties involved.
Your offshore outsourcing project will never fail if you implement a proper control, comprehensive coordination and close cooperation with your partner. You are in the same boat and both of you are interested in a productive business experience with a long-term perspective.