The Next Generation of Banking
- Sam Martindale
- Feb 25
- 2 min read
Updated: Mar 20
OVERVIEW
The Bank attended our presentation at NSBCon 2014 and invited us to validate their initial version of a decoupled message-based architecture. The Bank’s existing Core Banking System, which managed daily functions like account and transaction management, reconciliation, customer service, and reporting, was a mix of off-the-shelf components linked to a monolithic application that was struggling to meet their operational demands. Early in our engagement, they introduced the innovative concept of “Banking-as-a-Service” that they wished to start developing. The main challenge of the Banking-as-a-Service platform was that it required creating their own API-driven, 24/7 banking Core, built entirely from the ground up.
CHALLENGES
Most core banking software on the market relies on outdated technology, lacks extensibility, and faces scaling challenges while trying to maintain acceptable performance levels. Typically, scaling is achieved by adding hardware, which results in diminishing returns. The bank aimed not only for performance but also for the ability to handle thousands of transactions per second without deploying additional instances of the entire core. The system was designed with innovative features like real-time transaction settlement and sub-second response times for every request. There was a strong emphasis on aligning with established business workflows and concepts, while retaining the ability to quickly develop new features in response to emerging requirements with minimal disruption to existing systems. Importantly, it needed to ensure financial accuracy and build high levels of confidence among partners, business users, and regulatory agencies.
SOLUTION

The team applied Domain-Driven Design principles to create and implement a robust solution using standard enterprise patterns. Throughout the design and implementation phases, technical and business workflows were aligned, promoting strong collaboration between business SMEs and system developers. This collaboration led to the development of robust features with clear value. For inter-domain communication, a message-based architecture was employed using Particular’s NServiceBus platform. This approach simplified the implementation of reliable, scalable request/response and pub/sub patterns, enhanced by Particular’s advanced monitoring tools.
The system is structured into Payment domains (ACH, Checks, Debit Cards, RTP, Wires, Account Transfers), Operational domains (Auditing, OFAC, Webhooks, Tenant Management, Internal AML), and the transactional Core. By isolating Payment and Operational concerns from the Core into separate silos, transactional operations became exceptionally fast and reliable. With well-defined context boundaries, feature development and enhancements have been able to progress and be tested independently. Each domain includes a complete vertical slice of the system - APIs, messaging services, and database. By maintaining entirely self-contained domains and utilizing a robust message-based architecture, the promises of DDD are successfully achieved: clear areas of responsibility, fast automated builds, and the capability to deploy individual domains rather than the entire system.
TECHNOLOGIES USED
❖ C#
❖ .NET Core 3.1
❖ NServiceBus
❖ Microsoft Sql Server
❖ Web API
❖ MSMQ
❖ NHIbernate
❖ Autofac
❖ Angular
❖ New Relic
OUTCOME
The Bank is experiencing an unprecedented level of flexibility in the financial services sector, enabling the swift adoption of new technologies and methodologies. Major partners are leveraging the platform, and new partners are actively joining across various industries. The modern API-first approach simplifies integration for FinTech partners creating innovative payment, money management, and finance solutions for both consumer and business banking. The system is already handling hundreds of millions of dollars and providing increasing value.