SlideShare une entreprise Scribd logo
1  sur  70
Télécharger pour lire hors ligne
REAL-WORLD 
MICROSERVICES 
Lessons From The Frontline
AGENDA 
2 
Definition 
Benefits & Complexities 
Stories & Practices
WHAT IS A MICROSERVICES ARCHITECTURE? 
Post-continuous 
delivery SOA
WHAT IS A MICROSERVICES ARCHITECTURE? 
Post-continuous 
delivery SOA 
Fine-grained 
domain capability
WHAT IS A MICROSERVICES ARCHITECTURE? 
Post-continuous 
delivery SOA 
Fine-grained 
domain capability 
Independently 
releasable
WHAT IS A MICROSERVICES ARCHITECTURE? 
Post-continuous 
delivery SOA 
Fine-grained 
domain capability 
Independently 
releasable 
Language agnostic 
integration
WHAT MICROSERVICES ARCHITECTURE IS NOT
WHAT MICROSERVICES ARCHITECTURE IS NOT 
Monolithic
WHAT MICROSERVICES ARCHITECTURE IS NOT 
Monolithic 
Layered and cross-functional
WHAT MICROSERVICES ARCHITECTURE IS NOT 
Monolithic 
Layered and cross-functional 
Intelligently 
integrated 
Intelligent Integration
WHAT MICROSERVICES ARCHITECTURE IS NOT 
Monolithic 
Layered and cross-functional 
Intelligently 
integrated 
Centrally integrated
VALUES 
INNOVATION 
COMPOSABILITY 
AUTONOMY 
with 
RESPOSIBILITY 
SPEED OF CHANGE 
SCALE 
LOWER 
CONGITIVE LOAD 
TECH DIVERSIFICATION
6 
VALUES & 
PRINCIPLES 
Autonomy 
Speed of Change 
Scale 
Composability 
Tech Diversity 
COMPLEXITIES 
Communication 
Execution 
Resilience 
Maintenance 
Operational 
MICRO MACRO
RYAN’S 
STORY 
DOMAIN COMPLEXITY 
Supply Chain SAN FRANCISCO 
7
SPLITTING FROM MONOLITH – BROWN FIELD
SPLITTING FROM MONOLITH – BROWN FIELD 
DOMAIN 
BOUNDED 
CONTEXT
SPLITTING FROM MONOLITH – BROWN FIELD 
DOMAIN 
BOUNDED 
CONTEXT 
RATE OF 
CHANGE
SPLITTING FROM MONOLITH – BROWN FIELD 
DOMAIN 
BOUNDED 
CONTEXT 
RATE OF 
CHANGE 
TEAM STRUCTURE 
Conway’s Law
SPLITTING FROM MONOLITH – BROWN FIELD 
DOMAIN 
BOUNDED 
CONTEXT 
RATE OF 
CHANGE 
WHAT HURTS MOST 
TEAM STRUCTURE 
Conway’s Law
CAUTION: PARTITIONING BY EXISTING COUPLING 
D3.js 
Structure 101 
FxCop 
NDepend
10 
GREEN FIELD DOMAIN MODELLING 
USE THE JOURNEYS
GREEN FIELD DOMAIN MODELLING 
INSPECT THE BOUNDED CONTEXTS 
Neo4J
12 
One service at a time 
Single responsibility 
Loose coupling 
High cohesion 
SOLID principles 
EVOLUTIONARY 
BACK TO BASIC PRINCIPLES
EVAN’S 
STORY 
SERVICE OWNERSHIP 
Online Real Estate MELBOURNE 
13
LONG-LIVED TEAMS 
15
15 
LONG-LIVED TEAMS 
FLUID TEAM 
MEMBERSHIP
15 
LONG-LIVED TEAMS 
FLUID TEAM 
MEMBERSHIP 
COLLABORATIVE 
CODING
KENT’S 
STORY 
EXECUTION COMPLEXITY PIPELINES 
Online Retail MELBOURNE 
16
CONSUMER-DRIVEN CONTRACTS 
Consumer Provider 
Purchase 
Confirm. 
Email 
Purchase 
Service
CONSUMER-DRIVEN CONTRACTS 
Consumer Provider 
Purchase 
Confirm. 
Email 
Purchase 
Service 
Purchase 
Service 
API Test 
Purchase 
Service 
Mock
CONSUMER-DRIVEN CONTRACTS 
Consumer Provider 
Purchase 
Confirm. 
Email 
Purchase 
Service 
Purchase 
Service 
API Test 
Purchase 
Service 
Mock
Production 
DECENTRALISED PIPELINE 
Build Test Integration Test Acceptance Test
DECENTRALISED PIPELINE 
Build Test Consumer Test Acceptance Test Production
EVAN’S 
STORY 
OPERATIONAL COMPLEXITY - MONITORING 
Online Real Estate MELBOURNE 
19
20 
Heartbeat for 
load balancer
21 
Nagios 
checks
22 
Full diagnosis 
for human
23 
AGGREGATED MONITORING 
Riemann 
Event 
processing
24 
SYNTHETIC TRANSACTIONS
KENT’S 
STORY 
OPERATIONAL COMPLEXITY TRADEOFFS 
Online Retail MELBOURNE 
25
MONITORING AGGREGATED LOGS 
26 
ID: 123 
ID: 123.467 
ID: 123.892
RESILIENCE 
STATUS 
• Up
RESILIENCE 
STATUS 
• 
• 
Up 
Down
RESILIENCE 
STATUS 
• 
• 
Up 
Down 
STATUS 
• All up
RESILIENCE 
STATUS 
• 
• 
Up 
Down 
STATUS 
• All up 
• All down
RESILIENCE 
STATUS 
• 
• 
Up 
Down 
STATUS 
• All up 
• All down 
• Mostly up
RESILIENCE 
STATUS 
• 
• 
Up 
Down 
STATUS 
• All up 
• All down 
• Mostly up 
• 
Up apart from 1
RESILIENCE 
STATUS 
• 
• 
Up 
Down 
STATUS 
• All up 
• All down 
• Mostly up 
• 
Up apart from 1 
• All of the important bits are up
FAULT TOLERANCE PATTERNS 
28 
CIRCUIT BREAKER 
Netflix/ 
Hystrix 
[failure threshold 
reached] 
CLOSED 
[call succeeds] 
Reset 
Trip breaker 
[call fails] 
Trip Breaker 
HALF 
OPEN 
OPEN 
on timeout 
Attempt Reset
JAMES’ 
STORY MAINTAINABILITY 
Telecommunication SYDNEY 
29
SERVICES SELF-DISCOVERABILITY
SERVICES SELF-DISCOVERABILITY
SERVICES SELF-DISCOVERABILITY
SERVICES SELF-DISCOVERABILITY
SERVICESSELF-DISCOVERABILITY
SERVICES SELF-DISCOVERABILITY
SCOTT’S 
STORY 
A NEW DOMAIN VIEW 
Global Assignee Tax Services MELBOURNE 
31
History is the version of past events that 
people have decided to agree upon. 
- Napoleon Bonaparte 
32
THE EVOLUTION OF MODELLING THE DOMAIN 
33 
Entity centric 
e.g. Customer 
Entity centric 
e.g. Credit
THE EVOLUTION OF MODELLING THE DOMAIN 
33 
Entity centric 
e.g. Credit 
Activity centric 
e.g. Purchase 
Entity centric 
e.g. Customer
THE EVOLUTION OF MODELLING THE DOMAIN 
33 
Entity centric 
e.g. Credit 
Activity centric 
e.g. Purchase 
Entity centric 
e.g. Customer 
Aggregator centric 
e.g. Notification board 
Search everywhere 
Reports
THE EVOLUTION OF MODELLING THE DOMAIN 
33 
Entity centric 
e.g. Credit 
Activity centric 
e.g. Purchase 
Entity centric 
e.g. Customer 
Aggregator centric 
e.g. Notification board 
Search everywhere 
Reports
DOMAIN EVENTS AS FIRST CLASS CITIZENS 
DOMAIN EVENT 
Time {t}, CustomerRegistered, … 
Time {t}, CreditDebited, … 
Time {t}, OrderPlaced, … 
(1) Publisher- 
Subscriber 
(2) RESTful 
Event 
endpoints 
F 
Build future 
capabilities 
e.g. 
gamification
JR’S 
STORY 
CHOREOGRAPHY 
Online Retail BRISBANE 
35
SERVICE COMPOSITION 
Leave composition to the one with most context 
Expose finer-grained operations 
Composition of Sync and Async is hard , try 
Reactive programming 
JavaScript Promises, RxJava Observables 
36
GILES’ 
STORY 
FLEXIBILITY 
Sports Broadcasting LONDON 
37
THAT POPULAR SPORT 
38
TAKE-AWAYS 
KNOW YOUR PROBLEM & DOMAIN WELL 
TRADE-OFF COMPLEXITIES CAREFULLY 
IT’S AN ORGANISATIONAL AND CULTURAL SHIFT 
EVOLVE FROM MACRO TO MICRO 
BUILD FOR CONTINUOUS DELIVERY FROM DAY 0 
MAKE SURE YOU ARE TALL ENOUGH ☺
40 
New!
41 
THANK YOU! 
Zhamak Dehghani 
zdehghan@thoughtworks.com 
@zhamakd

Contenu connexe

Tendances

Software Architecture Conference - Monitoring Microservices - A Challenge
Software Architecture Conference -  Monitoring Microservices - A ChallengeSoftware Architecture Conference -  Monitoring Microservices - A Challenge
Software Architecture Conference - Monitoring Microservices - A ChallengeAdrian Cockcroft
 
Code Freeze 2018: There is no such thing as a microservice!
Code Freeze 2018: There is no such thing as a microservice!Code Freeze 2018: There is no such thing as a microservice!
Code Freeze 2018: There is no such thing as a microservice!Chris Richardson
 
Openstack Silicon Valley - Vendor Lock In
Openstack Silicon Valley - Vendor Lock InOpenstack Silicon Valley - Vendor Lock In
Openstack Silicon Valley - Vendor Lock InAdrian Cockcroft
 
Decompose your monolith: strategies for migrating to microservices (Tide)
Decompose your monolith: strategies for migrating to microservices (Tide)Decompose your monolith: strategies for migrating to microservices (Tide)
Decompose your monolith: strategies for migrating to microservices (Tide)Chris Richardson
 
Decompose your monolith: Six principles for refactoring a monolith to microse...
Decompose your monolith: Six principles for refactoring a monolith to microse...Decompose your monolith: Six principles for refactoring a monolith to microse...
Decompose your monolith: Six principles for refactoring a monolith to microse...Chris Richardson
 
From Monolith to Microservices – and Beyond!
From Monolith to Microservices – and Beyond!From Monolith to Microservices – and Beyond!
From Monolith to Microservices – and Beyond!Jules Pierre-Louis
 
Fast Delivery DevOps Israel
Fast Delivery DevOps IsraelFast Delivery DevOps Israel
Fast Delivery DevOps IsraelAdrian Cockcroft
 
Developing event-driven microservices with event sourcing and CQRS (phillyete)
Developing event-driven microservices with event sourcing and CQRS (phillyete)Developing event-driven microservices with event sourcing and CQRS (phillyete)
Developing event-driven microservices with event sourcing and CQRS (phillyete)Chris Richardson
 
Introduction to MicroServices (Oakjug)
Introduction to MicroServices (Oakjug)Introduction to MicroServices (Oakjug)
Introduction to MicroServices (Oakjug)Chris Richardson
 
Cloud Trends Nov2015 Structure
Cloud Trends Nov2015 StructureCloud Trends Nov2015 Structure
Cloud Trends Nov2015 StructureAdrian Cockcroft
 
Microservices for Mortals
Microservices for MortalsMicroservices for Mortals
Microservices for MortalsBert Ertman
 
Building microservices with Scala, functional domain models and Spring Boot (...
Building microservices with Scala, functional domain models and Spring Boot (...Building microservices with Scala, functional domain models and Spring Boot (...
Building microservices with Scala, functional domain models and Spring Boot (...Chris Richardson
 
Building microservices with Scala, functional domain models and Spring Boot
Building microservices with Scala, functional domain models and Spring BootBuilding microservices with Scala, functional domain models and Spring Boot
Building microservices with Scala, functional domain models and Spring BootChris Richardson
 
JFokus: Cubes, Hexagons, Triangles, and More: Understanding Microservices
JFokus: Cubes, Hexagons, Triangles, and More: Understanding MicroservicesJFokus: Cubes, Hexagons, Triangles, and More: Understanding Microservices
JFokus: Cubes, Hexagons, Triangles, and More: Understanding MicroservicesChris Richardson
 
GotoChgo 2019: Not Just Events: Developing Asynchronous Microservices
GotoChgo 2019: Not Just Events: Developing Asynchronous MicroservicesGotoChgo 2019: Not Just Events: Developing Asynchronous Microservices
GotoChgo 2019: Not Just Events: Developing Asynchronous MicroservicesChris Richardson
 
#JaxLondon keynote: Developing applications with a microservice architecture
#JaxLondon keynote: Developing applications with a microservice architecture#JaxLondon keynote: Developing applications with a microservice architecture
#JaxLondon keynote: Developing applications with a microservice architectureChris Richardson
 
Overview of the Eventuate Tram Customers and Orders application
Overview of the Eventuate Tram Customers and Orders applicationOverview of the Eventuate Tram Customers and Orders application
Overview of the Eventuate Tram Customers and Orders applicationChris Richardson
 
Developing applications with a microservice architecture (SVforum, microservi...
Developing applications with a microservice architecture (SVforum, microservi...Developing applications with a microservice architecture (SVforum, microservi...
Developing applications with a microservice architecture (SVforum, microservi...Chris Richardson
 
An overview of the Eventuate Platform
An overview of the Eventuate PlatformAn overview of the Eventuate Platform
An overview of the Eventuate PlatformChris Richardson
 

Tendances (20)

Software Architecture Conference - Monitoring Microservices - A Challenge
Software Architecture Conference -  Monitoring Microservices - A ChallengeSoftware Architecture Conference -  Monitoring Microservices - A Challenge
Software Architecture Conference - Monitoring Microservices - A Challenge
 
Code Freeze 2018: There is no such thing as a microservice!
Code Freeze 2018: There is no such thing as a microservice!Code Freeze 2018: There is no such thing as a microservice!
Code Freeze 2018: There is no such thing as a microservice!
 
Openstack Silicon Valley - Vendor Lock In
Openstack Silicon Valley - Vendor Lock InOpenstack Silicon Valley - Vendor Lock In
Openstack Silicon Valley - Vendor Lock In
 
Decompose your monolith: strategies for migrating to microservices (Tide)
Decompose your monolith: strategies for migrating to microservices (Tide)Decompose your monolith: strategies for migrating to microservices (Tide)
Decompose your monolith: strategies for migrating to microservices (Tide)
 
Decompose your monolith: Six principles for refactoring a monolith to microse...
Decompose your monolith: Six principles for refactoring a monolith to microse...Decompose your monolith: Six principles for refactoring a monolith to microse...
Decompose your monolith: Six principles for refactoring a monolith to microse...
 
From Monolith to Microservices – and Beyond!
From Monolith to Microservices – and Beyond!From Monolith to Microservices – and Beyond!
From Monolith to Microservices – and Beyond!
 
Fast Delivery DevOps Israel
Fast Delivery DevOps IsraelFast Delivery DevOps Israel
Fast Delivery DevOps Israel
 
Developing event-driven microservices with event sourcing and CQRS (phillyete)
Developing event-driven microservices with event sourcing and CQRS (phillyete)Developing event-driven microservices with event sourcing and CQRS (phillyete)
Developing event-driven microservices with event sourcing and CQRS (phillyete)
 
Introduction to MicroServices (Oakjug)
Introduction to MicroServices (Oakjug)Introduction to MicroServices (Oakjug)
Introduction to MicroServices (Oakjug)
 
Cloud Trends Nov2015 Structure
Cloud Trends Nov2015 StructureCloud Trends Nov2015 Structure
Cloud Trends Nov2015 Structure
 
Microservices for Mortals
Microservices for MortalsMicroservices for Mortals
Microservices for Mortals
 
Building microservices with Scala, functional domain models and Spring Boot (...
Building microservices with Scala, functional domain models and Spring Boot (...Building microservices with Scala, functional domain models and Spring Boot (...
Building microservices with Scala, functional domain models and Spring Boot (...
 
Building microservices with Scala, functional domain models and Spring Boot
Building microservices with Scala, functional domain models and Spring BootBuilding microservices with Scala, functional domain models and Spring Boot
Building microservices with Scala, functional domain models and Spring Boot
 
JFokus: Cubes, Hexagons, Triangles, and More: Understanding Microservices
JFokus: Cubes, Hexagons, Triangles, and More: Understanding MicroservicesJFokus: Cubes, Hexagons, Triangles, and More: Understanding Microservices
JFokus: Cubes, Hexagons, Triangles, and More: Understanding Microservices
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
GotoChgo 2019: Not Just Events: Developing Asynchronous Microservices
GotoChgo 2019: Not Just Events: Developing Asynchronous MicroservicesGotoChgo 2019: Not Just Events: Developing Asynchronous Microservices
GotoChgo 2019: Not Just Events: Developing Asynchronous Microservices
 
#JaxLondon keynote: Developing applications with a microservice architecture
#JaxLondon keynote: Developing applications with a microservice architecture#JaxLondon keynote: Developing applications with a microservice architecture
#JaxLondon keynote: Developing applications with a microservice architecture
 
Overview of the Eventuate Tram Customers and Orders application
Overview of the Eventuate Tram Customers and Orders applicationOverview of the Eventuate Tram Customers and Orders application
Overview of the Eventuate Tram Customers and Orders application
 
Developing applications with a microservice architecture (SVforum, microservi...
Developing applications with a microservice architecture (SVforum, microservi...Developing applications with a microservice architecture (SVforum, microservi...
Developing applications with a microservice architecture (SVforum, microservi...
 
An overview of the Eventuate Platform
An overview of the Eventuate PlatformAn overview of the Eventuate Platform
An overview of the Eventuate Platform
 

Similaire à Real-world Microservices: Lessons from the Front Line - Zhamak Delghani, ThoughtWorks

Serverless integration anatomy
Serverless integration anatomyServerless integration anatomy
Serverless integration anatomyChristina Lin
 
Dwp from monolithtomicroservices
Dwp from monolithtomicroservicesDwp from monolithtomicroservices
Dwp from monolithtomicroservicesAndrew Rea
 
Delivering with Microservices - How to Iterate Towards Sophistication
Delivering with Microservices - How to Iterate Towards SophisticationDelivering with Microservices - How to Iterate Towards Sophistication
Delivering with Microservices - How to Iterate Towards SophisticationThoughtworks
 
The Process and Toolkit of Layer 2 Mechanism Design
The Process and Toolkit of Layer 2 Mechanism DesignThe Process and Toolkit of Layer 2 Mechanism Design
The Process and Toolkit of Layer 2 Mechanism DesignBrandon Ramirez
 
Architectural Commandments for Building & Running Microservices at Scale
Architectural Commandments for Building & Running Microservices at ScaleArchitectural Commandments for Building & Running Microservices at Scale
Architectural Commandments for Building & Running Microservices at ScaleBrian Wilson
 
Blowing up the Monolith: Practical Advice on Microservices
Blowing up the Monolith: Practical Advice on MicroservicesBlowing up the Monolith: Practical Advice on Microservices
Blowing up the Monolith: Practical Advice on MicroservicesNordic APIs
 
CQRS and Event Sourcing: A DevOps perspective
CQRS and Event Sourcing: A DevOps perspectiveCQRS and Event Sourcing: A DevOps perspective
CQRS and Event Sourcing: A DevOps perspectiveMaria Gomez
 
Kimberly-Clark: Challenging the Customer Engagement Status-Quo with an iPad, ...
Kimberly-Clark: Challenging the Customer Engagement Status-Quo with an iPad, ...Kimberly-Clark: Challenging the Customer Engagement Status-Quo with an iPad, ...
Kimberly-Clark: Challenging the Customer Engagement Status-Quo with an iPad, ...Xamarin
 
Vasiliy Fomichev - Harness the Power of Containers - SUGCON
Vasiliy Fomichev - Harness the Power of Containers - SUGCONVasiliy Fomichev - Harness the Power of Containers - SUGCON
Vasiliy Fomichev - Harness the Power of Containers - SUGCONSUGCON
 
Half way to clean architecture - Dmytro Voronkevych - Droidcon Berlin
Half way to clean architecture - Dmytro Voronkevych - Droidcon BerlinHalf way to clean architecture - Dmytro Voronkevych - Droidcon Berlin
Half way to clean architecture - Dmytro Voronkevych - Droidcon BerlinBadoo
 
Webinar - Order out of Chaos: Avoiding the Migration Migraine
Webinar - Order out of Chaos: Avoiding the Migration MigraineWebinar - Order out of Chaos: Avoiding the Migration Migraine
Webinar - Order out of Chaos: Avoiding the Migration MigrainePeak Hosting
 
Solace Digital River "Open Data Movement"
Solace Digital River "Open Data Movement"Solace Digital River "Open Data Movement"
Solace Digital River "Open Data Movement"Solace
 
Juniper Corporate Presentation
Juniper Corporate PresentationJuniper Corporate Presentation
Juniper Corporate Presentationmauthay
 
Events in a microservices architecture
Events in a microservices architectureEvents in a microservices architecture
Events in a microservices architectureSaul Caganoff
 
Surviving as a Monolith in a Microservices World - by Blair Olynyk, Hyperwallet
Surviving as a Monolith in a Microservices World - by Blair Olynyk, HyperwalletSurviving as a Monolith in a Microservices World - by Blair Olynyk, Hyperwallet
Surviving as a Monolith in a Microservices World - by Blair Olynyk, HyperwalletHyperwallet
 
Deploying to Production 50+ Times a Day - Calgary Agile Users Group 2015
Deploying to Production 50+ Times a Day - Calgary Agile Users Group 2015Deploying to Production 50+ Times a Day - Calgary Agile Users Group 2015
Deploying to Production 50+ Times a Day - Calgary Agile Users Group 2015Stuart Charlton
 
Introduction to lightning lifecycle
Introduction to lightning lifecycle Introduction to lightning lifecycle
Introduction to lightning lifecycle SmritiSharan1
 
Digital Transformation | AWS Webinar
Digital Transformation | AWS WebinarDigital Transformation | AWS Webinar
Digital Transformation | AWS WebinarAmazon Web Services
 

Similaire à Real-world Microservices: Lessons from the Front Line - Zhamak Delghani, ThoughtWorks (20)

Serverless integration anatomy
Serverless integration anatomyServerless integration anatomy
Serverless integration anatomy
 
Dwp from monolithtomicroservices
Dwp from monolithtomicroservicesDwp from monolithtomicroservices
Dwp from monolithtomicroservices
 
Delivering with Microservices - How to Iterate Towards Sophistication
Delivering with Microservices - How to Iterate Towards SophisticationDelivering with Microservices - How to Iterate Towards Sophistication
Delivering with Microservices - How to Iterate Towards Sophistication
 
The Process and Toolkit of Layer 2 Mechanism Design
The Process and Toolkit of Layer 2 Mechanism DesignThe Process and Toolkit of Layer 2 Mechanism Design
The Process and Toolkit of Layer 2 Mechanism Design
 
Cloud Computing in the Enterprise
Cloud Computing in the EnterpriseCloud Computing in the Enterprise
Cloud Computing in the Enterprise
 
Architectural Commandments for Building & Running Microservices at Scale
Architectural Commandments for Building & Running Microservices at ScaleArchitectural Commandments for Building & Running Microservices at Scale
Architectural Commandments for Building & Running Microservices at Scale
 
Blowing up the Monolith: Practical Advice on Microservices
Blowing up the Monolith: Practical Advice on MicroservicesBlowing up the Monolith: Practical Advice on Microservices
Blowing up the Monolith: Practical Advice on Microservices
 
CQRS and Event Sourcing: A DevOps perspective
CQRS and Event Sourcing: A DevOps perspectiveCQRS and Event Sourcing: A DevOps perspective
CQRS and Event Sourcing: A DevOps perspective
 
Microservices at NewStore
Microservices at NewStoreMicroservices at NewStore
Microservices at NewStore
 
Kimberly-Clark: Challenging the Customer Engagement Status-Quo with an iPad, ...
Kimberly-Clark: Challenging the Customer Engagement Status-Quo with an iPad, ...Kimberly-Clark: Challenging the Customer Engagement Status-Quo with an iPad, ...
Kimberly-Clark: Challenging the Customer Engagement Status-Quo with an iPad, ...
 
Vasiliy Fomichev - Harness the Power of Containers - SUGCON
Vasiliy Fomichev - Harness the Power of Containers - SUGCONVasiliy Fomichev - Harness the Power of Containers - SUGCON
Vasiliy Fomichev - Harness the Power of Containers - SUGCON
 
Half way to clean architecture - Dmytro Voronkevych - Droidcon Berlin
Half way to clean architecture - Dmytro Voronkevych - Droidcon BerlinHalf way to clean architecture - Dmytro Voronkevych - Droidcon Berlin
Half way to clean architecture - Dmytro Voronkevych - Droidcon Berlin
 
Webinar - Order out of Chaos: Avoiding the Migration Migraine
Webinar - Order out of Chaos: Avoiding the Migration MigraineWebinar - Order out of Chaos: Avoiding the Migration Migraine
Webinar - Order out of Chaos: Avoiding the Migration Migraine
 
Solace Digital River "Open Data Movement"
Solace Digital River "Open Data Movement"Solace Digital River "Open Data Movement"
Solace Digital River "Open Data Movement"
 
Juniper Corporate Presentation
Juniper Corporate PresentationJuniper Corporate Presentation
Juniper Corporate Presentation
 
Events in a microservices architecture
Events in a microservices architectureEvents in a microservices architecture
Events in a microservices architecture
 
Surviving as a Monolith in a Microservices World - by Blair Olynyk, Hyperwallet
Surviving as a Monolith in a Microservices World - by Blair Olynyk, HyperwalletSurviving as a Monolith in a Microservices World - by Blair Olynyk, Hyperwallet
Surviving as a Monolith in a Microservices World - by Blair Olynyk, Hyperwallet
 
Deploying to Production 50+ Times a Day - Calgary Agile Users Group 2015
Deploying to Production 50+ Times a Day - Calgary Agile Users Group 2015Deploying to Production 50+ Times a Day - Calgary Agile Users Group 2015
Deploying to Production 50+ Times a Day - Calgary Agile Users Group 2015
 
Introduction to lightning lifecycle
Introduction to lightning lifecycle Introduction to lightning lifecycle
Introduction to lightning lifecycle
 
Digital Transformation | AWS Webinar
Digital Transformation | AWS WebinarDigital Transformation | AWS Webinar
Digital Transformation | AWS Webinar
 

Plus de Thoughtworks

Design System as a Product
Design System as a ProductDesign System as a Product
Design System as a ProductThoughtworks
 
Designers, Developers & Dogs
Designers, Developers & DogsDesigners, Developers & Dogs
Designers, Developers & DogsThoughtworks
 
Cloud-first for fast innovation
Cloud-first for fast innovationCloud-first for fast innovation
Cloud-first for fast innovationThoughtworks
 
More impact with flexible teams
More impact with flexible teamsMore impact with flexible teams
More impact with flexible teamsThoughtworks
 
Culture of Innovation
Culture of InnovationCulture of Innovation
Culture of InnovationThoughtworks
 
Developer Experience
Developer ExperienceDeveloper Experience
Developer ExperienceThoughtworks
 
When we design together
When we design togetherWhen we design together
When we design togetherThoughtworks
 
Hardware is hard(er)
Hardware is hard(er)Hardware is hard(er)
Hardware is hard(er)Thoughtworks
 
Customer-centric innovation enabled by cloud
 Customer-centric innovation enabled by cloud Customer-centric innovation enabled by cloud
Customer-centric innovation enabled by cloudThoughtworks
 
Amazon's Culture of Innovation
Amazon's Culture of InnovationAmazon's Culture of Innovation
Amazon's Culture of InnovationThoughtworks
 
When in doubt, go live
When in doubt, go liveWhen in doubt, go live
When in doubt, go liveThoughtworks
 
Don't cross the Rubicon
Don't cross the RubiconDon't cross the Rubicon
Don't cross the RubiconThoughtworks
 
Your test coverage is a lie!
Your test coverage is a lie!Your test coverage is a lie!
Your test coverage is a lie!Thoughtworks
 
Docker container security
Docker container securityDocker container security
Docker container securityThoughtworks
 
Redefining the unit
Redefining the unitRedefining the unit
Redefining the unitThoughtworks
 
Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22Thoughtworks
 
A Tribute to Turing
A Tribute to TuringA Tribute to Turing
A Tribute to TuringThoughtworks
 
Rsa maths worked out
Rsa maths worked outRsa maths worked out
Rsa maths worked outThoughtworks
 

Plus de Thoughtworks (20)

Design System as a Product
Design System as a ProductDesign System as a Product
Design System as a Product
 
Designers, Developers & Dogs
Designers, Developers & DogsDesigners, Developers & Dogs
Designers, Developers & Dogs
 
Cloud-first for fast innovation
Cloud-first for fast innovationCloud-first for fast innovation
Cloud-first for fast innovation
 
More impact with flexible teams
More impact with flexible teamsMore impact with flexible teams
More impact with flexible teams
 
Culture of Innovation
Culture of InnovationCulture of Innovation
Culture of Innovation
 
Dual-Track Agile
Dual-Track AgileDual-Track Agile
Dual-Track Agile
 
Developer Experience
Developer ExperienceDeveloper Experience
Developer Experience
 
When we design together
When we design togetherWhen we design together
When we design together
 
Hardware is hard(er)
Hardware is hard(er)Hardware is hard(er)
Hardware is hard(er)
 
Customer-centric innovation enabled by cloud
 Customer-centric innovation enabled by cloud Customer-centric innovation enabled by cloud
Customer-centric innovation enabled by cloud
 
Amazon's Culture of Innovation
Amazon's Culture of InnovationAmazon's Culture of Innovation
Amazon's Culture of Innovation
 
When in doubt, go live
When in doubt, go liveWhen in doubt, go live
When in doubt, go live
 
Don't cross the Rubicon
Don't cross the RubiconDon't cross the Rubicon
Don't cross the Rubicon
 
Error handling
Error handlingError handling
Error handling
 
Your test coverage is a lie!
Your test coverage is a lie!Your test coverage is a lie!
Your test coverage is a lie!
 
Docker container security
Docker container securityDocker container security
Docker container security
 
Redefining the unit
Redefining the unitRedefining the unit
Redefining the unit
 
Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22
 
A Tribute to Turing
A Tribute to TuringA Tribute to Turing
A Tribute to Turing
 
Rsa maths worked out
Rsa maths worked outRsa maths worked out
Rsa maths worked out
 

Dernier

Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
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
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 

Dernier (20)

Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
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
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 

Real-world Microservices: Lessons from the Front Line - Zhamak Delghani, ThoughtWorks