Software Creation Mystery -

Can In-House Programming Compete With Outsourced Software Services?

Thought-provoking and interesting author Nicholas Carr has published a new article in Financial Times, where he expands on his ideas about transformation of IT services into utility. He compares IT with electric power generation 100 years ago:

Like data-processing today, power generation was assumed to be an intrinsic part of doing business. But with the invention of the alternating-current electric grid at the turn of the century, that assumption was overturned.

Suddenly, manufacturers did not have to be in the power-generation business. They could run machines with electric current generated in distant power plants by big utilities and fed to their factories over a network of wires. With remarkable speed, the new utilities took over the supply of industrial power. Scores of private power stations were dismantled.

Nicholas Carr applies the same pattern to the transformation of in-house IT services:

One place where the changes will be particularly sweeping is the corporate IT department. As the capacity and capabilities of the computing grid expand, it will continue to displace private systems as the preferred platform for computing. Businesses will gain new flexibility in assembling computing services to perform customized information-processing jobs. They will no longer be constrained by the limits of their own data centres or the dictates of a few big IT vendors.

He predicts unfortunate future for in-house IT:


It will have little to do once the bulk of business computing shifts into what Google’s CEO, Eric Schmidt, calls “the computing cloud”. Business units and even individual employees will be able to control the processing of information directly, without the need for legions of technical specialists.

I don’t agree with comparison of power generation to software services. As far as I know, electric power is the product of potential difference and the current. It differs only by watts. Software services are much more complex, variable and diverse. And it gives a hope for survival of in-house IT contrary to Nicholas Carr predictions.

There are several factors that will help survival of in-house IT and especially in-house development teams:

  1. Specialization. It is true, many computing services are similar or even identical in many companies: e-mails, word processing, CRM, etc. There is no point to reinvent the wheel, build such applications and even host them. Google or can host them with one tenth of what it cost to a typical company. But each company has unique business, people and information processes. Software services, which are closer to the core business of the company, will have much higher degree of specialization. You’ll find much less software services specialized for chemical, publishing or brokerage companies and they are really expensive. And it will be very difficult to find the combination of external services which completely matches company needs.
  2. Integration. Many computer services are not homogeneous, have incompatible interfaces and couldn’t be integrated easily. They process, represent and interpret information differently. As many programmers know, creation of generic reusable services requires much more effort than creation of narrowly focused for specific use services. Often generic services are complex and still require effort to adopt and integrate into company IT processes. Therefore, “assembling computing services to perform customized information-processing jobs” will be really challenging job.
  3. Competitive advantage. For many companies IT processes and services lie at the heart of their business. They are very important for beign effective, profitable and outstanding. Wal Mart, Fedex, Dell, Amazon and other companies built success on proprietary information systems. Outsourcing of traditional IT services will take away benefits of custom tailored information processing.
  4. Adaptation. Any business evolves and frequently changes. Relying on outsourced computing services will make company less flexible and responsive to the external and internal changes.
  5. Knowledge. Finally, somebody should understand how to apply, use and tune technology for the particular company’s business. People who understand both business and IT will be still needed in-house. Developers who know how to build and integrate effective software solutions will be in demand.

In overall, Nicholas Carr correctly predicts the trend – more and more software services will be outsourced and become utility, especially for smaller companies. How could in-house teams or software companies stay competitive to the big providers of computer services?

I believe they should follow two strategies:

  1. Become more effective in translation of business needs, building software systems and integrating outside computer services. Master agile approaches with short feedback cycles, stay lean and avoid over-engineering. Build software that satisfy business needs and easy to use with minimal time and cost.
  2. Become technology partners for business (including every developer), understand core business domain and how software could help for the company success. Build software that amplify business capabilities and make company more effective.

A revolution is taking shape, Nicholas Carr

You can find more in Nicholas books: The Big Switch and Does IT Matter?

AddThis Social Bookmark Button AddThis Feed Button



Subscribe without commenting

Software Creation Mystery -
%d bloggers like this: