Outsourcing is a standard and a norm for almost all the companies globally. Those services which have clear control metrics like BPO and KPO operations are easy to manage because of the nature of transparency in the process itself.
This advantage of transparency does not exist in areas like IT development. Although there are proven standards on IT development lifecycle, the most famous of them being CMMI, most of the big IT service providers find enough loopholes to keep their future business opportunities intact by creating complexities in the developed systems, leaving little option for the customer, but to retain them for future maintenance of those systems.
The magnitude of these small complexities can be mind boggling when it comes to impact on the company’s bottom line and future expansion.
In one of the companies I came across this issue, it was observed that the system design and development work was left completely to the service provider. Customer was only focused on getting end results, which they got without issues. In essence, there was no reason for customer to be dissatisfied.
There were several such systems developed by the vendor and delivered to the end user. It only started surfacing later that any change required in the system required more than normal time and vendor got money for the elongated time. Documentations were deliberately kept to minimum and changes were rarely updated. It was observed that system were designed so rigid, but within the defined scope that even smallest change required code to be changed at several places. This could have been done through simple configuration in a good developed environment.
To add to the cost to the customer, systems promptly required technical assistance which needed vendor to put full time staff to support. Non standard components used required even further expert intervention and higher billing. Integration to other system became equally complex and prone to errors. Over years, a small job became a difficult big job and changes complex and expensive.
Although, it was difficult to assess, it was clear that the vendor has created complex systems to suit their future business continuity with the customer.
Later when this customer opted to start their own Captive IT unit in India, the team found complexities and lack of standardization which not only resulted in excess efforts and money by service providers but also became a major bottleneck in quick business changes. This indirect loss amounted to several millions in lost opportunities.
If not for the Captive unit team, customer would have never realized the issues due to lack of standardization, messaging platform and complex coding techniques and would have continued to grow their business with these constraints.
It is therefore very important to have excellent internal team to design, create standards and check the quality of codes given by the vendor every time any system is outsourced. Lack of control and setting standards would have far reaching costly impacts on the business.