Friday, December 19, 2008

A future for software development in the west?

To read the papers one would sometimes wonder if there is a future for software development, indeed IT in general, in Western Europe and North America. Sometimes it seems there is an continual flow of work to India, China and other low cost centres. Personally I think there is a future but only if development groups fix themselves.

First lets be clear: I’m talking about corporate IT here, not independent software developers or other companies who develop software to sell. That is another story, another arguement, lets still to corporates today. Corporate IT departments support business operations by providing them with custom software.

Second there is another force at work: the commoditisation of business processes and the IT that support them. Lets leave that to one side for the moment.

So, I’m specifically talking about IT groups within businesses that need custom software to support some business activity.

Unfortunately such corporate IT departments do not have a good track record. Something like 87% of all such departments are ineffective and do not give the business what they need. (I’ve taken the figure from The Alignment Trap reports which I’ve blogged about before.) In such circumstances IT represents a cost not a benefit. Such companies might be better off not doing IT at all.

If you are doing it, and you are not seeing the benefit, and you are paying the cost then its sensible to look at reducing that cost. Outsourcing and/or offshoring is a valid option.

It might not be nice to hear but if you work in such a group it makes sense to send the work elsewhere. Sending it elsewhere might not fix the original problem but at least it will be cheaper.

So what’s the solution? How do you save your job?

Instead of looking at the cost look at the benefits. Some IT groups have forgotten how to do this simply because their delivery record is so bad. When you only consider the cost side western corporate IT cannot compete, give up now. In order to compete you have to look at the benefit side to.

When things are going well, when an IT group can deliver and can deliver benefits then it is less likely that management will want to change things. When things work, and work well, then any change is a risk. When things don’t work the risk is lower.

Next you need to maximise the benefits. That means looking at how you can add more benefit. And specifically add benefit in ways that offshore low cost centres can’t: quicker turn around, reduced documentation, more interaction with the business.

There is a price to pay in moving work to a low cost centre. Such centres have disadvantages: language differences, cultural differences, distance, time zones, lack of domain knowledge. Sure they can offset these differences but that involves costs. Plus they are getting more expensive (particularly as the pound and dollar fall).

Corporate IT departments can demonstrate their value by responding to business needs more quickly, and by reducing the cost of servicing those needs. When work goes offshore the turn around rate slows because work must be communicated. That means it needs to be more closely defined - this is especially true if the work goes to a third party. Opportunities to change’s ones mind are reduced and the potential for differences increased.

Yes offshore centres can offset these differences but at a cost. Each time the cost goes up the advantage is reduced.

So if you fear your work may go offshore heres what to do:

• Demonstrate the benefit of your work - move the conversations from costs to benefits
• Concentrate on co-operating with your business customers
• Turn work around more quickly
• Reduce the cost of requests and changes of mind - reduce the paperwork
• Work more flexibly
• Understand the business and find ways to innovate

1 comment:

  1. Allan, I couldn't agree more. Yet, the trend to see development as a service rather than developers as an asset seems to take hold. I don't know if this is good or bad. IT workers (myself included) like to see themselves as assets, but what is really needed to also be seen as one seems less clear. Certainly knowledge of the subject matter (i.e., business) is helpful, but organizations sometimes make it difficult to grow beyond that. Once you start debating your customer on a particular issue you'll often be told that this or that is none of your business. It may be considered an infringement on their property, I don't know. In any event, you might find yourself back in the techie seat again. Working in IT is definitely seen as not a career-enhancing move by business people, that I'm sure of.

    Apart from that, I am not sure this is really the work we have all had in mind for ourselves. A former colleague of mine went from IT to insurance underwriting within the same company. She returned after a few years, disappointed about the "unstructured" way of working. What are we willing to give up for more job safety?

    In the end, it's specialization or diversification. I'm confident that development is a dying occupation in the West for almost everyone except specialists and niche players. (Another person I know consults very small businesses only, and yet another acts as "professional customer." Both seem successful.) The number of jobs in the traditional realm - the Java developer who knows J2EE in and out but little aside, for example - will continue to shrink.

    Flexibility certainly helps, but this is a capability primarily needed in growing/evolving environments. How many jobs these environments will be able to sustain looks uncertain to me.

    In any event, I've decided to leave the development profession for the above reasons. But, let me add this: I also got bored of it after the umpteenth fad incarnation.


Note: only a member of this blog may post a comment.