If a CIO went into a coma 5 years back and wakes up today, he/she will see a world that is drastically different from the time he/she slipped into coma. The very approach to IT has changed over the past few years, enabled by various tools and cultural adjustments. Cloud became the canvas on top of which approaches like agile and devops, combined with the change in software architecture to Microservices, is completely reshaping how IT is done. We could even claim that, in many enterprises, this change is even reshaping how business is done.
When cloud came into picture, we claimed that cloud is leveling the playing field for startups and helping them compete effectively with large behemoths. Now we could flip this around and argue that large enterprises are no longer getting disrupted by agile startups. The transformation started with cloud computing, further enabled by DevOps and the move to Microservices architecture, is helping even the larger enterprises to be more agile. At the heart of this organization wide agile transformation is Continuous Delivery.
Continuous delivery is about reducing the time it takes from idea to code to production and have several production deployments every day instead of months. It is about automation to reliably deliver changes to software in production every single day. While discussing continuous delivery, many people talk about automation and most of the discussions fail to dig through the importance of abstraction and standardization could play in enhancing the benefits of such automation. The success of continuous delivery lies not just in automation but in right automation leading to continuous successful delivery. The role of automation is in decreasing the errors caused by human beings. But if the very process of automation itself includes human errors that could creep in through the various configurations across the deployment pipeline that is part of the most DIY automation platforms, the benefits are severely impacted. This is where standardization through “abstraction of components + automation” play a compelling role.
By using standardized platform that abstracts away the complexities at the application deployment platform level, not only the needs of automation in the continuous delivery pipeline is taken care of but it also smoothens out the very continuous delivery pipeline itself. By reducing the moving parts Ops needs to monitor and manage, they are allowed to focus on other issues related to resource allocation, governance, regulatory compliance, etc.. Especially, with the proliferation of Microservices architecture inside enterprises, governance of higher order services is going to be key. The use of standardized platform across the delivery pipeline relieves Ops from fire fighting mode to innovation mode. The standardized platform ensures the success of continuous delivery and Ops can focus on scaling the success instead of ensuring the success. As a CIO, you would want to reduce the friction across all aspects of IT and continuous delivery pipeline is one of them.
Modern Enterprise is all about agility and visibility across the entire organization. Standardization through abstraction plays a critical role in reducing the friction inside the modern enterprise. A CIO who wants to transform their organization into a Modern Enterprise, should keep this as the central mantra in their modernization strategy.