SlideShare a Scribd company logo
1 of 37
Meetup
Journey to Event-Driven Architecture
Suraj Pillai
Senior Solutions Engineer
Confluent
/suraj-pillai-confluent
Normal
Applications
(i.e., monoliths)
Monoliths
are hard to
think about
Monoliths
are hard to
change
5
Re-
integration
There are no good
ways to integrate
microservices
Filesystem
Database
Integrating
Microservices
through the
database
● “I have a database and I know how to use it.”
● Eventually causes services to co-mingle.
● Violation the «bounded context»
● Great to use inside a service boundary!
● Terrible for sharing data or negotiating change.
RPC
Integrating
microservices via
RPC
● Avoids problems of database integration
● Feels natural
● Aligns with the request/response paradigm
● Problem: cascading failures
● Question: how do you debug this system?
● Answer: you build a log.
🤔
Events?
What’s an
event?
A shared narrative describing the
evolution of the business
over time
A combination of:
Notification
State transfer
What’s an event?
Also,
events
are immutable.
What’s an event?
There has been a revolution; organizations must become real time;
to become real time, they must become event driven
Transitioning to event-first thinking
Event-first thinking changes how you think about what you are building
Event-first analog: I walk into a room, generate an “entered room” event and the light turns on.
This is a reaction to an event.
Event-command analog: I walk into a room, flip the light switch and the light turns on. This is a
command.
Event-command pattern
Event-first pattern
Event-first pattern
Benefits of the event-first approach
● Decoupling: Processors don’t know anything about upstream or downstream processors
● Encapsulation: There are clean boundaries between processors.
● Evolutionary change: The system and events can change over time.
● Event sourcing: When using a log and log-aware stream processors, we gain the ability to
potentially rebuild and restore application state.
Evolution of
Financial Services
60’s -90’s
Mainframe
Observations:
1. Primary used for reconciliation
and bookkeeping functions.
2. Long EOD processes
3. Clearing functions largely
manual.
4. Reduced fraud between
collection and reconciliation.
5. Allowed for easier and more
accurate bookkeeping and
profit reporting.
6. Gave the birth to a generation
of super-tellers
7. Most if not all functionalities
within mainframe.
3270
26
The early 90’s
Mainframe
Observations:
1. GUI interface at branch
resulting in higher productivity.
2. Newer services available at
branches
3. Lowered cost of operations.
4. Clearance & settlement
activities become faster.
5. EOD becomes faster and
streamlined.
6. Newer challenges - cost of
operations of branches, cash
handling, IT teams at branches
and HQ.
7. Risk management - Basel
Accords come into existence.
Normal rule based haircuts
imposed.
3270
Branch
Teller
Systems
Branch
Server
MQ
27
The mid 90’s
Mainframe
Observations:
1. GUI interface at branch
resulting in higher productivity.
2. Newer services available at
branches
3. Lowered cost of operations.
4. Clearance & settlement
activities become faster.
5. EOD becomes faster and
streamlined.
6. Newer challenges - cost of
operations of branches, cash
handling, IT teams at branches
and HQ.
7. A new thing called the internet
makes an appearance.
8. ERP systems optimise back-
office functions.
3270
Branch
Teller
Systems
Branch
Server
MQ
ATM Website
Tandem - Base24
ISO 8583
HR Finance Risk
Custom
28
The first decade of the 2000’s
Core
Banking
Observations:
1. Emergence of Core Banking
players and tremendous
optimisation of banking
operations.
2. Introduction of SOA & ESB
patterns resulting in scale and
unbundling of capabilities.
3. Emergence of new channels -
Internet and in the later half
mobile.
4. Fraud and Anti-money
laundering systems make an
entry.
5. Large IT teams and outsourcing
contracts.
6. Systems evolve into monoliths
and become difficult to change.
7. Banks become super powerful
as controllers of data and
customer information.
8. Emergence of Silicon Valley
9. Real-time payments emerge.
10. 24 x 7 services arrive.
Contact
Center
Core
enabled
branches
ATM
Internet
Banking
Tandem - Base24 HR
Finance Risk
Mobile
Banking
Account Origination Enterprise Data Warehousing
Liquidity Management Customer 360 CRM
Doc Mgmt. Campaign Mgmt. Business Analytics
ESB/ Integration Layer
Payments Credit Card AML/Fraud
SOA
Layer
29
The second decade of the 2000’s
Core
Banking
Observations:
1. The platform ecosystem
becomes the primary
acquisition and servicing
engine.
2. APIs reduce the cost of
transactions dramatically.
3. Microservices and event
driven architectures makes
features and functions de-
coupled which enables
faster change to systems &
processes and also faster
time to market for new
apps.
4. Security, fraud, risk & AML
become more real-time
5. Newer sources of revenue
emerge.
6. Payments becomes a
different business for banks.
7. Silicon Valley leads and IS
the competitor.
8. Insourcing happens at scale.
9. COVID -19 hastens digital
transformation as electronic
transactions dominate.
10. Cloud and Hybrid Cloud
Contact
Center
Core enabled
branches
ATM
Internet
Banking
Tandem - Base24 HR
Finance Risk
Mobile
Banking
ESB Layer
Payments Credit Card AML/Fraud
Ecosystem
External API layer
Customer
microservice
Product
Notification
Cross-Sell
Payment
Streaming Caching Internal API GW
Data Lake
Personalisation
Cust
360
Gov
Services
Microservices
30
Kafka- Event
Streaming
Platform
Streaming Platform
Pub / Sub
Storage
Processing
Summary:
1. Kafka used for event-
driven multi-legged
transactions spanning
Validation, Fraud
Detection, etc etc
2. Microservices developed
in Kstreams
3. Kafka Connect used to
connect other systems
such as Mainframes via
IBM MQ
Payment - Post Payment
API
Management
Layer
Validation
Fraud
Compliance
Mainframe
Payment
Commit
Connect
POST
/payment
Event-driven payment processing
Summary:
1. Get Payment status service
2. This KStreams service
joins data from multiple
Kafka topics
3. A materialized cache is
created in Kafka (indicated
by the “green” topic) which
has details on the payment
status. This data can then
be stored in a DB or
consumed by downstream
microservices
Payment- Get Payment Status
API
Management
Layer
Fraud Compliance Enrichment
Payment
Tracking
GET
/payment/{id}
Consume Events
Four pillars of event streaming
1. Business function: The payment processing pipeline
2. Instrumentation plane: How much money is transferred? How quickly are payments processed?
3. Control plane: Patterns to start, stop, pause, coordinate and autoscale
4. Operational plane: Dead letter queues (DLQs), error tracking & handling, deployment, config
management
Thank You
/suraj-pillai-confluent

More Related Content

More from confluent

More from confluent (20)

Eventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalkEventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalk
 
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent CloudQ&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
 
Citi TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
 
Build real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluent
 
Q&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service MeshQ&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service Mesh
 
Citi Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka MicroservicesCiti Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka Microservices
 
Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3
 
Citi Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging ModernizationCiti Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging Modernization
 
Citi Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time dataCiti Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time data
 
Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2
 
Data In Motion Paris 2023
Data In Motion Paris 2023Data In Motion Paris 2023
Data In Motion Paris 2023
 
Confluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with SynthesisConfluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with Synthesis
 
The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023
 
The Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data StreamsThe Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data Streams
 
The Journey to Data Mesh with Confluent
The Journey to Data Mesh with ConfluentThe Journey to Data Mesh with Confluent
The Journey to Data Mesh with Confluent
 
Citi Tech Talk: Monitoring and Performance
Citi Tech Talk: Monitoring and PerformanceCiti Tech Talk: Monitoring and Performance
Citi Tech Talk: Monitoring and Performance
 
Confluent Partner Tech Talk with Reply
Confluent Partner Tech Talk with ReplyConfluent Partner Tech Talk with Reply
Confluent Partner Tech Talk with Reply
 
Citi Tech Talk Disaster Recovery Solutions Deep Dive
Citi Tech Talk  Disaster Recovery Solutions Deep DiveCiti Tech Talk  Disaster Recovery Solutions Deep Dive
Citi Tech Talk Disaster Recovery Solutions Deep Dive
 
Citi Tech Talk: Hybrid Cloud
Citi Tech Talk: Hybrid CloudCiti Tech Talk: Hybrid Cloud
Citi Tech Talk: Hybrid Cloud
 
Partner Tech Talk Q3: Q&A with PS - Migration and Upgrade
Partner Tech Talk Q3: Q&A with PS - Migration and UpgradePartner Tech Talk Q3: Q&A with PS - Migration and Upgrade
Partner Tech Talk Q3: Q&A with PS - Migration and Upgrade
 

Recently uploaded

Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for Success
UXDXConf
 

Recently uploaded (20)

Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for Success
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
THE BEST IPTV in GERMANY for 2024: IPTVreel
THE BEST IPTV in  GERMANY for 2024: IPTVreelTHE BEST IPTV in  GERMANY for 2024: IPTVreel
THE BEST IPTV in GERMANY for 2024: IPTVreel
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
Connecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAKConnecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAK
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 

Journey to Event Driven Architecture

  • 1. Meetup Journey to Event-Driven Architecture Suraj Pillai Senior Solutions Engineer Confluent /suraj-pillai-confluent
  • 6. There are no good ways to integrate microservices
  • 8.
  • 10. Integrating Microservices through the database ● “I have a database and I know how to use it.” ● Eventually causes services to co-mingle. ● Violation the «bounded context» ● Great to use inside a service boundary! ● Terrible for sharing data or negotiating change.
  • 11. RPC
  • 12. Integrating microservices via RPC ● Avoids problems of database integration ● Feels natural ● Aligns with the request/response paradigm ● Problem: cascading failures ● Question: how do you debug this system? ● Answer: you build a log. 🤔
  • 15. A shared narrative describing the evolution of the business over time
  • 16. A combination of: Notification State transfer What’s an event?
  • 18. There has been a revolution; organizations must become real time; to become real time, they must become event driven
  • 19. Transitioning to event-first thinking Event-first thinking changes how you think about what you are building
  • 20. Event-first analog: I walk into a room, generate an “entered room” event and the light turns on. This is a reaction to an event. Event-command analog: I walk into a room, flip the light switch and the light turns on. This is a command.
  • 24. Benefits of the event-first approach ● Decoupling: Processors don’t know anything about upstream or downstream processors ● Encapsulation: There are clean boundaries between processors. ● Evolutionary change: The system and events can change over time. ● Event sourcing: When using a log and log-aware stream processors, we gain the ability to potentially rebuild and restore application state.
  • 26. 60’s -90’s Mainframe Observations: 1. Primary used for reconciliation and bookkeeping functions. 2. Long EOD processes 3. Clearing functions largely manual. 4. Reduced fraud between collection and reconciliation. 5. Allowed for easier and more accurate bookkeeping and profit reporting. 6. Gave the birth to a generation of super-tellers 7. Most if not all functionalities within mainframe. 3270 26
  • 27. The early 90’s Mainframe Observations: 1. GUI interface at branch resulting in higher productivity. 2. Newer services available at branches 3. Lowered cost of operations. 4. Clearance & settlement activities become faster. 5. EOD becomes faster and streamlined. 6. Newer challenges - cost of operations of branches, cash handling, IT teams at branches and HQ. 7. Risk management - Basel Accords come into existence. Normal rule based haircuts imposed. 3270 Branch Teller Systems Branch Server MQ 27
  • 28. The mid 90’s Mainframe Observations: 1. GUI interface at branch resulting in higher productivity. 2. Newer services available at branches 3. Lowered cost of operations. 4. Clearance & settlement activities become faster. 5. EOD becomes faster and streamlined. 6. Newer challenges - cost of operations of branches, cash handling, IT teams at branches and HQ. 7. A new thing called the internet makes an appearance. 8. ERP systems optimise back- office functions. 3270 Branch Teller Systems Branch Server MQ ATM Website Tandem - Base24 ISO 8583 HR Finance Risk Custom 28
  • 29. The first decade of the 2000’s Core Banking Observations: 1. Emergence of Core Banking players and tremendous optimisation of banking operations. 2. Introduction of SOA & ESB patterns resulting in scale and unbundling of capabilities. 3. Emergence of new channels - Internet and in the later half mobile. 4. Fraud and Anti-money laundering systems make an entry. 5. Large IT teams and outsourcing contracts. 6. Systems evolve into monoliths and become difficult to change. 7. Banks become super powerful as controllers of data and customer information. 8. Emergence of Silicon Valley 9. Real-time payments emerge. 10. 24 x 7 services arrive. Contact Center Core enabled branches ATM Internet Banking Tandem - Base24 HR Finance Risk Mobile Banking Account Origination Enterprise Data Warehousing Liquidity Management Customer 360 CRM Doc Mgmt. Campaign Mgmt. Business Analytics ESB/ Integration Layer Payments Credit Card AML/Fraud SOA Layer 29
  • 30. The second decade of the 2000’s Core Banking Observations: 1. The platform ecosystem becomes the primary acquisition and servicing engine. 2. APIs reduce the cost of transactions dramatically. 3. Microservices and event driven architectures makes features and functions de- coupled which enables faster change to systems & processes and also faster time to market for new apps. 4. Security, fraud, risk & AML become more real-time 5. Newer sources of revenue emerge. 6. Payments becomes a different business for banks. 7. Silicon Valley leads and IS the competitor. 8. Insourcing happens at scale. 9. COVID -19 hastens digital transformation as electronic transactions dominate. 10. Cloud and Hybrid Cloud Contact Center Core enabled branches ATM Internet Banking Tandem - Base24 HR Finance Risk Mobile Banking ESB Layer Payments Credit Card AML/Fraud Ecosystem External API layer Customer microservice Product Notification Cross-Sell Payment Streaming Caching Internal API GW Data Lake Personalisation Cust 360 Gov Services Microservices 30
  • 32. Streaming Platform Pub / Sub Storage Processing
  • 33. Summary: 1. Kafka used for event- driven multi-legged transactions spanning Validation, Fraud Detection, etc etc 2. Microservices developed in Kstreams 3. Kafka Connect used to connect other systems such as Mainframes via IBM MQ Payment - Post Payment API Management Layer Validation Fraud Compliance Mainframe Payment Commit Connect POST /payment
  • 35. Summary: 1. Get Payment status service 2. This KStreams service joins data from multiple Kafka topics 3. A materialized cache is created in Kafka (indicated by the “green” topic) which has details on the payment status. This data can then be stored in a DB or consumed by downstream microservices Payment- Get Payment Status API Management Layer Fraud Compliance Enrichment Payment Tracking GET /payment/{id} Consume Events
  • 36. Four pillars of event streaming 1. Business function: The payment processing pipeline 2. Instrumentation plane: How much money is transferred? How quickly are payments processed? 3. Control plane: Patterns to start, stop, pause, coordinate and autoscale 4. Operational plane: Dead letter queues (DLQs), error tracking & handling, deployment, config management