Feb 21

Why do it? To save money? To increase capability? To buy skills you don’t have? To be able to “FLEX”? Over a series of posts, I will describe my experiences with software development outsourcing and try to answer some of these, and other questions.

Offshore development to save money?

I don’t want to get into penny pinching here, but in my opinion, that’s all you’re likely to save. On a time and materials basis, the costs for offshore development are alluring to say the least, coming in somewhere between £80 to £150 per day for labour plus the standard prices for software tools etc. However, rarely can this cheap labour be effective from day one, there is always a learning curve that needs to be overcome. Even the most adept C++ developer will find it challenging to sit with the perfect design specification and just get coding, with no background. So there is a toll to pay to get the offshore team up to speed.

In my experience the best way to pay this toll is to bring the developers in question to the UK to work alongside the “core team” and pick up the skills they need, ask the questions they need to ask and soak up the environment they are going to be coding in. Obviously this comes at a premium, anywhere from £300 to £500 per day. Interestingly this outweighs the average permanent staff member and even some low to mid-range UK based contractors. Depending on the complexity of the software they are going to be developing, this could be an expensive investment. So the trick is to make it worthwhile, enabling them to return home and on to the cheap rates with as much as they can effectively support.

Another approach is to send your key staff out to them. This can be a cost effective way, but not all developers are keen travelers or born trainers. Pick them well and if you do have such people, use them. But are a few weeks overseas on expenses enough to swing it, more like a few months…

Once the initial investment has been made and the team are working offshore, there will be some efficiencies to be had if they are required over a reasonable period of time. But, to keep these savings real, cross-project developers are needed, and these need re-runs (although perhaps shorter) of the previous steps to get them up to speed on Product 2, 3 and 4. One risk also, as with any team, is staff turnover. When these people leave they usually do so pretty quickly, depending on your contract. They leave a hole, both from a capability and investment point of view. There is no loyalty to you here, these people DO walk.

Then there is the question of quality. In my experience, with only a few exceptions, the quality of code developed offshore has been good. However, this requires vigilance and extra time from your key, local staff to review, comment and guide the offshore team. Language and cultural barriers can (generally do) come to bear and burn more local time than you would expect. It is advised to have your coding standards ready and validated and make sure code is reviewed regularly to check for compliance and clarity.

Finally, don’t underestimate the impact on your local team. Worry about morale, people will think their jobs are at risk, this needs management and clear statements of intent. Worry about indifference, if the offshore team don’t get the answers they need, they’ll be spinning their thumbs in no time. With engaged, supportive local team members, worry about the burden from their guidance of the offshore team, the language barriers etc.

So there is opportunity to save money, if your outsourcing strategy is clear and well planned. To jump in, with the low price tag as a lure, will doubtlessly leave you wanting to know where all the savings went by the end of your project.

[Post to Twitter] Tweet This Post 

One Response to “Outsourcing software development.”

  1. Paul Jackson Says:

    http://pjstreamreader.blogspot.com/2007/02/outsourcing.html

Leave a Reply

Tweet This Post links powered by Tweet This v1.3.2, a WordPress plugin for Twitter.