One thing that fascinates us all about monolithic structures is that how such grand structures are made from a single stone. But the very fact that they were monoliths has made them relics now as they could not be changed or moved by the passing time.
Similar thing is happening to the monolithic software architectures in financial services. No matter how useful they were in their time, they are not able to step up to the changes that are needed to be in sync with the rapid changes happening in financial services industry.
To keep up with the rapid pace of advancement in FinTech, these monolithic architectures are being replaced by the cloud native applications based on the microservices. While a handful of FinTech companies and banks such as Singapore’s largest bank DBS are using microservices in their FinTech services, we at Fintegrate Zone 2018 are bringing you the industry best cloud enabler – BlazeClan for pushing the envelope on using Cloud Computing for FinTech.
What are Microservices ?
By definition, Microservices is an architectural approach to build applications in such a way that the whole application is not a single unit, but a collection of small units called as services.
A service has specific business logic and solves a specific problem. A service can be upgraded, scaled and deployed without affecting the other services; a bunch of such services put together form the whole application.
From a FinTech stand point, a service may be as small functionality as fetching customer’s account balance and a Microservices is a set of such services resulting in a whole digital product of a bank or FinTech company.
What’s so great with microservices in FinTech?
There are so many benefits of using microservice in financial services industry as they take out the shortcomings of the monolithic architecture. Few of those benefits are :
Microservices based application is a set of loosely coupled services. So any change in one service (e.g. changing the database structure for storing customer records in a bank) would not affect other services (getting customers account details for verification).
- While using microservice architecture, since the client is completely decoupled from the service, there is no need to change the how client calls a service (e.g. getting account balance) even if the service is completely rewritten.
- Since the market is changing every second in the industry, launching a new digital product should not take too long. As services are developed independently in this architecture, it takes a way less time to get a new product ready for market as compared to monolithic architecture.
- In this architecture we can define some specific functionality that would be used only in one service not on whole application. For example, it would make sense only to cache data for a customer’s current transaction, not his/her past transaction details.
Things to consider before using microservices
There are few things to be taken consideration while moving from the monolithic IT architectures to microservices based architecture. Following is the small sum up those:
- Each service in microservices architecture should have two things defined clearly. One is scope i.e. what specific task it is supposed to perform (avoid adding too much functionality). An example of a service could be handling user request to open an account and verifying them, not including the whole account opening functionality. It is also important to specify the format in which it would respond to an API call.
- Second thing is to decide is whether a service would have it’s own small database or it would be calling a large database for records. This decision is based on certain criterias such as speed and security.
- Decide the architecture for holding your applications on the cloud. There are few platforms to pick from, such as Kubernetes by Google and Docker by Docker foundation. Amazon is also a big name in such services providing AWS lambda as their computing platform and ECS(Elastic Container Service) as their container management service.
- Last thing is to pick up the tools to deploy your application after being developed. There are tools to automate the devOps which make the life easy. The above mentioned containers with different devOps automation tool make deployment of microservices very smooth.
Microservices based architectures are going to yield great benefits for financial services industry with the users also reaping dividends from the new options gained from the use of the technology.
Come be a part of a holistic education on microservcies changing the dynamics of Financial landscape at Fintegrate.