Home

Software

Services

Partners

About

Blog

Forio's Forum

The Pitfalls of Outsourcing Programmers

In Staff Articles

Clothing and toys are manufactured overseas. So why not make software there too, where labor is cheaper?

Many U.S. technology companies have outsourced their software development to India. Last year Hewlett-Packard became India's largest multinational IT employer, with more than 10,000 employees.

The enthusiasm for overseas outsourcing and offshoring, mirrors the enthusiasm for Internet companies in the Nineties. In a recent article, Ravi Chiruvolu, a partner at Charter Venture Capital wrote that "Venture Capitalists decided that because of cheap engineering talent in countries like India it would be more cost effective to outsource software development. If Nike could outsource sneaker manufacturing, we could do the same with code." Following similar logic, Oracle has announced it will more than double the number of software engineers it employs in India to 6,000.

Although the offshoring trend has resulted in a net transfer of jobs outside of the US, this article isn't about job losses in the United States. We live in a global economy and people in India deserve jobs as much as people in the United States or anywhere else. It's worrisome when companies are criticized solely because they have hired people overseas.

Offshoring is a mistake when technology companies confuse operational effectiveness and strategy. Operational effectiveness is about working cheaper or faster. Strategy is about the creation of a long-term competitive advantage, which for technology companies is usually the ability to create innovative software.

Outsourcing programmers works when the software developed isn't a key part of the pipeline of innovation for products a company actually sells. For example, when website design or back-office software such as payroll or inventory control is outsourced, that can be good because it improves operational effectiveness.

But writing innovative software cannot be done on an assembly line. It requires hard-to-find development and design skills. Farming out development to legions of programmers overseas will not create a differentiation advantage. When a technology company outsources software development, that company loses its capacity to innovate and its competitive advantage.

Why Some Software Companies are Confusing the Box for the Chocolates

Recently, I bought some chocolates as a gift for some friends from a specialty shop. These chocolates are remarkable. Owner Jean-Marc Gorce makes them by-hand and his small shop has been rated as one of the top ten in the United States. In addition to being a chef, Jean-Marc is also an entrepreneur and an innovator.

gold and blue chocolate boxJean-Marc recently started selling his chocolates in gold and blue boxes. I told him I liked the new boxes. He explained that his wife designed the boxes and he found a company in the Philippines that could produce the boxes in the small volume they needed for a good price.

Jean-Marc’s gold and blue boxes are an example of successful outsourcing. Jean-Marc sells chocolates, not boxes. The design and production of chocolates is his core competency. Jean-Marc can outsource box production to improve his operational efficiency without sacrificing his reputation as a maker of superlative chocolates.

While outsourcing boxes improves chocolatier Jean-Marc’s operational effectiveness, he would never consider outsourcing chocolate production because he would lose his core differentiation advantage. Yet, in their enthusiasm for cost savings, several US technology companies have done precisely that-- outsourcing their core technology and key strategic differentiator.

Design and Assembly are Different

This isn’t the first time companies have tried to commoditize software development. In the eighties, Japanese companies unsuccessfully attempted to set up software factories to manufacture programs. They discovered that just throwing a lot of programmers together doesn’t create innovative software.

Design is a small part of clothing production, but a big part of software production. Unlike software, it makes sense to outsource the manufacture of clothing and toys. Most of the cost of clothing and toy manufacturing is in the assembly, not the design. Those products can still be designed close to corporate headquarters but assembled elsewhere to keep costs low.

Programming is like design and nearly all of the costs of creating software come from writing the program, not the assembly. The assembly stage for software is really just copying the final program onto a disk and enclosing it with a manual in a box.

Harvard Business School's Michael Porter, a world expert on strategy and competitive advantage, nicely summarized the problem with competing solely on operational effectiveness:

"If all you're trying to do is essentially the same thing as your rivals, then it's unlikely that you'll be very successful. It's incredibly arrogant for a company to believe that it can deliver the same sort of product that its rivals do and actually do better for very long. That's especially true today, when the flow of information and capital is incredibly fast. It's extremely dangerous to bet on the incompetence of your competitors -- and that's what you're doing when you're competing on operational effectiveness."

Ultimately, the offshoring fad is bad for companies not because of the short-term programmer layoffs but because technology companies will lose their capacity to innovate. Tech companies that outsource their programming talent will ultimately be replaced by competition, and then everyone will be losing their jobs.

View Reader Comments on This Article

Posted by Michael Bean

19 Responses to “The Pitfalls of Outsourcing Programmers”

  1. Michael Says:

    If another programmer is more efficient than I am, then he deserves to have my ob. But if he is cheaper merely because his government is failing to incorporate all the costs of his labor into the price, then it becomes undercutting, and therefore bad economic policy.

    Outsourcing is bad, because underdeveloped countries are getting this advantage, not by being better, but by cutting societal corners.

  2. Abhi Says:

    People "any where" in the world can be creative, innovative and productive.

    Outsourced programmers- be they in India/China/ Eastern Europe - wherever - are creative, intelligent and a generally a product of a very competitive local education and work enviornment.

    Specifically considering India, the cost arbitrage and massive engineering pool capability that India possesses, has just started being used.

    You should see the number of R&D centers (GE, TI, Cisco, Microsoft,SAP, etc..) being opened in India, that will give you an idea of the kind of work happening in India. These companies are building these innovation centers because of - yes, cost advantage initially; and then the realization that they are getting high quality and the productivity out of the Indian software programmers. Multinationals come-in thinking only of cost, subsequently - they expand due to quality, productivity and real local talent. India is giving companies sustainable competitive advantage.

    This trend will just accelerate, and yes- we will get the innovation out of the Indian Programmer - which is being touted as a differentiator. It's just a matter of time.

  3. jtheo 2.0 » A proposito di software - Joel Spolsky Says:

    [...] Michael Bean, Le insidie della programmazione in outsourcing [...]

  4. Victor Says:

    I concur with the argument that a company loses it competive advantage once the core of the business is outsourced.

    Just one question though,are the so called Tech companies in the Tech business?

    The answer is no,they are actually in financing.The start their thinking with the dollar and end there.That is why one would be shocked that all the so called major Tech companies companies don't the technology but on the ROI.

    And drive the point home,show me a large tech company and I will show you the bank they own.

  5. shraddha Says:

    Outsourcing is future ! Globalisation is the word. Which country it does not matter... the base line is that we are trying to have good business and trying to better ourselves...
    When a company outsource to any Indian or any other asian company or non asian company its for really business.. be it cost cutting or better quality ... but definitly not for socila service or for economy sake.

  6. Cristiano Says:

    You argument seem to be based on two assumptions - one, that programmers overseas are less able to innovate than in the US, and two - that outsourcing means literally moving the (software) production outside the company.
    The first assumption is obviously questionable: why should a good indian/european/african/younameit IT expert less good than a good US expert? Good or bad people is found anywhere - and a tech company ability in identifying who's who is a key to its survival wherever it is.
    Regarding the second, "outsourcing" in software is often not oursourcing at all - but realized by setting up operations in lower cost countries, rather than simply asking some entity outside the company to realize a product. In this way, an outsourced outfit is a part of the company, only one where overhead and costs are generally lower.

    More real pitfalls are communication, common vision, strong management and quality in the low-cost operations - not that different than the ones onshore, but amplified by the physical distance.

  7. Mark Says:

    It is unfair to generalise and blame all for poor performance. I am one of the user of programmers from India, UK and Ukraine. I have collegues who use them. Unfortunately our experience with India is not the best especially with the "reputable" companies, in this case Synapseindia, promoted by Elance and others. Two major problems are their complete lack of creativity and a "different" coding that requires hours and days of customizing by our programmers. They follow directions well, assuming they understand the language.
    One of the shocking experience was to learn late in the project that the website does not comply with HTML standard; certainly they don't tell you this. Once noted by us, they asked for more mony in order to "validate" the site. Keeping the deadline is another dark side.
    Those companies get lots of little projects and gain blind support by those who keep them as providers directly benefiting from their work. The award them with those funny "select" members giving unsuspecting public false impressions of safety and guarantee of great work.
    Yes, they are inexpensive but does it have to translate into a cheap?

  8. Ujwal Says:

    Companies should not compromise their core competence with cheper cost in the form of outsourcing

  9. doonrothmani Says:

    Reading this makes me think of companies such as Dell who have outsourced a core part of their business, namely customer support.

    In my view, customer support is an integral part of any computer maker's core product's value. Assuming that a significant number of computer purchases are made intellegently, improved customer support should be translatible to some competitive advantage.

    I challenge anyone out here, especially our friends from India, to state that a customer from any country will receive improved customer support from persons 12 time zones away who have an entirely different native language and culture from the customer.

    To my american/european friends, I'd challenge any to state that outsourced customer support, in their experience, is of better or even as good a quality as local-based customer support used to be.

    As an American consumer, I eagerly await the day when an Indian computer maker goes head to head with, and kicks the buttocks of, Dell and others. If I'm to pay for a computer made by an essentially Indian based company, I'd much rather pay for it in rupees.

    And when that happens, and many others migrate to this point of view , the truth of this essay will be clear as all hell.

    Don't get me started on confusions between increased productivity vs. transference of wealth vis-a-vis the outsourcing question.

  10. Abhishek Says:

    World is moving to globelization..and no one can stop it.

    Where things are best ,they would get the biggest business.

    Developed countries like USA and UK are good in innovation and design.Countries like India have technical workforce to support this innovations.

    So let everyone in world get benefit.

    Indian programmers if given clear requirement.are also good at designing and infact are also creative.Programming level of Indian Techie's are no doubt very remarkable.....so my suggestion is ...its now high time who so ever is their to get ready to work in "global office" and try to match up urself ..otherwise..even a guy in India is as vernable to loose his job as much someone is usa.

    Abhishek,

  11. Sumit Says:

    The term Outsourcing has been abused a lot. I don't believe that the people or companies who are actually taking up the outsourcing work are inferior in any sense. This is the fact that work force in India or China has been cheaper because of cost of living. This could be the reason that why did outsourcing started at all.

    But now this is not the case. The whole lot of R&D work is also being outsourced and transaction is happening other ways as well. Indian companies are outsourcing efforts to other countries like Singapore, etc.

  12. Venkatesh Says:

    As soon as the outsourcing word is used, India comes up automatically. This is an eternal debate whether to outsource or not, what to outsource, etc. Common subject of such outsourcing discussion include, "Job loss in US due to outsourcing", which in fact proven to be false. For every 1 $ of job outsourced to India, US/Any other country gets in return $1.25-1.5$. This in turn is invested back in the country to create more jobs.
    Other familiar discussions would include, "Indian resources should be used only for back end processing, not for design development". In fact this is a myth. Even though most of the work that is given to india are "development" work not design work. My view is it is due to the fact that, it is easier to design/architect systems when the requirement provider is closer to the source. But Indian programmers are as competitive as any body else in the world.

    Key point is, western programmers have to come out of insecurity thinking and broaden their mind to work with indian or any other programmers to create win-win situation in the world.

  13. gman Says:

    I can always tell which Indians are posting. The words "good for global economy" and "everyone benefits" without ever thinking of the US companies themselves. As long as the work lands in a 3rd world economy. For my input here further will involve outsourcing software development jobs.

    If it wasn't the cheap labor outsourcing wouldn't be happening at all. That's the bottom line. It's become quick fix for companies that believe it brings a competitive advantage when the reality is it good representation of bad management. Executives and CEO's believe this is an effective solution to reducing cost. The reality is the stock price of many of these US companies listed on this editorial hasn't moved up since their outsourcing began. What normally happens is projects within the IT organizations using outsourced work can never meet deadlines, lack an understanding of the business, do not have the creativity for efficiency or don't care to learn it, verbal communication is borderline ineffective with the US employees, and the tradeoff ends up being just as cost effective if the work had been left onsite in the US.

    There are some advantages to outsourcing, but companies carry the tasks too far and loose the talent of their employees and the competitive advantage when their ability to go from development to production quickly to stay ahead.

  14. Trshant Says:

    Outsourcing to India was a quick and easy solution to cut costs during the US depression that happened in 2000. Also i totally agree with the view that Indians are good coders and incompetent programmers. the ill effects of this will be seen in the coming years when Indian programmers will be paid the same as their counterparts in the US. However it is just a matter of time when the companies realize that they were better off using American programmers who knew what they were doing and more importantly, why they were doing it.

  15. Jack Says:

    This article is about protecting America and its future. It's not that Indians or the Chinese are less intelligent, it’s that when the jobs go overseas there is little value to Americans to follow that training path. America then loses its place in the world as a leader in that field.

    Another concern is what does America get in return (other than cheap labor)? Does India or China send jobs in return? Do they spend their money here in the states?

    If this continues we as Americans will lose our place as the standard for the world economy.

  16. Punjabbie Says:

    It's very easy to tell the people who think that outsourcing is a good idea. They are the ones picking up the jobs for cheap, while highly skilled programmers an IT professionals in the US are being flushed by the greed of companies like HP and Dell, IBM. Customer service from India SUCKS! None of the savings to these corporations are EVER re-invested in creating more jobs in the US, that is the myth. People in China, India, do not "deserve" my job here in the US, but some greedy scumbag CIO will see that I'm tossed out in the street just to make themselves look go to the precious shareholders, fueled by nothing more than greed. This is going to stop eventually, and when I start my own company in the coming year, outsourcing will not even be considered, and my products, and customer service will be far superior.

  17. Jack Nickle Says:

    I think the author meant outsourcing as in outsourcing to another company (often one in India). With this type of outsourcing you do lose competitive advantage. It has nothing to do with people in India being good or bad programmers. The external company just does not truly understand the company and its objectives. Their wants are very different to company wants. They want to code to fufil their contractual obligations and then move on to another contract. They just code to spec. People working directly for the company however want to innovate/help the company etc.

    This is very different to what Microsoft etc do. They don't outsource to India. They have people in India working for Microsoft doing R&D. They are involved in Microsofts culture.

  18. Paul Chavent Says:

    You say "Programming is like design".

    Not really. You can make a software design without writting a line of code ! For example, in the "V-Model", the implementation (or others "low level" activities) can be outsourcing without compromize the capacity to innovate.

  19. Matt Says:

    I think this article was lost on some of the commenter's. Its not about whether Indians (or any other nationality) can design and develop innovative software. Its about companies losing there core focus and thereby losing there core competency.

    When a software company outsources its software development to another firm is it still a software company? Or have they become a marketing/sales firm? If a company outsources its core business - whether it be software/hardware - its lost its ability to innovate and to compete.

    Many US companies are doing this now and its essentially a race to the bottom. In the long run I think it just opens up markets to smaller more agile competitors who can compete by providing innovative products and services.

Leave a Reply

  Subscribe with RSS

Join to receive emails when new articles are posted
Email   


Article Categories

User Created Sims Simulations built by Forio Broadcast users

Staff Articles Articles written by Forio staff

News and Links Simulations, news, and links from around the web

Books Books we like about sims, business, and design

Web Sim Building Tools Resources to help you create sims and websites

Contact Forio

© 2008 Forio Corporation