Presentation: Dynamically Re-Configurable Event-Driven Systems
What You’ll Learn
- Learn about the potential impact of using event-driven with stateful applications.
- Discover how to build systems that scale to cope with load peaks.
- Analyze and discuss challenges with scalability in the FinTech space.
Abstract
To take on new competitors and grab the attention of new generations of clients, traditional financial institutions are faced with the challenge of reinventing their service offering for a digital economy. Our new services must combine modern data types with legacy data, with interaction throughput's an order of magnitude higher. And when existing back-end systems are not architecturally or technologically geared up for these challenges, a new solution approach is needed. In this talk, we cover a modern business agile approach that combines * Event driven business modeling and * Affinity collocation of data and processing to enable financial institutions to design, develop, test, deploy and change services fast in a controlled and non intrusive way.
Interview
Danny: I'm CTO of The Glue, so I'm heading up our architecture, design, and engineering teams. We're building a next generation engagement platform for banks. My main focus is to make sure that it has all the functionality and features the banks are expecting. As part of it, there are some complex issues—that I will present in my talk—that need to be solved. I also focus on facilitating people to come up with pragmatic solutions for the problems we face using a variety of new technologies.
Danny: The biggest challenge is guaranteeing exactly once processing of the events. This is extremely, extremely important in the financial world—once you have acknowledged an event, we take on the responsibility to make sure that whatever the action is linked with, it will be executed. No matter what happens, we must assure that it gets executed. So it’s absolutely the biggest challenge in this type of system. Another challenge is scalability to cope with load peaks, you cannot just move the data around, or you can move it around it has a cost, so it's this balancing of scalability for processing versus having heavy data—which is heavy to replicate, is also an issue for which a solution will be found. And that's exactly what we've tried to solve in our system.
Danny: I'm going to pose challenges to the audience and try to give a small example for scalability. Typically, in a financial application, you know quite well how the load will evolve, with the exception of the things happening in the stock market. If it's about payments for instance you know that on the first day of the sales or on the weekend before Christmas there will be a high increase in electronic payments. So you can plan your scalability in advance, but you still must be able to do this scaling. So I'll be introducing a problem, with some small example and then say how we in our system we solve that.
Danny: I think solution architects will get a lot from this talk, as well as CTO’s who are interesting in learning about the challenges we faced, and overcome.
Danny: The two messages I think they should take away with it is, firstly, if you have an application that must be stateful—especially with shared state—if you want use an event-driven way, there's quite some impact. The second thing is how to build a system such that people who are not developer rockstar's can still use it successfully.
Danny: If it's about efficient development it's definitely investing in a fully automated DevOps chain, continuous integration. This is not new, but absolutely necessary. And the second thing is, I would absolutely look at everything that has to do with being able to have your systems deployed on a cloud-based system, anything which requires dedicated hardware or which can only run on a local systems is doomed.
Similar Talks
Tracks
Monday, 26 June
-
Microservices: Patterns & Practices
Practical experiences and lessons with Microservices.
-
Java - Propelling the Ecosystem Forward
Lessons from Java 8, prepping for Java 9, and looking ahead at Java 10. Innovators in Java.
-
High Velocity Dev Teams
Working Smarter as a team. Improving value delivery of engineers. Lean and Agile principles.
-
Modern Browser-Based Apps
Reactive, cross platform, progressive - webapp tech today.
-
Innovations in Fintech
Technology, tools and techniques supporting modern financial services.
Tuesday, 27 June
-
Architectures You've Always Wondered About
Case studies from the most relevant names in software.
-
Developer Experience: Level up Your Engineering Effectiveness
Trends, tools and projects that we're using to maximally empower your developers.
-
Chaos & Resilience
Failures, edge cases and how we're embracing them.
-
Stream Processing at Large
Rapidly moving data at scale.
-
Building Security Infrastructure
How our industry is being attacked and what you can do about it.
Wednesday, 28 June
-
Next Gen APIs: Designs, Protocols, and Evolution
Practical deep-dives into public and internal API design, tooling and techniques for evolving them, and binary and graph-based protocols.
-
Immutable Infrastructures: Orchestration, Serverless, and More
What's next in infrastructure. How cloud function like lambda are making their way into production.
-
Machine Learning 2.0
Machine Learning 2.0, Deep Learning & Deep Learning Datasets.
-
Modern CS in the Real World
Applied, practical, & real-world dive into industry adoption of modern CS.
-
Optimizing Yourself
Maximizing your impact as an engineer, as a leader, and as a person.
-
Ask Me Anything (AMA)