SlideShare una empresa de Scribd logo
1 de 33
Descargar para leer sin conexión
Building Fintech
with Microservices and Kubernetes
SEPTEMBER, 2018
Irakli Nadareishvili,
Sr. Director, SharedTech, Capital One.
Irakli Nadareishvili
Senior Director, SharedTech, Capital One
• API & Microservices Governance
• Capital One’s Developer Tooling
• Co-author of “Microservice Architecture”
inadarei
AGENDA
Microservices Way
DevOps and Infrastructure
Software Design with Microservices
Align Around the Goal
“Why does Capital One care
about Microservices?”
inadarei
11
“Speed and Safety at Scale and in Harmony”
Need for coordination is why we constantly
compromise between speed and safety.
Microservices Way:
inadarei
Microservices close the alignment loop!
AgileProcess:
Operations:
Product:
DevOps & CI/CID
Lean Product Dev
Toyota Production System: Think In Small Batches
Architecture: Microservices
inadarei
Data: Batch-size Is a Strong Predictor of Performance
Source: Accelerate, by Nicole Forsgren, PhD, Jez Humble, and Gene Kim
Getting to High-Performance Teams:
1 Measure Autonomy, to Gauge Progress
2 Combine Small Batches with Clarity on Long-Term View
3 Facilitate Experimentation and Design-Thinking
And yes, our teams are small (5 devs max), but that’s not the point.
inadarei
1. Measure Autonomy, to Gauge Progress
Because:
Knowing you’re on the right path is paramount.
inadarei
1. Measure Autonomy, to Gauge Progress
Initial attempts: tracking disruption events (qualitative).
Eventual (quantitative): Forsgren et al.’s metrics:
1. Lead time
2. Deploy frequency
3. Time to restore service
2. Clarity on Long-Term View
Because:
99.999% of tech teams have Agile Myopia
(not a scientific fact, but a strong belief based on years of observation)
inadarei
Unexpected, Simple Cure for Agile Myopia
3. Experimentation and Design-Thinking
Because:
Product-Market Mismatch and Rework
are devastatingly expensive.
inadarei
3. Experimentation and Design-Thinking
“You’ve gotta start with the customer experience and
work backwards to the technology. You can’t start with
the technology and figure-out where you’re gonna sell
it.”
– Steve Jobs at the 1997 WWDC
@source: https://youtu.be/FF-tKLISfPE?t=114
AGENDA
Microservices Way
DevOps and Infrastructure
Software Design with Microservices
At the beginning:
1. ECS-based container deployments +
custom code, Mesos, Nomad, Kube
2. Dozen+ of CI/CD implementations
3. Non-standard secrets management
4. Resiliency tests ran quarterly
5. Dozens of teams building their own infra
inadarei
Now and Going Forward:
1. Kubernetes packaged for Capital One
2. Federated Ops of Kubernetes Clusters
3. Unified CI/CD (using Spinnaker) and auditable release
management with inner-sourced pipeline patterns.
4. Enterprise Solutions: Hashicorp Vault, chaos
engineering, test execution, code analysis, container
analysis
inadarei
Local [Kubernetes] Workspaces:
github.com/skaffold-microservices/workspace
inadarei
Kubernetes is Architect’s Tool (not just ops)
1. PODs make sidecars an architectural
reality
2. Istio is the best thing since sliced bread
3. Being ubiquitous is a value by itself
inadarei
AGENDA
Microservices Way
DevOps and Infrastructure
Software Design with Microservices
APIs vs. Microservices?
We made sure to invest in clarifying where
“Microservicization” fit with the already
mature API-First culture.
inadarei
11
Microservices are not just small APIs:
Alexa
VoiceSkill
Chatbot
Web+
Mobile
App
inadarei
Our Design Process
1. Find Bounded Contexts w/ Event Storming
2. Identify Actors
3. Identify JTBDs
4. Define Queries and Actions
5. Design OpenAPI Spec
6. Get feedback on the spec
7. Implement APIs (usually w/ microservices)
inadarei
Bounded Contexts via Event Storming
Photos by: Justin Bachorik @justinbach
Example: Actors for DigiCoins
1. DigiCoin customer – a user using digicoin apps to
purchase or exchange digital coins.
2. DigiCoin Wallet – the platform
3. DigiCoin app – mobile app
4. …
DigiCoins is a fake exchange and wallet for digital currency. This is an entirely imaginary example for demo purposes only
inadarei
API Design: JTBDs
When _____ , I want to _____ , so I can _____ .
Circumstance, motivation, goal
Based on Alan Klement’s JTBD Story template https://jtbd.info/replacing-the-user-story-with-the-job-story-af7cdee10c27
inadarei
Example: JTBDs for DigiCoins
1. When a customer wants to buy coins they want to
see current price of a coin so that they can estimate
their buying power.
2. When a customer initiates coin purchase, they need
to add or reuse a payment method, so that they can
provide funds for the purchase
3. When a customer finalizes a coin purchase,
DigiCoins needs to charge the payment method, so
that it can make money
DigiCoins is a fake exchange and wallet for digital currency. This is an entirely imaginary example for demo purposes only
inadarei
Example: Queries for DigiCoins
1. Lookup of a coin “price”
1. Input: digital coin id, traditional currency code.
2. Response: conversion rate
2. Lookup of existing payment methods
1. Input: user identifier, payment type (coin, credit, bank transfer etc.)
2. Response: uuid and details of the payment method, status of the
payment method
DigiCoins is a fake exchange and wallet for digital currency. This is an entirely imaginary example for demo purposes only
inadarei
Example: Action(s) for DigiCoins
1. Charge a payment method to fund coin purchase
1. Input: payment method identifier and details.
2. Response: success or failure code
DigiCoins is a fake exchange and wallet for digital currency. This is an entirely imaginary example for demo purposes only
inadarei
Example: OpenAPI Spec
DigiCoins is a fake exchange and wallet for digital currency. This is an entirely imaginary example for demo purposes only
inadarei
Our Design Process
1. Find Bounded Contexts w/ Event Storming
2. Identify Actors
3. Identify JTBDs
4. Define Queries and Actions
5. Design OpenAPI Spec
6. Get feedback on the spec
7. Implement APIs (usually w/ microservices)
inadarei
QUESTIONS?

Más contenido relacionado

La actualidad más candente

Deploying Open Banking APIs on AWS
Deploying Open Banking APIs on AWSDeploying Open Banking APIs on AWS
Deploying Open Banking APIs on AWSAmazon Web Services
 
apidays LIVE Hong Kong 2021 - Digital Identity Centric Approach to Accelerate...
apidays LIVE Hong Kong 2021 - Digital Identity Centric Approach to Accelerate...apidays LIVE Hong Kong 2021 - Digital Identity Centric Approach to Accelerate...
apidays LIVE Hong Kong 2021 - Digital Identity Centric Approach to Accelerate...apidays
 
apidays LIVE India - Asynchronous and Broadcasting APIs using Kafka by Rohit ...
apidays LIVE India - Asynchronous and Broadcasting APIs using Kafka by Rohit ...apidays LIVE India - Asynchronous and Broadcasting APIs using Kafka by Rohit ...
apidays LIVE India - Asynchronous and Broadcasting APIs using Kafka by Rohit ...apidays
 
apidays LIVE India - Digital Trust Infrastructure - Key to digital transforma...
apidays LIVE India - Digital Trust Infrastructure - Key to digital transforma...apidays LIVE India - Digital Trust Infrastructure - Key to digital transforma...
apidays LIVE India - Digital Trust Infrastructure - Key to digital transforma...apidays
 
Identity Summit 2015: EnerNOC Case Study: The Transformation of IAM for EnerN...
Identity Summit 2015: EnerNOC Case Study: The Transformation of IAM for EnerN...Identity Summit 2015: EnerNOC Case Study: The Transformation of IAM for EnerN...
Identity Summit 2015: EnerNOC Case Study: The Transformation of IAM for EnerN...ForgeRock
 
apidays LIVE Singapore 2021 - Novel approaches in API security by Dr Tal Stei...
apidays LIVE Singapore 2021 - Novel approaches in API security by Dr Tal Stei...apidays LIVE Singapore 2021 - Novel approaches in API security by Dr Tal Stei...
apidays LIVE Singapore 2021 - Novel approaches in API security by Dr Tal Stei...apidays
 
API-first Integration for Microservices
API-first Integration for MicroservicesAPI-first Integration for Microservices
API-first Integration for MicroservicesWSO2
 
apidays LIVE LONDON - Evolving API Management for Event-Driven Digital Bankin...
apidays LIVE LONDON - Evolving API Management for Event-Driven Digital Bankin...apidays LIVE LONDON - Evolving API Management for Event-Driven Digital Bankin...
apidays LIVE LONDON - Evolving API Management for Event-Driven Digital Bankin...apidays
 
apidays LIVE Australia 2021 - Levelling up database security by thinking in A...
apidays LIVE Australia 2021 - Levelling up database security by thinking in A...apidays LIVE Australia 2021 - Levelling up database security by thinking in A...
apidays LIVE Australia 2021 - Levelling up database security by thinking in A...apidays
 
[WSO2Con EU 2017] How API Management at Suva is Helping in Reducing Costs to ...
[WSO2Con EU 2017] How API Management at Suva is Helping in Reducing Costs to ...[WSO2Con EU 2017] How API Management at Suva is Helping in Reducing Costs to ...
[WSO2Con EU 2017] How API Management at Suva is Helping in Reducing Costs to ...WSO2
 
APIs from the Edge to the Mesh
APIs from the Edge to the MeshAPIs from the Edge to the Mesh
APIs from the Edge to the MeshNordic APIs
 
What's New With WSO2 Open Banking
What's New With WSO2 Open BankingWhat's New With WSO2 Open Banking
What's New With WSO2 Open BankingWSO2
 
[APIdays Singapore 2019] API Management in a Istio Service Mesh with WSO2 API...
[APIdays Singapore 2019] API Management in a Istio Service Mesh with WSO2 API...[APIdays Singapore 2019] API Management in a Istio Service Mesh with WSO2 API...
[APIdays Singapore 2019] API Management in a Istio Service Mesh with WSO2 API...WSO2
 
apidays LIVE Paris 2021 - How password managers are built for Privacy and Sec...
apidays LIVE Paris 2021 - How password managers are built for Privacy and Sec...apidays LIVE Paris 2021 - How password managers are built for Privacy and Sec...
apidays LIVE Paris 2021 - How password managers are built for Privacy and Sec...apidays
 
[APIdays INTERFACE 2021] The Evolution of API Security for Client-side Applic...
[APIdays INTERFACE 2021] The Evolution of API Security for Client-side Applic...[APIdays INTERFACE 2021] The Evolution of API Security for Client-side Applic...
[APIdays INTERFACE 2021] The Evolution of API Security for Client-side Applic...WSO2
 
Core Banking Sharing: Finacle on AWS
Core Banking Sharing: Finacle on AWS Core Banking Sharing: Finacle on AWS
Core Banking Sharing: Finacle on AWS Amazon Web Services
 
Microservice: the phanot menace. Istio Service Mesh: the new hope. JEEConf 2019
Microservice: the phanot menace. Istio Service Mesh: the new hope. JEEConf 2019Microservice: the phanot menace. Istio Service Mesh: the new hope. JEEConf 2019
Microservice: the phanot menace. Istio Service Mesh: the new hope. JEEConf 2019Sergii Bishyr
 

La actualidad más candente (20)

Deploying Open Banking APIs on AWS
Deploying Open Banking APIs on AWSDeploying Open Banking APIs on AWS
Deploying Open Banking APIs on AWS
 
apidays LIVE Hong Kong 2021 - Digital Identity Centric Approach to Accelerate...
apidays LIVE Hong Kong 2021 - Digital Identity Centric Approach to Accelerate...apidays LIVE Hong Kong 2021 - Digital Identity Centric Approach to Accelerate...
apidays LIVE Hong Kong 2021 - Digital Identity Centric Approach to Accelerate...
 
apidays LIVE India - Asynchronous and Broadcasting APIs using Kafka by Rohit ...
apidays LIVE India - Asynchronous and Broadcasting APIs using Kafka by Rohit ...apidays LIVE India - Asynchronous and Broadcasting APIs using Kafka by Rohit ...
apidays LIVE India - Asynchronous and Broadcasting APIs using Kafka by Rohit ...
 
apidays LIVE India - Digital Trust Infrastructure - Key to digital transforma...
apidays LIVE India - Digital Trust Infrastructure - Key to digital transforma...apidays LIVE India - Digital Trust Infrastructure - Key to digital transforma...
apidays LIVE India - Digital Trust Infrastructure - Key to digital transforma...
 
Identity Summit 2015: EnerNOC Case Study: The Transformation of IAM for EnerN...
Identity Summit 2015: EnerNOC Case Study: The Transformation of IAM for EnerN...Identity Summit 2015: EnerNOC Case Study: The Transformation of IAM for EnerN...
Identity Summit 2015: EnerNOC Case Study: The Transformation of IAM for EnerN...
 
apidays LIVE Singapore 2021 - Novel approaches in API security by Dr Tal Stei...
apidays LIVE Singapore 2021 - Novel approaches in API security by Dr Tal Stei...apidays LIVE Singapore 2021 - Novel approaches in API security by Dr Tal Stei...
apidays LIVE Singapore 2021 - Novel approaches in API security by Dr Tal Stei...
 
API-first Integration for Microservices
API-first Integration for MicroservicesAPI-first Integration for Microservices
API-first Integration for Microservices
 
apidays LIVE LONDON - Evolving API Management for Event-Driven Digital Bankin...
apidays LIVE LONDON - Evolving API Management for Event-Driven Digital Bankin...apidays LIVE LONDON - Evolving API Management for Event-Driven Digital Bankin...
apidays LIVE LONDON - Evolving API Management for Event-Driven Digital Bankin...
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
apidays LIVE Australia 2021 - Levelling up database security by thinking in A...
apidays LIVE Australia 2021 - Levelling up database security by thinking in A...apidays LIVE Australia 2021 - Levelling up database security by thinking in A...
apidays LIVE Australia 2021 - Levelling up database security by thinking in A...
 
[WSO2Con EU 2017] How API Management at Suva is Helping in Reducing Costs to ...
[WSO2Con EU 2017] How API Management at Suva is Helping in Reducing Costs to ...[WSO2Con EU 2017] How API Management at Suva is Helping in Reducing Costs to ...
[WSO2Con EU 2017] How API Management at Suva is Helping in Reducing Costs to ...
 
APIs from the Edge to the Mesh
APIs from the Edge to the MeshAPIs from the Edge to the Mesh
APIs from the Edge to the Mesh
 
What's New With WSO2 Open Banking
What's New With WSO2 Open BankingWhat's New With WSO2 Open Banking
What's New With WSO2 Open Banking
 
HSBC and AWS
HSBC and AWSHSBC and AWS
HSBC and AWS
 
[APIdays Singapore 2019] API Management in a Istio Service Mesh with WSO2 API...
[APIdays Singapore 2019] API Management in a Istio Service Mesh with WSO2 API...[APIdays Singapore 2019] API Management in a Istio Service Mesh with WSO2 API...
[APIdays Singapore 2019] API Management in a Istio Service Mesh with WSO2 API...
 
apidays LIVE Paris 2021 - How password managers are built for Privacy and Sec...
apidays LIVE Paris 2021 - How password managers are built for Privacy and Sec...apidays LIVE Paris 2021 - How password managers are built for Privacy and Sec...
apidays LIVE Paris 2021 - How password managers are built for Privacy and Sec...
 
[APIdays INTERFACE 2021] The Evolution of API Security for Client-side Applic...
[APIdays INTERFACE 2021] The Evolution of API Security for Client-side Applic...[APIdays INTERFACE 2021] The Evolution of API Security for Client-side Applic...
[APIdays INTERFACE 2021] The Evolution of API Security for Client-side Applic...
 
Core Banking Sharing: Finacle on AWS
Core Banking Sharing: Finacle on AWS Core Banking Sharing: Finacle on AWS
Core Banking Sharing: Finacle on AWS
 
Microservice: the phanot menace. Istio Service Mesh: the new hope. JEEConf 2019
Microservice: the phanot menace. Istio Service Mesh: the new hope. JEEConf 2019Microservice: the phanot menace. Istio Service Mesh: the new hope. JEEConf 2019
Microservice: the phanot menace. Istio Service Mesh: the new hope. JEEConf 2019
 
ING microServices
ING   microServicesING   microServices
ING microServices
 

Similar a Building Fintech with Microservices and Kubernetes @ API World 2018

apidays LIVE Paris - Microservices, up and running by Irakli Nadareishvili
apidays LIVE Paris - Microservices, up and running by Irakli Nadareishviliapidays LIVE Paris - Microservices, up and running by Irakli Nadareishvili
apidays LIVE Paris - Microservices, up and running by Irakli Nadareishviliapidays
 
APIDays 2020 - SEED(S) API Design Methodology
APIDays 2020 - SEED(S) API Design MethodologyAPIDays 2020 - SEED(S) API Design Methodology
APIDays 2020 - SEED(S) API Design MethodologyIrakli Nadareishvili
 
A Transformation Journey
A Transformation JourneyA Transformation Journey
A Transformation JourneyVMware Tanzu
 
Serverless Evolution during 3 years of Serverless Toronto
Serverless Evolution during 3 years of Serverless TorontoServerless Evolution during 3 years of Serverless Toronto
Serverless Evolution during 3 years of Serverless TorontoDaniel Zivkovic
 
The Why, How and What of Digital Business Transformation in the Cloud
The Why, How and What of Digital Business Transformation in the CloudThe Why, How and What of Digital Business Transformation in the Cloud
The Why, How and What of Digital Business Transformation in the CloudAmazon Web Services
 
Your Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
Your Journey to Cloud-Native Begins with DevOps, Microservices, and ContainersYour Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
Your Journey to Cloud-Native Begins with DevOps, Microservices, and ContainersAtlassian
 
Microservices, Microfrontends and Feature Teams
Microservices, Microfrontends and Feature TeamsMicroservices, Microfrontends and Feature Teams
Microservices, Microfrontends and Feature TeamsGiulio Roggero
 
6 ways DevOps helped PrepSportswear move from monolith to microservices
6 ways DevOps helped PrepSportswear move from monolith to microservices6 ways DevOps helped PrepSportswear move from monolith to microservices
6 ways DevOps helped PrepSportswear move from monolith to microservicesDynatrace
 
new blog on coinbase - Google Docs.pdf
new blog on coinbase - Google Docs.pdfnew blog on coinbase - Google Docs.pdf
new blog on coinbase - Google Docs.pdfharikacheluru
 
Apidays Paris 2023 - Building APIs At Scale, Ado Trakic, Capital One
Apidays Paris 2023 - Building APIs At Scale, Ado Trakic, Capital OneApidays Paris 2023 - Building APIs At Scale, Ado Trakic, Capital One
Apidays Paris 2023 - Building APIs At Scale, Ado Trakic, Capital Oneapidays
 
Top crypto wallets best 7 bitcoin wallet apps in 2022
Top crypto wallets  best 7 bitcoin wallet apps in 2022Top crypto wallets  best 7 bitcoin wallet apps in 2022
Top crypto wallets best 7 bitcoin wallet apps in 2022Moon Technolabs Pvt. Ltd.
 
Priming Your Enterprise for Digital Transformation
Priming Your Enterprise for Digital TransformationPriming Your Enterprise for Digital Transformation
Priming Your Enterprise for Digital TransformationWSO2
 
Business2Blockchain | Strengthen Your Business by Securing it on a Blockchain
Business2Blockchain | Strengthen Your Business by Securing it on a BlockchainBusiness2Blockchain | Strengthen Your Business by Securing it on a Blockchain
Business2Blockchain | Strengthen Your Business by Securing it on a BlockchainMorne Olivier
 
Blockchain Application Development 101
Blockchain Application Development 101Blockchain Application Development 101
Blockchain Application Development 101Synerzip
 
DLT analytics and AI workshop 13 march 2019
DLT analytics and AI workshop   13 march  2019DLT analytics and AI workshop   13 march  2019
DLT analytics and AI workshop 13 march 2019Stavros Zervoudakis
 
Welcome to the Metrics
Welcome to the MetricsWelcome to the Metrics
Welcome to the MetricsVMware Tanzu
 
How to Shift to a Serverless Mindset
How to Shift to a Serverless MindsetHow to Shift to a Serverless Mindset
How to Shift to a Serverless MindsetUXDXConf
 

Similar a Building Fintech with Microservices and Kubernetes @ API World 2018 (20)

apidays LIVE Paris - Microservices, up and running by Irakli Nadareishvili
apidays LIVE Paris - Microservices, up and running by Irakli Nadareishviliapidays LIVE Paris - Microservices, up and running by Irakli Nadareishvili
apidays LIVE Paris - Microservices, up and running by Irakli Nadareishvili
 
APIDays 2020 - SEED(S) API Design Methodology
APIDays 2020 - SEED(S) API Design MethodologyAPIDays 2020 - SEED(S) API Design Methodology
APIDays 2020 - SEED(S) API Design Methodology
 
A Transformation Journey
A Transformation JourneyA Transformation Journey
A Transformation Journey
 
Serverless Evolution during 3 years of Serverless Toronto
Serverless Evolution during 3 years of Serverless TorontoServerless Evolution during 3 years of Serverless Toronto
Serverless Evolution during 3 years of Serverless Toronto
 
The Why, How and What of Digital Business Transformation in the Cloud
The Why, How and What of Digital Business Transformation in the CloudThe Why, How and What of Digital Business Transformation in the Cloud
The Why, How and What of Digital Business Transformation in the Cloud
 
Your Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
Your Journey to Cloud-Native Begins with DevOps, Microservices, and ContainersYour Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
Your Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
 
4ire labs presentation 2019
4ire labs presentation 20194ire labs presentation 2019
4ire labs presentation 2019
 
Microservices, Microfrontends and Feature Teams
Microservices, Microfrontends and Feature TeamsMicroservices, Microfrontends and Feature Teams
Microservices, Microfrontends and Feature Teams
 
6 ways DevOps helped PrepSportswear move from monolith to microservices
6 ways DevOps helped PrepSportswear move from monolith to microservices6 ways DevOps helped PrepSportswear move from monolith to microservices
6 ways DevOps helped PrepSportswear move from monolith to microservices
 
omkar-hybris-cv
omkar-hybris-cvomkar-hybris-cv
omkar-hybris-cv
 
new blog on coinbase - Google Docs.pdf
new blog on coinbase - Google Docs.pdfnew blog on coinbase - Google Docs.pdf
new blog on coinbase - Google Docs.pdf
 
Apidays Paris 2023 - Building APIs At Scale, Ado Trakic, Capital One
Apidays Paris 2023 - Building APIs At Scale, Ado Trakic, Capital OneApidays Paris 2023 - Building APIs At Scale, Ado Trakic, Capital One
Apidays Paris 2023 - Building APIs At Scale, Ado Trakic, Capital One
 
Top crypto wallets best 7 bitcoin wallet apps in 2022
Top crypto wallets  best 7 bitcoin wallet apps in 2022Top crypto wallets  best 7 bitcoin wallet apps in 2022
Top crypto wallets best 7 bitcoin wallet apps in 2022
 
Priming Your Enterprise for Digital Transformation
Priming Your Enterprise for Digital TransformationPriming Your Enterprise for Digital Transformation
Priming Your Enterprise for Digital Transformation
 
Business2Blockchain | Strengthen Your Business by Securing it on a Blockchain
Business2Blockchain | Strengthen Your Business by Securing it on a BlockchainBusiness2Blockchain | Strengthen Your Business by Securing it on a Blockchain
Business2Blockchain | Strengthen Your Business by Securing it on a Blockchain
 
Blockchain Application Development 101
Blockchain Application Development 101Blockchain Application Development 101
Blockchain Application Development 101
 
DLT analytics and AI workshop 13 march 2019
DLT analytics and AI workshop   13 march  2019DLT analytics and AI workshop   13 march  2019
DLT analytics and AI workshop 13 march 2019
 
Welcome to the Metrics
Welcome to the MetricsWelcome to the Metrics
Welcome to the Metrics
 
[Agilsun]Profile
[Agilsun]Profile[Agilsun]Profile
[Agilsun]Profile
 
How to Shift to a Serverless Mindset
How to Shift to a Serverless MindsetHow to Shift to a Serverless Mindset
How to Shift to a Serverless Mindset
 

Más de Irakli Nadareishvili

Irakli Nadareishvili - O'Reilly SACon 2018, London
Irakli Nadareishvili - O'Reilly SACon 2018, LondonIrakli Nadareishvili - O'Reilly SACon 2018, London
Irakli Nadareishvili - O'Reilly SACon 2018, LondonIrakli Nadareishvili
 
Microservices Architecture - The Blind Spots
Microservices Architecture - The Blind SpotsMicroservices Architecture - The Blind Spots
Microservices Architecture - The Blind SpotsIrakli Nadareishvili
 
AnsibleBuilding a Docker-ized Microservice In Node, Using Ansible - AnsibleF...
AnsibleBuilding a Docker-ized Microservice  In Node, Using Ansible - AnsibleF...AnsibleBuilding a Docker-ized Microservice  In Node, Using Ansible - AnsibleF...
AnsibleBuilding a Docker-ized Microservice In Node, Using Ansible - AnsibleF...Irakli Nadareishvili
 
Hypermedia-Driven Orchestration in Microservices
Hypermedia-Driven Orchestration in MicroservicesHypermedia-Driven Orchestration in Microservices
Hypermedia-Driven Orchestration in MicroservicesIrakli Nadareishvili
 
Document Databases In Online Publishing
Document  Databases In  Online Publishing Document  Databases In  Online Publishing
Document Databases In Online Publishing Irakli Nadareishvili
 
DrupalCon DC: Busines Analytics with Views
DrupalCon DC: Busines Analytics with ViewsDrupalCon DC: Busines Analytics with Views
DrupalCon DC: Busines Analytics with ViewsIrakli Nadareishvili
 

Más de Irakli Nadareishvili (9)

Irakli Nadareishvili - O'Reilly SACon 2018, London
Irakli Nadareishvili - O'Reilly SACon 2018, LondonIrakli Nadareishvili - O'Reilly SACon 2018, London
Irakli Nadareishvili - O'Reilly SACon 2018, London
 
Reuse or Not and Microservices
Reuse or Not and MicroservicesReuse or Not and Microservices
Reuse or Not and Microservices
 
Microservices Architecture - The Blind Spots
Microservices Architecture - The Blind SpotsMicroservices Architecture - The Blind Spots
Microservices Architecture - The Blind Spots
 
Microservices In Practice
Microservices In PracticeMicroservices In Practice
Microservices In Practice
 
AnsibleBuilding a Docker-ized Microservice In Node, Using Ansible - AnsibleF...
AnsibleBuilding a Docker-ized Microservice  In Node, Using Ansible - AnsibleF...AnsibleBuilding a Docker-ized Microservice  In Node, Using Ansible - AnsibleF...
AnsibleBuilding a Docker-ized Microservice In Node, Using Ansible - AnsibleF...
 
Hypermedia-Driven Orchestration in Microservices
Hypermedia-Driven Orchestration in MicroservicesHypermedia-Driven Orchestration in Microservices
Hypermedia-Driven Orchestration in Microservices
 
trends in online publishing
trends in online publishingtrends in online publishing
trends in online publishing
 
Document Databases In Online Publishing
Document  Databases In  Online Publishing Document  Databases In  Online Publishing
Document Databases In Online Publishing
 
DrupalCon DC: Busines Analytics with Views
DrupalCon DC: Busines Analytics with ViewsDrupalCon DC: Busines Analytics with Views
DrupalCon DC: Busines Analytics with Views
 

Último

"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 

Último (20)

"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 

Building Fintech with Microservices and Kubernetes @ API World 2018

  • 1. Building Fintech with Microservices and Kubernetes SEPTEMBER, 2018 Irakli Nadareishvili, Sr. Director, SharedTech, Capital One.
  • 2. Irakli Nadareishvili Senior Director, SharedTech, Capital One • API & Microservices Governance • Capital One’s Developer Tooling • Co-author of “Microservice Architecture” inadarei
  • 3. AGENDA Microservices Way DevOps and Infrastructure Software Design with Microservices
  • 4. Align Around the Goal “Why does Capital One care about Microservices?” inadarei
  • 5. 11 “Speed and Safety at Scale and in Harmony” Need for coordination is why we constantly compromise between speed and safety. Microservices Way: inadarei
  • 6. Microservices close the alignment loop! AgileProcess: Operations: Product: DevOps & CI/CID Lean Product Dev Toyota Production System: Think In Small Batches Architecture: Microservices inadarei
  • 7. Data: Batch-size Is a Strong Predictor of Performance Source: Accelerate, by Nicole Forsgren, PhD, Jez Humble, and Gene Kim
  • 8. Getting to High-Performance Teams: 1 Measure Autonomy, to Gauge Progress 2 Combine Small Batches with Clarity on Long-Term View 3 Facilitate Experimentation and Design-Thinking And yes, our teams are small (5 devs max), but that’s not the point. inadarei
  • 9. 1. Measure Autonomy, to Gauge Progress Because: Knowing you’re on the right path is paramount. inadarei
  • 10. 1. Measure Autonomy, to Gauge Progress Initial attempts: tracking disruption events (qualitative). Eventual (quantitative): Forsgren et al.’s metrics: 1. Lead time 2. Deploy frequency 3. Time to restore service
  • 11. 2. Clarity on Long-Term View Because: 99.999% of tech teams have Agile Myopia (not a scientific fact, but a strong belief based on years of observation) inadarei
  • 12. Unexpected, Simple Cure for Agile Myopia
  • 13. 3. Experimentation and Design-Thinking Because: Product-Market Mismatch and Rework are devastatingly expensive. inadarei
  • 14. 3. Experimentation and Design-Thinking “You’ve gotta start with the customer experience and work backwards to the technology. You can’t start with the technology and figure-out where you’re gonna sell it.” – Steve Jobs at the 1997 WWDC @source: https://youtu.be/FF-tKLISfPE?t=114
  • 15. AGENDA Microservices Way DevOps and Infrastructure Software Design with Microservices
  • 16. At the beginning: 1. ECS-based container deployments + custom code, Mesos, Nomad, Kube 2. Dozen+ of CI/CD implementations 3. Non-standard secrets management 4. Resiliency tests ran quarterly 5. Dozens of teams building their own infra inadarei
  • 17. Now and Going Forward: 1. Kubernetes packaged for Capital One 2. Federated Ops of Kubernetes Clusters 3. Unified CI/CD (using Spinnaker) and auditable release management with inner-sourced pipeline patterns. 4. Enterprise Solutions: Hashicorp Vault, chaos engineering, test execution, code analysis, container analysis inadarei
  • 19. Kubernetes is Architect’s Tool (not just ops) 1. PODs make sidecars an architectural reality 2. Istio is the best thing since sliced bread 3. Being ubiquitous is a value by itself inadarei
  • 20. AGENDA Microservices Way DevOps and Infrastructure Software Design with Microservices
  • 21. APIs vs. Microservices? We made sure to invest in clarifying where “Microservicization” fit with the already mature API-First culture. inadarei
  • 22. 11 Microservices are not just small APIs: Alexa VoiceSkill Chatbot Web+ Mobile App inadarei
  • 23. Our Design Process 1. Find Bounded Contexts w/ Event Storming 2. Identify Actors 3. Identify JTBDs 4. Define Queries and Actions 5. Design OpenAPI Spec 6. Get feedback on the spec 7. Implement APIs (usually w/ microservices) inadarei
  • 24. Bounded Contexts via Event Storming Photos by: Justin Bachorik @justinbach
  • 25. Example: Actors for DigiCoins 1. DigiCoin customer – a user using digicoin apps to purchase or exchange digital coins. 2. DigiCoin Wallet – the platform 3. DigiCoin app – mobile app 4. … DigiCoins is a fake exchange and wallet for digital currency. This is an entirely imaginary example for demo purposes only inadarei
  • 26. API Design: JTBDs When _____ , I want to _____ , so I can _____ . Circumstance, motivation, goal Based on Alan Klement’s JTBD Story template https://jtbd.info/replacing-the-user-story-with-the-job-story-af7cdee10c27 inadarei
  • 27. Example: JTBDs for DigiCoins 1. When a customer wants to buy coins they want to see current price of a coin so that they can estimate their buying power. 2. When a customer initiates coin purchase, they need to add or reuse a payment method, so that they can provide funds for the purchase 3. When a customer finalizes a coin purchase, DigiCoins needs to charge the payment method, so that it can make money DigiCoins is a fake exchange and wallet for digital currency. This is an entirely imaginary example for demo purposes only inadarei
  • 28. Example: Queries for DigiCoins 1. Lookup of a coin “price” 1. Input: digital coin id, traditional currency code. 2. Response: conversion rate 2. Lookup of existing payment methods 1. Input: user identifier, payment type (coin, credit, bank transfer etc.) 2. Response: uuid and details of the payment method, status of the payment method DigiCoins is a fake exchange and wallet for digital currency. This is an entirely imaginary example for demo purposes only inadarei
  • 29. Example: Action(s) for DigiCoins 1. Charge a payment method to fund coin purchase 1. Input: payment method identifier and details. 2. Response: success or failure code DigiCoins is a fake exchange and wallet for digital currency. This is an entirely imaginary example for demo purposes only inadarei
  • 30. Example: OpenAPI Spec DigiCoins is a fake exchange and wallet for digital currency. This is an entirely imaginary example for demo purposes only inadarei
  • 31.
  • 32. Our Design Process 1. Find Bounded Contexts w/ Event Storming 2. Identify Actors 3. Identify JTBDs 4. Define Queries and Actions 5. Design OpenAPI Spec 6. Get feedback on the spec 7. Implement APIs (usually w/ microservices) inadarei