Categories: Human Resources
My first experience with outsourcing of software development was a miserable failure. Had I stopped there as I was about to I would never have realized all the benefits which can come from outsourcing. Many are only looking at the financial savings and is therefore missing other values like flexibility and access to specialist. In these articles I’ve tried to go through the things chronologically from the idea arises and to the point where things are running smoothly or comes to a natural ending. There are three (3) sections to this series. The first is the preparations which end with a selection of a preferred partner. Then I will go into the contractual area, but not focusing on the legal aspects but rather on business aspects, responsibilities and a few pitfalls to look out for. The last article deals with the issues that arise after the contract is signed and the “real” work is supposed to run smoothly.
First of all you need to be realistic about what can be outsourced. You will hear from any outsourcing provider that everything can be done. They are right, but time and money are also factors for the ones outsourcing.
If it is the first time you are outsourcing a development you should consider a “black box”-approach. That means you have clearly defined input and clearly defined output. This is also what most people remember and something the outsourcing provider loves. You do however need to get a little more specified to achieve full value. There could be specifications on e.g. how long it has to compute from input to output. The purpose is to force some quality into the code inside the black box.
Now you have the task defined well enough you might think you are ready to pass it on to the cheapest provider. I did that to a Ukrainian company and burned my fingers badly. We had not gotten our internal resources prepared for supporting and following up on the progress. That meant we were suddenly standing a few weeks before commercial launch with no idea about the state of the development. Therefore make sure you have a responsible project manager in your organization. It should be someone who is used to external communication and understand all the parts of the contract. An internal communication effort should also be arranged at this point to avoid people “sabotaging” the task as they fear for their job.
I would usually start with somewhere between 10 and 15 companies that list the relevant capabilities. In my company we have a long list of prequalified companies that we pick from when presenting options to clients. If you don’t want to have a specialist involved here there are a few rules of thumb that you should consider. They need to have relevant international experience. They need to be able to show three years of audited accounts with profit (be aware that such documents can be faked). Last of all get in touch with some of their international references and check the quality level of those companies. That exercise should bring you to 2-5 qualified partners.
Final selection should be approached in a somewhat similar fashion as hiring employees. That means you look at the full package of values that the partner brings to the table and optimize on that. Remember price is not the only component in value.
In the next article I will dig into the contract types and the types of business relations that can be set up when outsourcing part of your development.
Read More In: Human Resources
by Claus Bang Olsen of Lilienhoj Consulting.