Best practices of implementing DevOps in the banking industry

11.09.2019 Blog

The banking industry has always invested huge money in the IT infrastructure. Without even noting we use banking apps in our phones, internet banking via web-sites and 24/7 customer support. All these innovations were implemented for user convenience and because of big competitiveness in the bank industry. For example, nowadays mobile banking is very demanded and the industry is forced to adjust to it.

Despite the newest technologies, there are still legacy infrastructures in the banking industry. This happens because of the high requirements for security. So, we have the necessity of being modern and some unwieldy legacy parts and strict control of the development. Such control is realized by the Waterfall model of development that, on one hand, was designed to ensure safety and, on the other, provides changes very slowly and needs a huge amount of time for every update.

Thus, we have the next problem: the high speed of technology development requires frequent updates but the Waterfall model can’t provide it.

Is there any answer? Yes, it’s called DevOps culture.

You might hear something about DevOps-as-a-Service but there is a little misunderstanding. Something “as-a-service” you might rent and use, for example, infrastructure. The DevOps is more wide term includes both cultural and technical approaches.

If you’re totally tired of your legacy banking system, slow updates and outdated development tools, keep reading, we have a solution for you.

What is DevOps and how it can be adopted in a bank?

The DevOps itself is an approach to software development. It provides:

  • great collaboration between development, QA and operations teams;
  • full-stack software development expertise;
  • automatization of repetitive actions;
  • modular application architecture;
  • agile development methods.

Great collaboration of development, QA and Ops teams. The main drawback of the Waterfall model is a long time of the software development and continuous “throwing over the wall” of the tasks and responsibility. The developer writes the code, QA tests it and gives it to the Ops engineers, so now making the code work in production is the responsibility of IT operations. DevOps model makes the collaboration of these specialists much more effective and as a result, you have a fast and efficient development process. 

Full-stack software development expertise. DevOps team includes a lot of different specialists who can work with a different part of the current infrastructure to modify it.

Automatization of repetitive actions. The DevOps methodology provides great automatization of routine processes. DevOps engineer creates the manifests where all the infrastructure details are written. It looks like a simple text file where the developer can change some parameters to get a new environment for testing and deployment. But to make such file DevOps specialist needs to analyze a lot of project details and study a lot of tools like Terraform, Jenkins, Kubernetes, etc.

Modular application architecture. DevOps methodology helps split the monolithic application into the microservices to make the whole process easier to change, update or replace some parts.

Agile development methods. Agile as the approach for development provides writing code in small chunks for quick testing and adding them to the main code. As a result, the development process becomes more flexible and new features can be added much faster, making your products and services much more customer-centric.

How is DevOps implementation in the banking going?

The DevOps adoption process in banking looks quite similar to the other areas. At first DevOps engineers assess the current system and workflows to understand what advantages, disadvantages and bottlenecks exist. After that, they create a strategy of implementation with milestones. The strategy will describe all the main points of DevOps implementation. For example, the type of cloud migration, tools for increasing security, etc. Then DevOps engineers provide IaC and CI/CD. These are the main points of DevOps methodology, which mean Infrastructure as Code and Continuous Integration/Delivery. The first point allows to use manifests and write code in small batches, the second provides automatization of the development, testing and deployment processes.

How to adopt DevOps in the bank industry?

The DevOps implementation looks very attractive but needs in-depth knowledge and experience of specialists who will provide it. One of the best ways of DevOps implementation is hiring the dedicated team from the Managed Service Provider (MSP). Such a team includes all the specialists you need (developers, DevOps, Big Data specialists, DevSecOps and other) and you don’t need to look for them for a long time and hire one by one.

Also, dedicated teams usually have a wide experience in different areas, including banking, so they have ready solutions for most common challenges and know how to work with the newest tools and technologies.