The perils of Commoditization of Software Development
We still remember the days when software developer is considered as a “brainworker” – someone whose profession involves using their brain to solve problems. Software development is more than having technical skills; it requires understanding of the challenge, the alignment of the solution to the business challenge and development of the solution using technical skills.
So, what changed in this equation of a software developer? Did the businesses evolve so well that their problems don’t require the brain skills? What happened is that the software development has become commoditized… in fact, it’s the fallacy that’s created! There are some providers that may be seeing some short-term gains. But, what does the future hold?
Economic theory states that a commodity is an economic good or service that has the following characteristics:
Raw material – it’s mostly a raw material or refined version of it
Fungible – interchangeable and doesn’t matter who you get it from
Mass-produced – it can be mass-produced
Price – determined as a function of its market as a whole
The ability for industrial scale production with universal standards create fungibility with these products. Ex: Gold, sugar, electricity, etc. Note that commodity doesn’t mean that it’s cheaper. Gold and sugar obviously are not in the same price range; Gold isn’t cheap… but yet a commodity due to these characteristics.
Now, let’s look at the artificial commoditization done to the software development in the outsourcing model. With promised abundance of availability of developers for mass production and lower prices, the outsourcing vendors are falsifying the fungibility of the product/service they provide. There are several problems with this situation. “Abundance of developers” doesn’t necessarily equate to “qualified and skilled resources”. They offer low pricing because they have low quality developers and lack standard procedures. How can a provider with low quality claim that their services are interchangeable with another provider with a higher quality, better resources and higher standards? Why do we hear some clients scream that outsourcing sucks?
The outsourcing spectrum is filled with vendors that devalue software development (the need for using brain) by showcasing rock bottom prices and showing “low cost” as their only value. These vendors are creating a perception of commodity and some of them have succeeded in making businesses believe that all outsourcing providers are the same and the output is the same. The reality is – software development still needs brainworkers and not all outsourcing vendors perform to the same quality standard and technical excellence.
Who is benefiting from this alleged commoditization of software development – businesses or providers? Both parties are losers in this eventually. There are success stories for businesses that got their outsourcing engagements right. Both businesses and providers should approach the outsourcing more thoughtfully and effectively. Businesses need to acquire enough knowledge of the outsourcing landscape and have to institute a holistic approach to effectively assess the value of the providers. Businesses need to understand the skills they must have to succeed in an outsourcing engagement.
Providers must focus on quality, standards, consistent delivery and value creation. Businesses can’t just say they want more than lower costs from outsourcing relationships; they need to reward the providers that provide value – the brainworker! As long as the outsourcing decisions are made on lowest-cost basis, the ill-effects of the current software development commoditization continue.