Lessons of Failure
Humans + Software Development = Always Interesting



The Outsourcing Low Cost Lie

If you walked into a store and asked to have someone make you a suit and you agreed on a price of $100 and week’s sewing time, a week later you’d expect to walk back in and be trying on your new suit after parting with a $100 bill (at least in America).

What if you went into a different store, after that initial price quote and they offered to make it for $25?  You’d think, “Great!  One fourth the cost of that previous guy!  I’ll take it instead.”

How would you feel if a week later you came back and they said it would be another week and $50 instead?  Think you’d be mad?

How much madder would you be after TWO weeks, and now the shop owner is telling your it will be $75 and one more week, but this time he’d definitely get it done.  And after you get it, you notice that the pocket is sewed on slightly funny and the trousers don’t fit quite the way you’d expect.  Would you be steaming mad now?

Yeah, I would too.

This is exactly what happens with outsourcing projects in most software companies.  If you ask companies why they do it, invariably they answer that outsourcing will save money AND time over local resources.  That’s an unbelievably huge lie. It’s time to tear that apart.

Forgetting the cultural problems you’re going to encounter with outsourcing for a minute, let’s say you have a project scoped by an outsourcing firm.  They bill their engineers to you at $25/hour.  Local contractors run you $100/hour, so you’re thinking to yourself, “Wow, 75% cost savings!  Sign this outsource guy up!”

Whoa, not so fast there, cowboy.  Let’s throw out some project statistics from the Aberdeen Group.  Unsurprisingly, reducing IT costs is the primary driver behind outsourcing for 82% of companies in the U.S.  But, as Aberdeen continues,

  • Nearly 50% of outsourced projects fail outright, or fail to meet expectations
  • 76% of companies said that vendor management effort and costs were much higher than expected
  • 30% reported ongoing issues with outsourcer management processes (e.g., inadequate governance and conflict resolution procedures)
  • 51% reported that outsourcer was not performing to expectations

In the end, the average cost savings for projects was a mere 26%.

That might sound like a reasonable number, but consider that first point more closely:  Nearly 50% of all outsourced projects fail outright or fail to meet expectations in the first place. Essentially, you’re taking the same gamble as red vs. black in Roulette about your project’s success right off the bat, and only then if you pass that hurdle, you’ll get on average, 25% savings over having it done locally.

So wait a second, where did my 75% cost savings disappear to? Let’s do the math:

Original project cost (outsourcer estimate): $10,000. (400 engineer-hours @ $25/hour)

Actual project costs: $30,000 (50% overrun on time and 100% overrun on people–longer than expected, 2x as many engineers as originally scoped, which is another finding of Aberdeen’s and other companies’ experience, so 1,200 engineer-hours @ $25/hour)

Unexpected onshore management costs: $6,000 (about 20% of project cost, from spending more time managing expectations, requirements, design reviews, documentation, etc)

Total actual project cost: ($30,000 + $6,000) =  $36,000.

Estimated project cost, if done locally: $40,000 (400 hours @ $100/hour)

Expected cost savings: $30,000

Actual cost savings: $4,000  (($40,000-$36,000)/$36,000) = 11% (for the clients I’ve worked with)

These numbers have been vetted by two recent clients of mine (due to NDA restrictions, I can’t mention either by name but one is a large entertainment conglomerate based in NYC, the other is a worldwide financial clearinghouse firm).  Both have substantial amounts of outsourced projects and both report little actual cost savings shown by front-line managers, huge management issues, and non-trivial project failure rates.  And yet, both continue to outsource because upper management believes they’re saving a lot of money through outsourcing.

Think about this for a minute: If you have 4 projects you outsource (let’s assume they are all the same:  400 hours each, and we’re using an outsource firm at $25/hour), their estimated cost of $10,000 each, and their actual cost $36,000, here’s what you get:   Your budget was for $160,000 and you believed you’d have $120,000 to spend on other projects (foolishly).  Here’s the harsh reality:

  • 2 of your 4 projects have high probability of completely failing (let’s assume that they didn’t expend the same cost above, but perhaps only half before they got canceled, so say you got halfway through each and canceled them, burning $36,000 total between them)
  • Of the remaining two, you get what you asked for but at a cost of $72,000 instead of the promised $20,000.
  • Total budget spent:  $108,000.  Expected budget spend:  $40,000.  (Difference:  +270% over expected costs)
  • Actual remaining budget for other costs:  $52,000.  Expected remaining budget:  $120,000.  (Difference:  -43% less than expected available funds)

Assuming you budgeted all your expected remaining project cash on other things, congratulations, you’re now over budget!  Welcome to every CTO and CIO’s nightmare.  And none of this addresses the other problems:  communication lags of several days to answer questions, lack of face-to-face interaction to solve problems quickly, miscommunication over simple requirements that you consider obvious but were missed in the implementation, and so on.  Are you really saving money here?

Let’s call a spade a spade:  Outsourcing just doesn’t save you the kind of money you think it will.

UPDATE:  Thanks for all the comments about my crappy math.  Yes, it’s fixed now.

Be Sociable, Share!

· ·


  • Andr · June 9, 2010 at 10:50 am

    First search on google brings:

    68% of all IT projects fail. 50% of all outsourced projects fail. Somehow the comparison seems in favour of outsourcing.

  • Adrian Scott · June 9, 2010 at 10:58 am

    You may want to double-check your math in calculating this percentage: $4,000 (($40,000-$36,000)/$36,000) = 25%

    hope this helps, nice post.

  • Daniel Lyons · June 9, 2010 at 10:59 am

    Without being too pedantic or trying to undermine your point, which I think is valid, there’s an error in the reasoning behind your $4000/25% math. You’re comparing an _estimate_ of what it would have cost on-shore to what it _did_ cost off-shore. This is bad science.

    Bad specs are bad specs. Estimating software development time is known to be very hard and very few firms do it well. This is part of the premise of _The Mythical Man Month_. I’d be surprised if the local costs matched the estimate much more closely.

    I think your conclusion is sound because of the management nightmares but you can hardly blame the off-shore firm for making a bad estimate. Nobody makes good estimates in this industry.

  • Anon · June 9, 2010 at 11:07 am

    A problem with your argument is that you’re assuming the locally developed project meets the original cost estimate. This is almost certainly not going to be the case.

    You will also see similar cases of outright failures with local projects too.

  • John Stracke · June 9, 2010 at 11:14 am

    (a) What’s the failure rate for non-outsourced projects?

    (b) 4/36 is not 25%; it’s 11%.

  • Jonas · June 9, 2010 at 11:17 am

    I agree. Managing your outsourced project is a lot harder than most people imagine. That, in my opinion, is one of the big reasons why outsourcing often fails. You really need great project technical project managers in your own organization to communicate with the outsourcing company, and even then it often fails.

  • Monkeyget · June 9, 2010 at 11:17 am

    Cost overrun, schedule slippage or outright failure also occur frequently onshore. (e.g. http://www.it-cortex.com/Stat_Failure_Rate.htm ). Are outsourced product that worse than locally developed ones?

  • Eric · June 9, 2010 at 11:27 am

    Great article. You should recheck your numbers on this line:
    Actual cost savings: $4,000 (($40,000-$36,000)/$36,000) = 25%

    4,000/36,000 is 11%

  • Jason Kotenko · June 9, 2010 at 11:37 am

    I wonder Dave if you have any competing statistics on cost overruns for locally sourced projects? As far as I know, 100% of locally sourced projects do not complete successfully, on time, and on or under budget. Without the competing information, we can’t do much of a comparison.

  • Nevil Nayak · June 9, 2010 at 11:46 am

    Your math is correct but your underlying assumptions are not; from personal experience, I can assure you that the on shore estimates you give are off by 50%. On top, on shore companies will demand ‘bonus’ for job ‘done right’ which they were suppose to any how. And don’t forget all those vultures who’re going to hawk at you for ‘business development’ and breech of contracts and licensing issues which the offshore guy has no interest in doing.

    To get your off shore projects right, get the requirements down packed. Get all requirements materialized, diagrams drawn, before/after scenarios and all expectations met. Get a on-shore talent with off-shore experience who a has off-shore background – this is because Onshore guys can’t handle the heat offshore workshops give off. believe me.

    Overall, there is great amount of success to be sough in offshore projects… yes the author is right in his own merit. Garbage in = Garbage out… so hire the right talent. and do your homework.

  • Karen · June 9, 2010 at 11:49 am

    Even though you have used the term “outsourcing”, the figures seem to indicate you mean “offshoring”.

    The math gets worse when the outsourcing is done at a much higher price under the guise of the workers being better, but in reality many outsourcing firms staff these projects with resources who have less experience that the client organization’s staff.

    I’d also throw in that “lowest” bidder regulations often lead to the same results. I have seen projects where the lowest bidder wins with a bid of $30,000 and three months, but the actual cost is $1.3 million and 3 years. As one outsourcing vendor complained to me “but I low-balled the bid just to get the work. I can’t deliver the results unless I get ten times what I bid”.

  • Author comment by Dave · June 9, 2010 at 12:25 pm

    Finding hard data on this stuff is quite difficult as it turns out. I contacted Dan Galoraith of the SEER Group for something and he couldn’t separate the outsource from local data. Other places, like Aberdeen, didn’t publish their sources. My own research turned up little info in published data, but I did have access to several companies actual financial data for their projects, and that’s the best I could come up with.

    I do agree with others that local projects may have cost overruns and failures based on bad estimates, but with a local firm, you remove some immediate and significant disadvantages, like the communication barrier, having face-to-face design sessions, sometimes significant on-site work, etc. Offshore teams are getting smarter and putting folks “local” to do the work.

    @Monkeyget: They do, and your point is valid. Finding the right data to show actual diffs like I mentioned above is hard. My experience and hard data thus far is that there is a significant difference. YMMV.

    @Anon/@Daniel: The comparison is as valid as I can make it. No one ever co-develops the same project on and off shore to compare the results, although that clearly would be the ideal test case. My point is that there is a perceived difference in costs up front and that decision drives a poor end result.

  • Author comment by Dave · June 9, 2010 at 12:26 pm

    Yes, there is a distinction between them and I get sloppy but you’re right, I generally mean “offshoring” because that’s where the cost savings come from.

  • JP · June 9, 2010 at 12:29 pm

    This is more of a problem with traditional waterfall development, and the challenges faced with today’s “Must have this new feature NOW” mentality.

    I often try to explain to fellow developers who get frustrated with the constant requests for changes and process validations mostly likely done by these developers. It never seems to amaze me how often putting a business practice into a logical process seems to render the process incomplete and in need of changes.

    The industry shift to agile development has help developers and analysts work through most of the problems revolving around deliverable, but try incorporating an agile process where deliverables change constantly, and the efforts of managing timelines and expectations explode leaving the company with an all or nothing decision.

  • BillAtHRST · June 9, 2010 at 1:01 pm

    Reminds me of an old joke:

    Man finds a two-year-old claim ticket from shoe repairman, goes into store, hands the ticket to cobbler:

    “They’ll be ready Thursday”.

  • KB · June 9, 2010 at 1:05 pm

    Nice article. One thing I’d like to point out, though, is the lack of same detail while estimating cost for getting it done locally. You simply say 400 x 100 = $40000. How about overruns and other issues applied to local workforce. I’m sure there’s a component to the cost here that’s missing. To be fair, you’d have to apply estimates for project cost overrun etc to the local employee as well.

  • Author comment by Dave · June 9, 2010 at 1:07 pm

    You’re 100% correct. But how much overrun to put? Management costs? Do we lump all local firms together (small freelancers vs. The Big Boys)? I agree that the comparison isn’t what you’d like to see, but creating the actual scenario is hard. I took my scenario for offshoring from the Aberdeen numbers and correlated them to my two major clients that already offshore. They agreed within one sigma of error.

  • KB · June 9, 2010 at 1:22 pm

    Understood. I’d like to clarify my viewpoint a little: I’m with you on the fallacies of savings associated with outsourcing. Even if you did somehow add in estimates for overruns with locally hired employees, I still think you’d find that the savings are not high enough to justify. One non-quantifiable factor is the quality of the final finished product – I believe that in most cases, the outsourced projects suffers from lower quality of software. I’ve wondered many times in the past about how these massive outsourcing projects even get off the ground; your failure numbers confirmed my suspicions.

  • Fenris · June 9, 2010 at 1:50 pm

    If you are comparing total cost of development offshore ($36.000) with just eng-hours locally ($40.000) you are doing it wrong. Locally developed projects are going to have some managements cost also maybe not the $6.000 that you talk about, but some cost is going to be charged to the project.

  • Tim in Colorado · June 9, 2010 at 1:52 pm

    While my gut wants to agree with your premise, you’ve really only told half of the story.

    I have to agree with Jason and Andr: These numbers aren’t interesting unless you compare apples-to-apples. For example, what’s the typical cost overrun for local development? What’s the typical failure rate?

    And are we comparing outsourcing with internal development, and if so, what class of companies are we looking at? I’d actually argue that companies that are predominantly NOT tech-savvy would have an even harder time hiring and managing a major software project internally. Not that I think outsourcing it to a company on the other side of the planet with a very different culture would be a good idea, of course. But outsourcing to a local developer who has relevant experience (and good references!) probably raises your chance of success by a lot.

    If the statistics Andr presents (68% of all projects fail) are comparable, then I agree with him/her that a 50% failure rate is actually good–or at least not terrible, compared to other ways of developing a project. Presenting statistics of only one side of an issue without a something to give it context doesn’t really help.

  • Andrew · June 9, 2010 at 1:57 pm

    I wonder if the companies you mentioned keep outsourcing due to the kickbacks upper management is getting from the outsourcing companies?

  • kedz · June 9, 2010 at 2:11 pm

    Offshoring is not $25/hr.. in China and India, its down to $8-10/hr..

  • Author comment by Dave · June 9, 2010 at 2:12 pm

    Depends on the work involved. Development rates in China, India, and other Pan-Asian countries is averaging $25 for larger companies right now. One of my two clients was paying $30 through a large firm for “senior developers”, although I wouldn’t call them that.

  • Brian P · June 9, 2010 at 2:17 pm

    Well what I noticed when I outsource my projects you cannot outsource the whole thing. You have to outsource very easy but tedious and time consuming tasks to your outsourcing partners in good instructions. That is where you save from outsourcers and I have many times. If you just give them a task and do not have knowledge and relying on their knowledge you are setup for failure!

  • Matt B · June 9, 2010 at 3:29 pm

    Boss says how many guys do you need to get this done. I say 3, he says ok, I’ll get 15 Indians. Still failed.

  • Jason · June 9, 2010 at 3:53 pm

    Been thru at least a half dozen outsourcings in the last 8 years…so I know the short term AND the long term results. Operational tasks, sure…as much as I hate to eliminate US jobs, those positions are easier to outsource. Outsourcing software development is insane unless you already have an ARMY of technical writers, business analysts, project managers, contract negotiators and SLA managers. This is even true if outsourcing to somebody like IBM. But with offshore, particularly India, it should be a requirement before even saying the words out loud. I have seen MILLIONS of dollars wasted on Indian outsourcing projects. No joke, no exaggeration. Not to mention the costs of valuable, talented people who quit to get away from the enormous headaches. Some people say you “get what you pay for”. That’s crap. We have paid thru the nose and gotten little for it except substandard software, midnight conference calls, finger pointing when things go wrong, and elitest attitudes.

  • Scott · June 9, 2010 at 4:16 pm

    Actual cost savings: $4,000 (($40,000-$36,000)/$36,000) = 11% (for the clients I’ve worked with)

    No. Interesting that no one caught the big math error, just the little one.

    If you shop for an ebook, find it on amazon for $10 and itunes for $1, buying it from itunes saves you 90%, not 900%; divide by the big number, not the smaller one, hey?

  • JB · June 9, 2010 at 4:27 pm

    My own experience reflects your findings, experience of all sorts of projects (from Ireland) over 20 years.

    Outsourcing to India/Philippines: A disaster. High failure rate. Projects delivered were invariable late and over budget. Code quality was poor, applications invariably disappointed customers, documentation was crap. Do not even think of letting them do the design/architecture.

    Outsourcing to Australia/NZ: Quality was much better. Communications was very difficult due to time difference. Quality reasonable, probably best experience after local development.

    Outsourcing to Poland: Some communications problems. Quality not bad. Cheap enough to bring developers here or to visit there.

    Outsourcing to other east European countries: Not as good as Poland, better than India/Philippines.

    Outsourcing to UK: Poorer than you would expect. I’ve always been surprised at poor code quality/engineering from UK. Expensive without much return.

    Local outsourcing: Better than UK, similar quality to Aus/NZ/US. Easier communications obviously.

    US outsourcing: Surprisingly poor, on a par with UK.

    Most of the projects I’ve worked on have been successful (in that something was delivered and put into operation). I can only think of 1 technical failures out of maybe 35/40, UK based. The UK based failure was due to ineptitude of developers, 9 months late on a 3 month project, deliverable nwas never satisfactory. Project was replaced with inhouse development which took about a month.

    Secrets to success:

    1) Face to face communications on a regular basis.

    2) Some level of competence and initiative from the developers. You shouldn’t have to specify every little thing.

    3) Plenty of milestones, less meetings.

    4) Knock the ‘change request’ syndrome on the head early on and , conversely, avoid feature creep on your end. IBM will wear you down with ‘change request’itis if you let them.

    5) Reduce the layers of management, let engineers/developers talk to each other. Keep PMs to a minimum.

    6) Kick ass on all sides when things slip.

  • Greg · June 9, 2010 at 4:37 pm

    My experience managing several projects involving outsourcing is the same as yours. Outsourcing overseas never produced what we thought it would, took a lot longer and cost way more than it should have. Most of the code did not meet requirements (or basic best practices) and had to be thrown away. Why did it always seem like a different programmer over there worked on each bug or minor request? Because that’s what happened behind the scenes and the result was crap code! I would go further to say that if you have competent local consultants, you do better in the long run because they produce a better result in a shorter amount of time!

  • Jason · June 9, 2010 at 4:49 pm

    I was recently employed by a firm that provided outsourcing services to automotive parts manufacturers. In that very limited and small industry, your conclusions are quite true. But it doesn’t have to be that way! I was in a dirty industry full of really unsophisticated people, many who had no idea what they were doing. If you want the job done right, hire the right people! Investigate who you’re hiring! Pay your internal people to properly communicate your needs and expectations to the outsourcers! The single biggest reason for a project “failure” was miscommunication. Half the time my customers had no idea what the hell they wanted. Often they would authorize an “open” P.O. knowing rates and personnel requirements full well, and neglect to mention a budget. Managers that can’t properly communicate their needs will often fail with outsourcing companies. Employees (good ones, at least) are more easily able to make up the slack left by a poorly communicating manager.

    Just because B happens after A doesn’t mean A caused B. Outsourcing project failure doesn’t mean outsourcing is a lie, or isn’t a viable savings measure in some situations.

  • gwenhwyfaer · June 9, 2010 at 7:27 pm

    If you’re talking about a cost saving, you need to be expressing it relative to the price before the saving. So a $4000 saving on $40000 is a 10% saving, although a $4000 increase on $36,000 would be an 11% overspend.

    On the other hand – a 10% saving isn’t trivial, if the cost is high enough. Over the entire development spend in a large company, management would probably look extremely favourably at a 10% shrinkage in budget – and if shareholders ever got wind of the fact that they could have shaved 10% off an unproductive budget, but didn’t, then lawsuits ahoy!

  • Jeff Jensen · June 9, 2010 at 7:46 pm

    …and those costs don’t cover quality of architecture & design (hitting expandability/maintainability) and defect rate. Include those, and the local approach is far cheaper.

  • William Nett · June 9, 2010 at 8:53 pm

    No kidding! Lets talk about lost taxes! The US Government thanks to outsourcing has lost more than $3,000,000,000.00 a year in taxes due to outsourcing. I calculated this out before and the numbers were disgusting. Lost internal revenue exceeded $17,000,000.00 for US establishments. My numbers were for 2008.

  • Paul S · June 9, 2010 at 9:31 pm

    I just went and read your linked article on the Power Distance Index (PDI) which has comments disabled.

    This is very interesting because being a British Ex-pat in China, managing an Outsourcing company I find most of the content of that article to be true.

    In my company I work hard to increase communication and open and honest feedback from team members. People know they can can me anything. We only use native English speakers to talk to our overseas customers. We ensure that every team member is responsible for success in their 2-weekly goals and motivate them with significant benefits.

    Our company culture has a very unique feel.

    We have found that the combination of a company staffed by western and Chinese staff proved very effective and valuable to our customers.

  • Tom Damon · June 9, 2010 at 9:36 pm

    I’ve used outsourced development, and found that it leads to bloated, crappy code. In their haste to make a deadline, foreign sweatshops push quantity over quality, just throwing things in to see if it will work. Maybe I’ve dealt with the wrong companies, but I’ve only used one overseas developer who I will continue to use.

  • Selwin · June 9, 2010 at 9:41 pm

    Oracle, Microsoft and IBM and many other big companies have a huge chunk of their work outsourced.

    There are lot of quality people in other developing countries too. On par or exceeding quality expectation of those in developed countries.

    Companies that were adamant, NOT to outsource, have failed because they were NOT able to manage raising costs.

    There are lot of bad quality too in outsourced markets. You should be efficient enough to manage this. Efficient managers do NOT complain like this and be REGIONAL. Human mind is powerful instrument, do not try to REGIONALISE it.

    First the author’s attitude is wrong. If you try to find fault, sitting in a managerial job (without knowing the underlying technology), you will get lot of points.


  • Ole Ronberg · June 9, 2010 at 10:46 pm

    Interesting post. Reckless outsourcing is definitely dangerous. There are many not too serious players on the provider side (obviously you cant hire a really skilled programmer anywhere in the world for 5-8 USD per hour), and there are many customers who are so focused on cutting cost that they forget to adhere to even the most basic rules of project management, change management, etc.

  • Tom · June 9, 2010 at 11:11 pm

    I agree with this 100%.

    When I was working at a large telco (no not AT&T the other one), we outsourced a large project to India to save money. HR and upper management was forcing it. Not only was it late and over budget, it was so riddled with errors it had to be trashed and started from scratch.

    I see this 9 times out of 10. What a waste. You get what you pay for.

    Secondly, I see the same hype with cloud computing. I did the math and in some circumstances it has benefits and it is cheaper, but if you try and put your whole private cloud in the public cloud, you will screw yourself. It’s just too expensive for a big thing yet everyone thinks that is what it is coming too. I guess we shall see.

  • Tom · June 9, 2010 at 11:38 pm


    That is a 10% savings on the projects that complete. If you factor in the projects that fail you are losing your azz, so lawsuits a hoy! Investors should sue these companies for being inefficient by outsourcing and not having any accountability (BP anyone?)

    Yes BP outsource the oil drilling operation and it is now going to cost them BILLIONS.

  • Mani · June 10, 2010 at 12:17 am

    Development costs and quality are interlinked, you do the proper homework to identify the consultant who can deliver good quality and then check the prices, you may need to cough up the same(anywhere in world) that you pay for good resources at home. Some countries have some infrastructure cost savings at best. No need for any math here!
    As some one pointed out here, communication and consistent followups are key to executing a quality assignment anywhere(next cubicle, across coasts or across ocean).

  • Blonko!» Blog Archive » Offshore costs – kort door de bocht · June 10, 2010 at 1:08 am

    […] the “Outsourcing cost” lie […]

  • Warfi · June 10, 2010 at 1:36 am

    BTW more than 90% of the projects fail due to non-technical reasons. Many outsourced projects are managed from on-shore. So the offshore model itself is really good and evolved & evolving with the passage of time. Some of your observations are good, and nice stats you had shared.

  • Morten K · June 10, 2010 at 4:14 am

    As other posters have mentioned, the failure rate for software development projects in general is very high. The statistic of around 70% is quite common.

    Developers at 100 USD pr. Hour is not neccessarily better than the ones for 15. Yes, the guys at 5 to 15 is usually useless. But from 15 to 25, you can find developers who surpass the skill of 100 USD developers from the UK, Europe or US. The wage is not an indicator of skill level.

    This is why when projects conducted at such rates fail (and that’s often), the costs get extreme. While the project outsourced offshore also fails often, the costs gets less crazy, due to the lower rates.

    I think the main problem with offshore outsourcing software development is that people expect you send off a specification and hold a status meeting once a week, and you’ll get back a perfect product. And this simply does not work, even if the developers are in the office next to yours.

    Any software development is hard, and because it’s outsourced offshore, does not make it any easier. People outsourcing should be competent, and be ready to invest a lot of management into any projects.

    It is however very possible to find fantastic developers all across the world, and get successful projects. You just have to avoid the sweatshops which are everywhere in countries like China, India, Pakistan and similar.

  • Igor Brejc · June 10, 2010 at 5:56 am

    Although I agree outsourcing is not a panacea, I think your post contains too many incorrect claims to be valid. Starting from your use of the term “outsourcing”: anything done outside of one’s own company is outsourcing (including I guess your own work for your clients). So in other words you are raising the issue of “me/us” against “them” (any non-US company).

    As for doing the project locally within the company, I think experience shows internal SW development teams are often not much better than the ones you can hire outside for less money. But probably not for 75% less.

  • Igor · June 10, 2010 at 6:26 am

    Hi Dave,

    I’m working in the small outsourcing company in Ukraine as software developer. We are working mostly with clients from US and Europe. I think it will be interesting to provide you and your readers with some facts from the other side:

    * Really big amount of projects we got were failed before they were started. The whole idea behind this projects was bad. (Mostly popular sites clones etc.) Sure we will not tell to the customer – “Hey John your idea is crap and we recommend you to by a yacht instead of wasting money and time to your uber-new Facebook clone” – We even will not tell him such things not because we want his money but because “John” will not listen to us and will just find another provider and will do it anyway. I cannot remember any really successful unique project that was done by outsourcing company. So I think your “50% failed” metric is inaccurate because it largely depends on the initial project “idea” quality and customer will to complete it.
    * Many customers, mostly under an influence of the relatively cheap prices, are not strictly follow initial project plan. They add new items, change their minds on completed items – just because they know that its cheap to redo it. This usually leads to violation of initial time and cost estimates. This situation could be compared to visiting really expensive and exclusive french restaurant in alps and you local fast food restraunt. In fastfood you know that you have more money than their all menu items cost together – you can order one meal try it and then order another and you will finish your night ate up and not satisfied. The other side is expensive restaurant – you know that you have limited budget and you will really carefully choose what do you want (maybe even before visiting it), you’ll ask your friends to get recommendations – and if you will not like some small piece of your meal – you will not say – “Hey, I think I’ve screwed up with ordering this meal with this sauce lets redo it with another from the beginning, I’ll pay” because you don’t have such amount of money. So its really important to have right approach to outsourcing development and to not have any illusions that it will be cheap and you can change something anytime even with loosing “a little” money.
    * Lack of communication from customer’s side. Some clients think that if they will outsource project development to guys from the other side of the planet – they will only wait until it will be completed.

    And one last thing: If you’ve made decision to outsource your project – do not let management take care of it on the initial stages. Find a technical specialist who will analyze code quality on the early stages to avoid problems later. Several times I saw projects that were started mostly by companies from India/China and this was total disaster. I think that it is correct to say that customers were scammed by this companies. Usually such projects could be easily determined when potential customer say that 80% of project was done by some outsourcing company and we have only 20% remaining to complete the project – usually this should be read as – something was done by another company but we don’t know what was done because we cannot even launch the project and have not seen any staging or demo.


  • The Outsourcing Low Cost Lie | Lessons of Failure | The Nightly Build · June 10, 2010 at 7:14 am

    […] The Outsourcing Low Cost Lie | Lessons of Failure. […]

  • KK · June 10, 2010 at 7:58 am

    Imagine you go to a local tailor, and order a suit. He quotes $100 and asks for a week for delivery. Of course the outsourced tailor cost 75 dollars and the pocket will be funny. So you decide to go with the local tailor.

    The sad story is, after 1 week, when you go to the local tailor, he would say, I need health care, 5 weeks holidays, I can’t work on Mondays, Wednesdays and Fridays, I need a sewing machine with youtube.com on it to complete my work.

    Would you be mad? That is what happened to me. Outsourced vendors finished a decent product in reasonable time. Local vendors only promise a glamorous product at a hefty price and do not complete in any reasonable period of time.

  • raghava · June 10, 2010 at 8:01 am

    As pointed in few comments, here it’s offshoring that is considered not so effective.

    Agreed, there is no such boastful real gain but one also has to take into account the kind of work involved or the clients, as they are prime factors in the equation. Say, it is some small budget pharma company or a transport company trying to get their data migrated across a platform (or some such project that does not require geniuses to be involved). Local firms would not get these projects (for their margins would be too less or that their quotations would be too high for the clients); and for that expected cost, offshoring would be the only possible option for those clients. And at $10/15 an hour in an offshoring major, someone would be happily filling up data into spread sheets and drawing colourful charts out of it, and possibly write some non-mission-critical code too (all the while proud of being called a Software Engineer, who earns a decent salary by the standards there, all thanks to convenient exchange rate).

    Maybe we can also check the kind of projects that were offshored, when considering the data involved. There cannot be a clear black-white distinction at all, that one could categorize all cases into.

  • Amy · June 10, 2010 at 8:10 am

    “These numbers have been vetted by two recent clients of mine….  Both have substantial amounts of outsourced projects and both report little actual cost savings shown by front-line managers, huge management issues, and non-trivial project failure rates.  And yet, both continue to outsource because upper management believes they’re saving a lot of money through outsourcing.”

    The more I think about it, the more I feel that this is the most intriguing part of the article.

    Why does upper management believe they’re saving lots of money if they’re not? How does that happen, and how can front-line managers make them understand that they aren’t saving money?

    Is there a lack of communication? Don’t upper management look at their numbers? Do their numbers get reported in such a way that the costs hide, and if so, will the costs show up eventually? Or, does upper management understand that they may be saving only a little bit of money, but think it’s worth it?

  • bhupal · June 10, 2010 at 8:33 am

    nice analysis. though, you go to tailor because you can’t sew it for yourself, but when you hire a outsource, most of the time, a development team somewhere (okay say it your place), hires another development team somewhere else, does that has to be like one way tailoring? i don’t think so. i agree with @Nevil hire the right talent and do your homework too.

1 2