Event-Driven Architecture: the future of core banking system design
Event-driven architecture (EDA) is one of the most modern and dynamic approaches in designing information systems. In the case of core systems for banks and fintechs, the application of event-driven architecture can bring numerous benefits and improvements. In this article, we will present the advantages and disadvantages of such an architecture and discuss the best practices that can be applied.
EDA is gaining significant traction in the financial services sector. Companies within the industry are swiftly upgrading their digital infrastructure to better attract and retain customers.
Numerous financial services firms are implementing EDA to enhance both flexibility and scalability. Consider a cloud-based payments platform, where the demand for person-to-person (P2P) and person-to-merchant (P2M) payments surged dramatically, reaching over 1,500 businesses and 1.5 million users within just two weeks of its launch. The EDA framework effectively managed the burst campaigns and rapid increase in user volume.
EDA is particularly well-suited for boosting agility and scalability, commonly appearing in microservices-based applications and other systems with decoupled components.
What is Event-Driven Architecture?
Event-driven architecture revolves around the processes of creating, detecting, subscribing to, and reacting to events. An event signifies a change in the state of an object, such as selling an investment. The act of selling initiates an event.
In contrast, traditional service-oriented architecture handles data in a static manner—by collecting and storing it—rather than treating data as dynamic. In reality, our actions are event-based, whether they are responses to requests from individuals or machines. For example, in financial services, a mortgage application transitions through various stages from submission to approval. Each of these stages constitutes an event.
Event-driven architecture is crucial because it enables organizations to react to events in real-time. It supports simultaneous processing of activities, allowing related tasks to occur in parallel rather than sequentially. This significantly enhances the speed and flexibility of any given process.
Event-driven architecture is crucial because it enables organizations to react to events in real-time.
EDA in practice
Just consider the process of loan origination. Numerous checks and balances are required once someone submits a loan application. One person needs to perform a credit check. Another might need to confirm the customer’s bank account balance. Someone else has to approve the application. Meanwhile, the applicant may check back in a few minutes to see if their application has been accepted. Using an EDA architecture, these processes can be managed simultaneously. Events can be created for each step, allowing them to occur concurrently.
Another example involves onboarding a small business client. Today, the onboarding experience must be entirely digital. If it takes longer than seven minutes, the customer might abandon the process and opt for a FinTech company that offers a similar product in just three minutes. During the onboarding process, with all the questions posed to the customer, EDA enables the simultaneous pre-approval of additional products and services, such as a line of credit, a credit card, or even payroll services.
EDA and the cloud
While it's possible to implement an event-driven architecture (EDA) on local servers, the benefits are far more pronounced when utilizing the cloud. It's important to note that cloud architectures are not inherently event-driven, but the characteristics of both complement each other perfectly.
Event-driven architectures inherently provide speed, scalability, and flexibility. These qualities align well with cloud architectures, which achieve horizontal scaling by design. Therefore, the combination of EDA and cloud computing is highly synergistic. Additionally, hosting EDA on the cloud allows for AI to monitor for irregularities and respond to multiple events simultaneously.
The benefits are far more pronounced when utilizing the cloud.
For banks, the need to quickly deliver products and services is vital to stay competitive. With event-driven architecture, even large banks burdened with legacy systems can rival online mortgage lenders, offering a wider range of products to customers more efficiently.
EDA and distributed systems
Today, our work heavily relies on a distributed computing model, featuring distributed services and serverless designs. EDA plays a crucial role in this setup. There are various methods to construct distributed systems. We often face the choice between a request-response architecture and an event-driven model. In many cases, the request-response systems could be more effectively executed within an EDA framework. Unlike the request-response model, an EDA setup allows the system to automatically activate its nodes. This capability enables quicker and more efficient management of bandwidth spikes. In an EDA, servers automatically scale up or down based on traffic demands. Traditional architectures, on the other hand, require manual server activation. The automatic adjustment in EDA not only manages flows dynamically and without manual intervention but also proves to be more cost-effective.
Why opt for EDA instead of just going serverless?
With the current wave of migrations, businesses need to align their choices with their strategic goals and desired outcomes. Adopting a serverless approach can certainly boost performance, but undertaking a comprehensive re-architecture can offer even greater benefits.
Modern architectures are transitioning towards microservices and decoupled designs. Event-Driven Architecture (EDA) is essential for achieving this. EDA provides scalability, flexibility, and the ability to quickly adapt to market changes.
EDA in BOS System
BOS's event-driven framework facilitates smooth integration with various systems while offering significant flexibility and scalability. The communication model in BOS employs a publish-subscribe mechanism, where events are generated by producers and received by consumers. This publish-subscribe method ensures effective and scalable interaction between the system's components.
BOS is equipped with a powerful event processing engine capable of managing a large number of events in real-time. This engine utilizes an internal event bus for simple event management and routing. The event bus directs events to the correct components and ensures timely processing. Additionally, the event processing engine supports the filtering, transformation, and aggregation of events, enhancing its flexibility.
The event-driven design of BOS simplifies the integration with third-party systems. This model promotes efficient data exchange and sharing between BOS and other systems, ensuring high interoperability. Furthermore, the system's APIs facilitate easy integration with additional solutions.
Is EDA for your business?
If your data processes rely heavily on sequential steps depicted in a flowchart, then EDA might not be the best fit for your needs. Additionally, if your system doesn't experience massive bottlenecks during user logins, the shopping server traffic is manageable, and manually increasing capacity by creating tickets suffices, then adopting EDA may not be essential for your operations.
Examples of the use of EDA in popular fintechs
I. Revolut
Revolut uses an event architecture to support its global payments. EDA allows systems to scale effectively, enabling millions of transactions to be processed per second. This allows Revolut to offer fast and reliable services to its customers around the world.
II. Square
Square uses Apache Kafka to integrate its various financial services. Event architecture allows for smooth scaling and management of data from various sources, which is crucial for effective transaction handling and data analysis
III. PayPal
PayPal has implemented an event architecture to increase the flexibility and scalability of its payment services. EDA enables PayPal to respond faster to market changes and better protect users against fraud by analyzing and processing events in real time.
IV. Robinhood
Robinhood uses an event architecture to provide its users with instant notifications about stock price changes. EDA enables rapid processing of market data and providing up-to-date information to investors, which is crucial for making quick investment decisions
V. Stripe
Stripe uses event-driven architecture to support its payment systems, which allows for fast and efficient payment processing. EDA minimizes latency and improves user experience by ensuring seamless transaction processing
*****
Are you thinking about using EDA in practice? Check out our fully flexible BOS core banking system.
Reach out for details -->