There has always been a fine balance between doing things with stability, availability, reliability, scalability and securely, and doing things fast and innovatively. This balancing act has been massively amplified by the increasing digitization of banking products and services, says Shiv Kumar Bhasin, CTO,
State Bank of India.
He points out in this regard to Bimodal IT, which is the practice of managing two separate, coherent modes of IT delivery – mode one focused on traditional waterfall model of delivery and the other mode on agile and continuous delivery. The Bimodal concept is deeply entwined with the DevOps and agile development philosophies revolutionizing IT. He says business change requirements for Core Banking Systems, Product Processor Platforms, Business Support Services Systems – Origination, Collections, Treasury, Risk and Compliance Systems etc – could use mode 1. However, in order to keep this layer of systems sufficiently agile, it is necessary to publish Standard API layer of services on top of these systems so that agility needs of channel services layer do not get impacted.
In order to ensure sufficient agility and collaboration (B2B, B2C), the channel services of banks need to adhere to mode 2 using Agile/Scrum methodologies and implementation of DevOps toolsets to meet the increasing digitization requirements of the bank, says he. According to him, the software development and infrastructure operations teams that work on the massive channel applications – mobile banking, internet banking, and ATM and contact center – serving the 482 million accounts of State Bank of India had a traditional environment. These teams with traditional heavy weight lifting processes for taking the code from development to production environments used to take few days to several weeks. In earlier days, business needs were met adhering to such manual, monolithic, heavy weight processes. But, in the fast changing world where customers would be accessing applications from different kinds of browsers (which have several releases in a year), different mobile OS/ browsers (again which have very agile release plans across a calendar year), the engineering teams have to face nightmares in certifying their developments across diverse set of ever changing browsers and OS environments. Customer delight requires all of these to be supported.
However, he is of the view that the silos among Software Delivery Life Cycle stages – requirements analysis, development and testing
– are diminishing due to adoption of agile development methodologies. Continuous delivery has blurred the silos by implementing Continuous Build and Continuous Integration, which has also streamlined requirements, development, code quality and building interfaces with subsystems/peripheral systems. Continuous delivery is nothing but deployment pipeline – end-to-end automation of the build, deploy, test, and release processes and these have had a number of knock-on effects, bringing some unexpected benefits. Automation results into usage of tools for DevOps across SDLC stages, eg Chef, Jenkins etc.
He maintains that the primary characteristic of DevOps culture is increased collaboration between the roles of development and operations. There are some important cultural shifts, within teams and at an organizational level, that support this collaboration.
Again, an attitude of shared responsibility is an aspect of DevOps culture that encourages closer collaboration, says he, adding it is easy for a development team to become disinterested in the operation and maintenance of a system if it is handed over to another team to look after.
One effect of a shift towards DevOps culture is that it becomes easier to put a new code in production. Bhasisn says this necessitates some further cultural changes. In order to ensure that changes in production are sound, the team needs to value building quality into the development process. This includes cross-functional concerns such as performance and security.
Automation is a cornerstone of the DevOps movement and it facilitates collaboration, Bhasin adds. Automating tasks such as testing, configuration and deployment frees people to focus on other valuable activities and reduces the chance of human error. Automation helps to get end to end processes documented and entire food chain of organization aware of the e2e processes. It brings lateral thinking to make these processes sufficiently nimble and agile. So DevOps is win-win for meeting time to market.
According to him, for making Bimodal and DevOps a realty, few key organizational changes are needed (i) Set-up of services group to develop API layer around core banking product processors, (ii) Merging digital channels development and infrastructure teams so that automated tools deployment across the teams will be supervised single handedly and increased collaboration, cohesiveness could be achieved for success of DevOps.