SlideShare a Scribd company logo
DELIVERING WITH
MICROSERVICES
HOW TO ITERATE TOWARDS SOPHISTICATION
FROM THE TRENCHES
LESSONS LEARNED
FROM THE TRENCHES
NANO SERVICES
COMPLEXITY
FROM THE TRENCHES
CROSS CUTTING CONCERNS
public void RefreshAllResults()
{
[…]
WithConnection(
connection =>
connection.Execute(DbTable + "UpdateAll", CommandType.StoredProcedure));
[…]
}
results-service
UpdateAllResults
service-a service-b service-c
FROM THE TRENCHES
REFLECTIONS
FROM THE TRENCHES
REFLECTIONS
microservices?
FROM THE TRENCHES
REFLECTIONS
microservices? need big upfront design?
FROM THE TRENCHES
DEFINE MICROSERVICES
WHEN AGILE MEETS DISTRIBUTED SYSTEMS
AN ALTERNATIVE TO VENDOR-LED SOA
http://www.infoq.com/presentations/webber-guerilla-soa
DEFINE MICROSERVICES
AN ALTERNATIVE TO VENDOR-LED SOA
http://www.infoq.com/presentations/webber-guerilla-soa
DEFINE MICROSERVICES
The
Problem
AN ALTERNATIVE TO VENDOR-LED SOA
http://www.infoq.com/presentations/webber-guerilla-soa
DEFINE MICROSERVICES
The
Problem
The
Solution
AN ALTERNATIVE TO VENDOR-LED SOA
http://www.infoq.com/presentations/webber-guerilla-soa
DEFINE MICROSERVICES
The
Problem
The
Solution
The
Problem
Again
AN ALTERNATIVE TO VENDOR-LED SOA
http://www.infoq.com/presentations/webber-guerilla-soa
DEFINE MICROSERVICES
The
Problem
The
Solution
Back to
The
Future
The
Problem
Again
DISTRIBUTED AND WEB ARCHITECTURES
C++
1980s
Java
1990s
ANSI C
TCP Client-Sever
RPC
CORBA
RMI
DEFINE MICROSERVICES
DISTRIBUTED AND WEB ARCHITECTURES
C++
1980s
Java
1990s
ANSI C
TCP Client-Sever
RPC
CORBA
RMI
DEFINE MICROSERVICES
2000s 2010s
XML JavaScript
SOAP
SOA
JSON
REST
HTTP
The Internet
SOFTWARE DEVELOPMENT METHODOLOGIES
RUP
XP
Continuous
Integration
Agile
Continuous
Delivery
1980s 1990s 2000s 2010s
DEFINE MICROSERVICES
THE PRODIGAL SON
Service
Oriented
Architecture
Continuous
Delivery
Microservices
DEFINE MICROSERVICES
XP AgileThe Internet
Distributed
Systems
REFLECTIONS
microservices? need big upfront design?
Microservices
DEFINE MICROSERVICES
MICROSERVICES RUSH
WHAT MAKE THEM SO POPULAR?
INTEREST
0
January 2014
June 2015
100
Google Trends Data
# “microservices” searches
MICROSERVICES RUSH
SCALE
"In order to scale to the next order of magnitude, we're
rethinking the fundamentals of our architecture"
Philip Fisher-Ogden, Director of Engineering
"We created the viewing service to encapsulate the domain of
viewing data collection, processing, and providing "
"These components would be easier to develop, test, debug,
deploy, and operate if they were extracted into their own services."
http://www.techrepublic.com/article/netflix-on-how-to-build-services-that-scale-beyond-millions-of-users/
MICROSERVICES RUSH
BREAK THE MONOLITH
Monolithic Perl —> Monolithic C++ —> Java —> microservices
Monolithic C++ —> Perl / C++ —> Java / Scala -> microservices
Monolithic Rails —> JS / Rails / Scala —> microservices
MICROSERVICES RUSH
BUSINESS VALUE FIRST
https://yow.eventer.com/yow-2011-1004/domain-driven-design-strategies-for-dealing-with-legacy-systems-by-eric-evans-1033
MICROSERVICES RUSH
CONWAY’S LAW
"Any organisation that designs a system […] will
inevitably produce a design whose structure is a copy
of the organisation's communication structure."
Melvin Conway, How Do Committees Invent - 1968
MICROSERVICES RUSH
REFLECTIONS
microservices? need big upfront design?
Microservices
MICROSERVICES RUSH
REFLECTIONS
microservices? need big upfront design?
Microservices
strategic value
MICROSERVICES RUSH
REFLECTIONS
microservices? need big upfront design?
Microservices
strategic value break the monolith
MICROSERVICES RUSH
REFLECTIONS
microservices? need big upfront design?
Microservices
strategic value break the monolith scale
MICROSERVICES RUSH
REFLECTIONS
microservices? need big upfront design?
Microservices
strategic value break the monolith scale re-org
MICROSERVICES RUSH
DELIVERING MICROSERVICES
IN AN AGILE WAY
THE PROBLEM
Infrastructure
Features
Infrastructure
Features
WatchlistService
Type of work delivered over time
DELIVERING MICROSERVICES
THE GOAL
DELIVERING MICROSERVICES
JOURNEY
DELIVERING MICROSERVICES
JOURNEY
Discovery
DELIVERING MICROSERVICES
JOURNEY
Discovery Release 1
DELIVERING MICROSERVICES
JOURNEY
Discovery Release 1 Release 2
DELIVERING MICROSERVICES
JOURNEY
Discovery Release 1 Release 2 Release N…
DELIVERING MICROSERVICES
JOURNEY
Discovery Release 1 Release 2 Release N…
DELIVERING MICROSERVICES
JOURNEY
Capabilities
Discovery Release 1 Release 2 Release N…
DELIVERING MICROSERVICES
DISCOVERY - WHY MICROSERVICES
Discovery Release 1 Release 2 Release N…
DELIVERING MICROSERVICES
BUSINESS & ARCHITECTURE CONTRACT
DELIVERING MICROSERVICES
BUSINESS & ARCHITECTURE CONTRACT
DELIVERING MICROSERVICES
Strategic
Goals
BUSINESS & ARCHITECTURE CONTRACT
DELIVERING MICROSERVICES
Strategic
Goals
Architectural
Principles
BUSINESS & ARCHITECTURE CONTRACT
DELIVERING MICROSERVICES
Strategic
Goals
Architectural
Principles
Design & Delivery
Practices
BUSINESS & ARCHITECTURE CONTRACT
DELIVERING MICROSERVICES
Strategic
Goals
Architectural
Principles
Design & Delivery
Practices
USER JOURNEYS ACROSS SERVICES
users
journeys
services
journeys
DELIVERING MICROSERVICES
RELEASE 1 - BUILD A MINILITH
Discovery Release 1 Release 2 Release N…
DELIVERING MICROSERVICES
RELEASE 1 - ARCHITECTURE
DELIVERING MICROSERVICES
RELEASE 1 - ARCHITECTURE
greenfield
DELIVERING MICROSERVICES
RELEASE 1 - ARCHITECTURE
greenfield
brownfield
monolith
DELIVERING MICROSERVICES
RELEASE 1 - ARCHITECTURE
greenfield
brownfield
monolith
minilith
minilith
DELIVERING MICROSERVICES
minilith
RELEASE 1 - ARCHITECTURE
greenfield
brownfield
monolith
minilith
minilith
DELIVERING MICROSERVICES
minilith
RELEASE 1 - ARCHITECTURE
greenfield
brownfield
monolith
minilith
minilith
Client
DELIVERING MICROSERVICES
minilith
RELEASE 1 - ARCHITECTURE
greenfield
brownfield
monolith
minilith
minilith
Client
Presentation
DELIVERING MICROSERVICES
minilith
RELEASE 1 - ARCHITECTURE
greenfield
brownfield
monolith
minilith
minilith
Client
Presentation
Biz Services
DELIVERING MICROSERVICES
minilith
RELEASE 1 - ARCHITECTURE
greenfield
brownfield
monolith
minilith
minilith
Client
Presentation
Biz Services
services
DELIVERING MICROSERVICES
RELEASE 1 - CONTINUOUS DELIVERY
• CODE
• BUILD
• PLAN
• RELEASE
• TO TEST FLIGHT
• CODE
• BUILD
• PLAN
• RELEASE
• TO TEST FLIGHT
CODE
PLAN
BUILD
TEST
RELEASE TO
PRODUCT OWNER
+ BETA
INSTALL
TRACK USAGE
USER
FEEDBACK
Continuous
Integration
Usability and
Feedback Cycle
DELIVERING MICROSERVICES
RELEASE 1 - CONTRACT TESTING
Functional
Integration
Unit Unit
Contracts
Web Application Web Services
DELIVERING MICROSERVICES
RELEASE 1 - COUPLING GRAPHS WITH D3JS
DELIVERING MICROSERVICES
RELEASE 1 - COUPLING GRAPHS WITH D3JS
Requests Flow
http://techblog.netflix.com/2015/02/a-microscope-on-microservices.html
DELIVERING MICROSERVICES
Dependencies
https://www.youtube.com/watch?v=hsoovFbpAoE
RELEASE 1 - COUPLING GRAPHS WITH D3JS
Requests Flow
http://techblog.netflix.com/2015/02/a-microscope-on-microservices.html
DELIVERING MICROSERVICES
RELEASE 1 - TRANSACTIONS LOGGING
service-A service-B
service-C
DELIVERING MICROSERVICES
RELEASE 1 - TRANSACTIONS LOGGING
service-A service-B
service-C
ID: ABCD
DELIVERING MICROSERVICES
RELEASE 1 - TRANSACTIONS LOGGING
service-A service-B
service-C
ID: ABCD
ID: EFGH
caused by ABCD
DELIVERING MICROSERVICES
RELEASE 1 - TRANSACTIONS LOGGING
service-A service-B
service-C
ID: ABCD
ID: EFGH
caused by ABCD
ID: IJKL
caused by EFGH
DELIVERING MICROSERVICES
RELEASE 1 - DIFFERENT LEVELS OF MONITORING
Infrastructure
New Relic
RuntimeLog
Logstash & Kibana
DELIVERING MICROSERVICES
RELEASE 1 - BUILD CAPABILITIES
• Continuously Deliver
CI, automated builds, tests, and deployments, release management
• Re-think the pyramid of tests
Favor contracts testing to UI functional testing
• Control dependencies
Modules integration via HTTP, dependency graph, transaction logging
• Release to production
Learn about your prod environment, consider containers and/or in-process
lightweight web servers, load balancers, caching, etc…
• Monitor & Analyse
Have system monitoring and data analytics in place.
DELIVERING MICROSERVICES
RELEASE 2 - FIRST MICROSERVICES
Discovery Release 1 Release 2 Release N…
DELIVERING MICROSERVICES
RELEASE 2 - ARCHITECTURE
greenfield
brownfield
monolith
services
services
DELIVERING MICROSERVICES
RELEASE 2 - ARCHITECTURE
greenfield
brownfield
monolith
services
services
DELIVERING MICROSERVICES
RELEASE 2 - ARCHITECTURE
greenfield
brownfield
monolith
Client
Presentation
services
services
DELIVERING MICROSERVICES
RELEASE 2 - ARCHITECTURE
greenfield
brownfield
monolith
Client
Presentation
Biz Services
services
services
DELIVERING MICROSERVICES
RELEASE 2 - ARCHITECTURE
greenfield
brownfield
monolith
Client
Presentation
Biz Services
services
services
services
DELIVERING MICROSERVICES
RELEASE 2 - NEW SERVICE USE CASES
DELIVERING MICROSERVICES
RELEASE 2 - NEW SERVICE USE CASES
new bounded context
DELIVERING MICROSERVICES
RELEASE 2 - NEW SERVICE USE CASES
new bounded context scale separately
DELIVERING MICROSERVICES
RELEASE 2 - NEW SERVICE USE CASES
new bounded context scale separately
security
DELIVERING MICROSERVICES
RELEASE 2 - NEW SERVICE USE CASES
new bounded context scale separately
securitydata aggregation
DELIVERING MICROSERVICES
RELEASE 2 - ISOLATION
DATA
"No direct database access is allowed from outside the
service, and there’s no data sharing among the services"
Werner Vogels, CTO and Vice President of amazon.com
DELIVERING MICROSERVICES
RELEASE 2 - ISOLATION
CONTAINERS
LXD
DELIVERING MICROSERVICES
RELEASE 2 - ISOLATION
INTEGRATION
Orchestration Choreography
http://www.thoughtworks.com/insights/blog/scaling-microservices-event-stream
DELIVERING MICROSERVICES
RELEASE 2 - LOWER BARRIER TO ENTRY
TO BE ADDED
DELIVERING MICROSERVICES
RELEASE 2 - BUILD WHAT YOU CAN SUPPORT
DELIVERING MICROSERVICES
RELEASE 2 - UNDERSTAND SERVICES
• Know if and when to create a new service
new bounded context, aggregation, security, scale independently
• Define (your level of) isolation
code, compilation, runtime, persistence, integration
• Reduce barrier to entry
repository blueprint, pipeline template, scaffolding script
• Build what you can support
develop DevOps culture (e.g. infrastructure as code)
DELIVERING MICROSERVICES
RELEASE N - SCALE
Discovery Release 1 Release 2 Release N…
DELIVERING MICROSERVICES
RELEASE N - SCALING FOR LOAD
CAP THEOREM
DELIVERING MICROSERVICES
Availability
Consistency
Partition
Tolerance
DELIVERING MICROSERVICES
RELEASE N - SCALING FOR LOAD
ARCHITECTURE
DELIVERING MICROSERVICES
RELEASE N - SCALING FOR LOAD
ARCHITECTURE
Consistent & Available
(No Partition Tolerance)
DELIVERING MICROSERVICES
RELEASE N - SCALING FOR LOAD
ARCHITECTURE
Consistent & Available
(No Partition Tolerance)
Partition Tolerant & Available
(No consistency)
DELIVERING MICROSERVICES
RELEASE N - SCALING FOR LOAD
ARCHITECTURE
Consistent & Available
(No Partition Tolerance)
Partition Tolerant & Available
(No consistency)
Partition Tolerant & Available
(Eventual consistency)
read replicas
Writes Reads
RELEASE N - SCALING DELIVERY
DELIVERING MICROSERVICES
PO
BA
QA
DEV
OPS
RELEASE N - SCALING DELIVERY
SERVICE TEAMS
DELIVERING MICROSERVICES
PO
BA
QA
DEV
OPS
RELEASE N - SCALING DELIVERY
SERVICE TEAMS
DELIVERING MICROSERVICES
service team
PO
BA
QA
DEV
OPS
RELEASE N - SCALING DELIVERY
SERVICE TEAMS
DELIVERING MICROSERVICES
service team
service A
service B service C
HQ
PO
BA
QA
DEV
OPS
RELEASE N - SCALING DELIVERY
SERVICE TEAMS
DELIVERING MICROSERVICES
service team
service A
service B service C
HQ
service A service B service C
PO
BA
QA
DEV
OPS
RELEASE N - SCALING DELIVERY
SERVICE TEAMS
DELIVERING MICROSERVICES
service team
service A
service B service C
HQ
service A service B service C
RELEASE N - SCALING DELIVERY
DISTRIBUTED TEAMS
DELIVERING MICROSERVICES
CHENGDUBRISBANE SYDNEY PERTH
RELEASE N - SCALING DELIVERY
DISTRIBUTED TEAMS
DELIVERING MICROSERVICES
CHENGDUBRISBANE
mogul-service pizza-image-service
SYDNEY PERTH
RELEASE N - SCALING DELIVERY
DISTRIBUTED TEAMS
DELIVERING MICROSERVICES
CHENGDUBRISBANE
mogul-service pizza-image-service
SYDNEY PERTH
media-serviceauth-service
dough-service
email-service
mogul-private-service
moderation-service
pizza-service
order-service
leaderboard-service
charity-service
microservices? need big upfront design?
Microservices
strategic value break the monolith scale re-org
CONCLUSION
KEY TAKEAWAYS
microservices? need big upfront design?
Microservices
strategic value break the monolith scale re-org
CONCLUSION
• what are microservices
KEY TAKEAWAYS
microservices? need big upfront design?
Microservices
strategic value break the monolith scale re-org
CONCLUSION
• what are microservices
• does not require big upfront design
KEY TAKEAWAYS
microservices? need big upfront design?
Microservices
strategic value break the monolith scale re-org
CONCLUSION
• what are microservices
• does not require big upfront design
• application of agile techniques to distributed systems
KEY TAKEAWAYS
microservices? need big upfront design?
Microservices
strategic value break the monolith scale re-org
CONCLUSION
• what are microservices
• does not require big upfront design
• application of agile techniques to distributed systems
• agree with business why microservices
KEY TAKEAWAYS
microservices? need big upfront design?
Microservices
strategic value break the monolith scale re-org
CONCLUSION
• what are microservices
• does not require big upfront design
• application of agile techniques to distributed systems
• agree with business why microservices
• continuous delivery, testing strategy, monitoring
KEY TAKEAWAYS
microservices? need big upfront design?
Microservices
strategic value break the monolith scale re-org
CONCLUSION
• what are microservices
• does not require big upfront design
• application of agile techniques to distributed systems
• agree with business why microservices
• continuous delivery, testing strategy, monitoring
• start small, grow your own capabilities
KEY TAKEAWAYS
microservices? need big upfront design?
Microservices
strategic value break the monolith scale re-org
CONCLUSION
• what are microservices
• does not require big upfront design
• application of agile techniques to distributed systems
• agree with business why microservices
• continuous delivery, testing strategy, monitoring
• start small, grow your own capabilities
• scale your services and your organisation
KEY TAKEAWAYS
microservices? need big upfront design?
Microservices
strategic value break the monolith scale re-org
CONCLUSION
• what are microservices
• does not require big upfront design
• application of agile techniques to distributed systems
• agree with business why microservices
• continuous delivery, testing strategy, monitoring
• start small, grow your own capabilities
• scale your services and your organisation
• choose what works for you
KEY TAKEAWAYS
jeandamore
blog.corsamore.com
jeandamore
jdamore
Jean D’Amore
Technology Market Principal
jdamore@thoughtworks.com
ABOUT ME

More Related Content

What's hot (20)

PDF
Software Architecture Conference - Monitoring Microservices - A Challenge
Adrian Cockcroft
 
PPTX
Micro Service Architecture
Eduards Sizovs
 
PPTX
Java micro-services
James Lewis
 
PPTX
From Monolith to Microservices – and Beyond!
Jules Pierre-Louis
 
PPTX
From a monolith to microservices + REST: The evolution of LinkedIn's architec...
Karan Parikh
 
PDF
What's Missing? Microservices Meetup at Cisco
Adrian Cockcroft
 
PDF
Microxchg Analyzing Response Time Distributions for Microservices
Adrian Cockcroft
 
PDF
Evolution of Microservices - Craft Conference
Adrian Cockcroft
 
PPTX
Monitorama - Please, no more Minutes, Milliseconds, Monoliths or Monitoring T...
Adrian Cockcroft
 
PDF
#JaxLondon keynote: Developing applications with a microservice architecture
Chris Richardson
 
PDF
Building a High-Performance Reactive Microservices Architecture
Cognizant
 
PDF
Circuit breaker mechanism for Microservices based architecture
Kunal Grover
 
PDF
Developing applications with a microservice architecture (SVforum, microservi...
Chris Richardson
 
PDF
The Cloud Revolution - Philippines Cloud Summit
Randy Bias
 
PDF
Microservices and functional programming
Michael Neale
 
PDF
introduction to micro services
Spyros Lambrinidis
 
PDF
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Matt Stine
 
PDF
Cloud Native Cost Optimization UCC
Adrian Cockcroft
 
PDF
Networking is NOT Free: Lessons in Network Design
Randy Bias
 
PDF
Resilient Microservices with Spring Cloud
VMware Tanzu
 
Software Architecture Conference - Monitoring Microservices - A Challenge
Adrian Cockcroft
 
Micro Service Architecture
Eduards Sizovs
 
Java micro-services
James Lewis
 
From Monolith to Microservices – and Beyond!
Jules Pierre-Louis
 
From a monolith to microservices + REST: The evolution of LinkedIn's architec...
Karan Parikh
 
What's Missing? Microservices Meetup at Cisco
Adrian Cockcroft
 
Microxchg Analyzing Response Time Distributions for Microservices
Adrian Cockcroft
 
Evolution of Microservices - Craft Conference
Adrian Cockcroft
 
Monitorama - Please, no more Minutes, Milliseconds, Monoliths or Monitoring T...
Adrian Cockcroft
 
#JaxLondon keynote: Developing applications with a microservice architecture
Chris Richardson
 
Building a High-Performance Reactive Microservices Architecture
Cognizant
 
Circuit breaker mechanism for Microservices based architecture
Kunal Grover
 
Developing applications with a microservice architecture (SVforum, microservi...
Chris Richardson
 
The Cloud Revolution - Philippines Cloud Summit
Randy Bias
 
Microservices and functional programming
Michael Neale
 
introduction to micro services
Spyros Lambrinidis
 
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Matt Stine
 
Cloud Native Cost Optimization UCC
Adrian Cockcroft
 
Networking is NOT Free: Lessons in Network Design
Randy Bias
 
Resilient Microservices with Spring Cloud
VMware Tanzu
 

Viewers also liked (20)

PDF
Building a Bank out of Microservices (NDC Sydney, August 2016)
Graham Lea
 
PDF
REST vs. Messaging For Microservices
Eberhard Wolff
 
PPTX
MicroServices at Netflix - challenges of scale
Sudhir Tonse
 
PDF
Dockercon State of the Art in Microservices
Adrian Cockcroft
 
PDF
Micro services Architecture with Vortex -- Part I
Angelo Corsaro
 
PPTX
Microservices Architecture for Web Applications using Amazon AWS Cloud
Mitoc Group
 
PDF
From no services to Microservices
João Cavalheiro
 
PPTX
Overcoming Obstacles to Success with Microservices
Perficient, Inc.
 
PPTX
Apache Camel & The Art of Entreprise Integration
Abdellatif BOUCHAMA
 
PDF
Micro-services Battle Scars
Richard Rodger
 
PDF
Design Patterns in Micro-services architectures & Gilmour
Piyush Verma
 
PPTX
Moving to microservices – a technology and organisation transformational journey
Boyan Dimitrov
 
PDF
Microservices, DevOps and IoT- Bob Familiar
WithTheBest
 
PDF
DSR Microservices (Day 1, Part 2)
Steve Upton
 
PPTX
Load balancing theory and practice
FoundationDB
 
PPTX
Alle reden über Microservices - Wie haben wir es bei LeanIX gemacht @ EA Conn...
LeanIX GmbH
 
PPTX
Microservices: next-steps
Boyan Dimitrov
 
PPTX
Business processes in the cloud
Lykle Thijssen
 
PDF
Adventures with Microservices
Anand Agrawal
 
PDF
Developing and Deploying Java applications on the Amazon Elastic Compute Clou...
Chris Richardson
 
Building a Bank out of Microservices (NDC Sydney, August 2016)
Graham Lea
 
REST vs. Messaging For Microservices
Eberhard Wolff
 
MicroServices at Netflix - challenges of scale
Sudhir Tonse
 
Dockercon State of the Art in Microservices
Adrian Cockcroft
 
Micro services Architecture with Vortex -- Part I
Angelo Corsaro
 
Microservices Architecture for Web Applications using Amazon AWS Cloud
Mitoc Group
 
From no services to Microservices
João Cavalheiro
 
Overcoming Obstacles to Success with Microservices
Perficient, Inc.
 
Apache Camel & The Art of Entreprise Integration
Abdellatif BOUCHAMA
 
Micro-services Battle Scars
Richard Rodger
 
Design Patterns in Micro-services architectures & Gilmour
Piyush Verma
 
Moving to microservices – a technology and organisation transformational journey
Boyan Dimitrov
 
Microservices, DevOps and IoT- Bob Familiar
WithTheBest
 
DSR Microservices (Day 1, Part 2)
Steve Upton
 
Load balancing theory and practice
FoundationDB
 
Alle reden über Microservices - Wie haben wir es bei LeanIX gemacht @ EA Conn...
LeanIX GmbH
 
Microservices: next-steps
Boyan Dimitrov
 
Business processes in the cloud
Lykle Thijssen
 
Adventures with Microservices
Anand Agrawal
 
Developing and Deploying Java applications on the Amazon Elastic Compute Clou...
Chris Richardson
 
Ad

Similar to Delivering with Microservices - How to Iterate Towards Sophistication (20)

PPTX
building microservices
Cisco DevNet
 
PPTX
Service Architectures at Scale
Randy Shoup
 
PPTX
Microservice intro
ramesh_sharma
 
PPTX
Concurrency at Scale: Evolution to Micro-Services
Randy Shoup
 
PDF
Microservices Architecture
Srinivasan Nanduri
 
PDF
Everything you want to know about microservices
Youness Lasmak
 
PPTX
Microservices
Rajesh Kumar
 
PPTX
An introduction to Microservices
Cisco DevNet
 
PPTX
Micro Services Architecture
Ranjan Baisak
 
PDF
#ATAGTR2020 Presentation - Microservices – Explored
Agile Testing Alliance
 
PDF
Microservices Practitioner Summit Jan '15 - Microservice Ecosystems At Scale ...
Ambassador Labs
 
PPTX
Ledingkart Meetup #1: Monolithic to microservices in action
Mukesh Singh
 
PPTX
Microservices
Shubhani Jain
 
PPTX
Micro service Arthicetcure
Kian Paimani
 
PDF
Microservices for Java Architects (Madison-Milwaukee, April 28-9, 2015)
Derek Ashmore
 
PDF
Microservices - Hitchhiker's guide to cloud native applications
Stijn Van Den Enden
 
PPTX
Microservices architecture
Faren faren
 
PDF
Building Microservices Software practics
muhammed84essa
 
PPTX
agile microservices @scaibo
Ciro Donato Caiazzo
 
PPTX
Best Practices Building Cloud Scale Apps with Microservices
Jim (张建军) Zhang
 
building microservices
Cisco DevNet
 
Service Architectures at Scale
Randy Shoup
 
Microservice intro
ramesh_sharma
 
Concurrency at Scale: Evolution to Micro-Services
Randy Shoup
 
Microservices Architecture
Srinivasan Nanduri
 
Everything you want to know about microservices
Youness Lasmak
 
Microservices
Rajesh Kumar
 
An introduction to Microservices
Cisco DevNet
 
Micro Services Architecture
Ranjan Baisak
 
#ATAGTR2020 Presentation - Microservices – Explored
Agile Testing Alliance
 
Microservices Practitioner Summit Jan '15 - Microservice Ecosystems At Scale ...
Ambassador Labs
 
Ledingkart Meetup #1: Monolithic to microservices in action
Mukesh Singh
 
Microservices
Shubhani Jain
 
Micro service Arthicetcure
Kian Paimani
 
Microservices for Java Architects (Madison-Milwaukee, April 28-9, 2015)
Derek Ashmore
 
Microservices - Hitchhiker's guide to cloud native applications
Stijn Van Den Enden
 
Microservices architecture
Faren faren
 
Building Microservices Software practics
muhammed84essa
 
agile microservices @scaibo
Ciro Donato Caiazzo
 
Best Practices Building Cloud Scale Apps with Microservices
Jim (张建军) Zhang
 
Ad

More from Thoughtworks (20)

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

Recently uploaded (20)

PDF
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
PDF
Biography of Daniel Podor.pdf
Daniel Podor
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
July Patch Tuesday
Ivanti
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
Biography of Daniel Podor.pdf
Daniel Podor
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
July Patch Tuesday
Ivanti
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 

Delivering with Microservices - How to Iterate Towards Sophistication

  • 1. DELIVERING WITH MICROSERVICES HOW TO ITERATE TOWARDS SOPHISTICATION
  • 5. CROSS CUTTING CONCERNS public void RefreshAllResults() { […] WithConnection( connection => connection.Execute(DbTable + "UpdateAll", CommandType.StoredProcedure)); […] } results-service UpdateAllResults service-a service-b service-c FROM THE TRENCHES
  • 8. REFLECTIONS microservices? need big upfront design? FROM THE TRENCHES
  • 9. DEFINE MICROSERVICES WHEN AGILE MEETS DISTRIBUTED SYSTEMS
  • 10. AN ALTERNATIVE TO VENDOR-LED SOA http://www.infoq.com/presentations/webber-guerilla-soa DEFINE MICROSERVICES
  • 11. AN ALTERNATIVE TO VENDOR-LED SOA http://www.infoq.com/presentations/webber-guerilla-soa DEFINE MICROSERVICES The Problem
  • 12. AN ALTERNATIVE TO VENDOR-LED SOA http://www.infoq.com/presentations/webber-guerilla-soa DEFINE MICROSERVICES The Problem The Solution
  • 13. AN ALTERNATIVE TO VENDOR-LED SOA http://www.infoq.com/presentations/webber-guerilla-soa DEFINE MICROSERVICES The Problem The Solution The Problem Again
  • 14. AN ALTERNATIVE TO VENDOR-LED SOA http://www.infoq.com/presentations/webber-guerilla-soa DEFINE MICROSERVICES The Problem The Solution Back to The Future The Problem Again
  • 15. DISTRIBUTED AND WEB ARCHITECTURES C++ 1980s Java 1990s ANSI C TCP Client-Sever RPC CORBA RMI DEFINE MICROSERVICES
  • 16. DISTRIBUTED AND WEB ARCHITECTURES C++ 1980s Java 1990s ANSI C TCP Client-Sever RPC CORBA RMI DEFINE MICROSERVICES 2000s 2010s XML JavaScript SOAP SOA JSON REST HTTP The Internet
  • 18. THE PRODIGAL SON Service Oriented Architecture Continuous Delivery Microservices DEFINE MICROSERVICES XP AgileThe Internet Distributed Systems
  • 19. REFLECTIONS microservices? need big upfront design? Microservices DEFINE MICROSERVICES
  • 20. MICROSERVICES RUSH WHAT MAKE THEM SO POPULAR?
  • 21. INTEREST 0 January 2014 June 2015 100 Google Trends Data # “microservices” searches MICROSERVICES RUSH
  • 22. SCALE "In order to scale to the next order of magnitude, we're rethinking the fundamentals of our architecture" Philip Fisher-Ogden, Director of Engineering "We created the viewing service to encapsulate the domain of viewing data collection, processing, and providing " "These components would be easier to develop, test, debug, deploy, and operate if they were extracted into their own services." http://www.techrepublic.com/article/netflix-on-how-to-build-services-that-scale-beyond-millions-of-users/ MICROSERVICES RUSH
  • 23. BREAK THE MONOLITH Monolithic Perl —> Monolithic C++ —> Java —> microservices Monolithic C++ —> Perl / C++ —> Java / Scala -> microservices Monolithic Rails —> JS / Rails / Scala —> microservices MICROSERVICES RUSH
  • 25. CONWAY’S LAW "Any organisation that designs a system […] will inevitably produce a design whose structure is a copy of the organisation's communication structure." Melvin Conway, How Do Committees Invent - 1968 MICROSERVICES RUSH
  • 26. REFLECTIONS microservices? need big upfront design? Microservices MICROSERVICES RUSH
  • 27. REFLECTIONS microservices? need big upfront design? Microservices strategic value MICROSERVICES RUSH
  • 28. REFLECTIONS microservices? need big upfront design? Microservices strategic value break the monolith MICROSERVICES RUSH
  • 29. REFLECTIONS microservices? need big upfront design? Microservices strategic value break the monolith scale MICROSERVICES RUSH
  • 30. REFLECTIONS microservices? need big upfront design? Microservices strategic value break the monolith scale re-org MICROSERVICES RUSH
  • 37. JOURNEY Discovery Release 1 Release 2 DELIVERING MICROSERVICES
  • 38. JOURNEY Discovery Release 1 Release 2 Release N… DELIVERING MICROSERVICES
  • 39. JOURNEY Discovery Release 1 Release 2 Release N… DELIVERING MICROSERVICES
  • 40. JOURNEY Capabilities Discovery Release 1 Release 2 Release N… DELIVERING MICROSERVICES
  • 41. DISCOVERY - WHY MICROSERVICES Discovery Release 1 Release 2 Release N… DELIVERING MICROSERVICES
  • 42. BUSINESS & ARCHITECTURE CONTRACT DELIVERING MICROSERVICES
  • 43. BUSINESS & ARCHITECTURE CONTRACT DELIVERING MICROSERVICES Strategic Goals
  • 44. BUSINESS & ARCHITECTURE CONTRACT DELIVERING MICROSERVICES Strategic Goals Architectural Principles
  • 45. BUSINESS & ARCHITECTURE CONTRACT DELIVERING MICROSERVICES Strategic Goals Architectural Principles Design & Delivery Practices
  • 46. BUSINESS & ARCHITECTURE CONTRACT DELIVERING MICROSERVICES Strategic Goals Architectural Principles Design & Delivery Practices
  • 47. USER JOURNEYS ACROSS SERVICES users journeys services journeys DELIVERING MICROSERVICES
  • 48. RELEASE 1 - BUILD A MINILITH Discovery Release 1 Release 2 Release N… DELIVERING MICROSERVICES
  • 49. RELEASE 1 - ARCHITECTURE DELIVERING MICROSERVICES
  • 50. RELEASE 1 - ARCHITECTURE greenfield DELIVERING MICROSERVICES
  • 51. RELEASE 1 - ARCHITECTURE greenfield brownfield monolith DELIVERING MICROSERVICES
  • 52. RELEASE 1 - ARCHITECTURE greenfield brownfield monolith minilith minilith DELIVERING MICROSERVICES
  • 53. minilith RELEASE 1 - ARCHITECTURE greenfield brownfield monolith minilith minilith DELIVERING MICROSERVICES
  • 54. minilith RELEASE 1 - ARCHITECTURE greenfield brownfield monolith minilith minilith Client DELIVERING MICROSERVICES
  • 55. minilith RELEASE 1 - ARCHITECTURE greenfield brownfield monolith minilith minilith Client Presentation DELIVERING MICROSERVICES
  • 56. minilith RELEASE 1 - ARCHITECTURE greenfield brownfield monolith minilith minilith Client Presentation Biz Services DELIVERING MICROSERVICES
  • 57. minilith RELEASE 1 - ARCHITECTURE greenfield brownfield monolith minilith minilith Client Presentation Biz Services services DELIVERING MICROSERVICES
  • 58. RELEASE 1 - CONTINUOUS DELIVERY • CODE • BUILD • PLAN • RELEASE • TO TEST FLIGHT • CODE • BUILD • PLAN • RELEASE • TO TEST FLIGHT CODE PLAN BUILD TEST RELEASE TO PRODUCT OWNER + BETA INSTALL TRACK USAGE USER FEEDBACK Continuous Integration Usability and Feedback Cycle DELIVERING MICROSERVICES
  • 59. RELEASE 1 - CONTRACT TESTING Functional Integration Unit Unit Contracts Web Application Web Services DELIVERING MICROSERVICES
  • 60. RELEASE 1 - COUPLING GRAPHS WITH D3JS DELIVERING MICROSERVICES
  • 61. RELEASE 1 - COUPLING GRAPHS WITH D3JS Requests Flow http://techblog.netflix.com/2015/02/a-microscope-on-microservices.html DELIVERING MICROSERVICES
  • 62. Dependencies https://www.youtube.com/watch?v=hsoovFbpAoE RELEASE 1 - COUPLING GRAPHS WITH D3JS Requests Flow http://techblog.netflix.com/2015/02/a-microscope-on-microservices.html DELIVERING MICROSERVICES
  • 63. RELEASE 1 - TRANSACTIONS LOGGING service-A service-B service-C DELIVERING MICROSERVICES
  • 64. RELEASE 1 - TRANSACTIONS LOGGING service-A service-B service-C ID: ABCD DELIVERING MICROSERVICES
  • 65. RELEASE 1 - TRANSACTIONS LOGGING service-A service-B service-C ID: ABCD ID: EFGH caused by ABCD DELIVERING MICROSERVICES
  • 66. RELEASE 1 - TRANSACTIONS LOGGING service-A service-B service-C ID: ABCD ID: EFGH caused by ABCD ID: IJKL caused by EFGH DELIVERING MICROSERVICES
  • 67. RELEASE 1 - DIFFERENT LEVELS OF MONITORING Infrastructure New Relic RuntimeLog Logstash & Kibana DELIVERING MICROSERVICES
  • 68. RELEASE 1 - BUILD CAPABILITIES • Continuously Deliver CI, automated builds, tests, and deployments, release management • Re-think the pyramid of tests Favor contracts testing to UI functional testing • Control dependencies Modules integration via HTTP, dependency graph, transaction logging • Release to production Learn about your prod environment, consider containers and/or in-process lightweight web servers, load balancers, caching, etc… • Monitor & Analyse Have system monitoring and data analytics in place. DELIVERING MICROSERVICES
  • 69. RELEASE 2 - FIRST MICROSERVICES Discovery Release 1 Release 2 Release N… DELIVERING MICROSERVICES
  • 70. RELEASE 2 - ARCHITECTURE greenfield brownfield monolith services services DELIVERING MICROSERVICES
  • 71. RELEASE 2 - ARCHITECTURE greenfield brownfield monolith services services DELIVERING MICROSERVICES
  • 72. RELEASE 2 - ARCHITECTURE greenfield brownfield monolith Client Presentation services services DELIVERING MICROSERVICES
  • 73. RELEASE 2 - ARCHITECTURE greenfield brownfield monolith Client Presentation Biz Services services services DELIVERING MICROSERVICES
  • 74. RELEASE 2 - ARCHITECTURE greenfield brownfield monolith Client Presentation Biz Services services services services DELIVERING MICROSERVICES
  • 75. RELEASE 2 - NEW SERVICE USE CASES DELIVERING MICROSERVICES
  • 76. RELEASE 2 - NEW SERVICE USE CASES new bounded context DELIVERING MICROSERVICES
  • 77. RELEASE 2 - NEW SERVICE USE CASES new bounded context scale separately DELIVERING MICROSERVICES
  • 78. RELEASE 2 - NEW SERVICE USE CASES new bounded context scale separately security DELIVERING MICROSERVICES
  • 79. RELEASE 2 - NEW SERVICE USE CASES new bounded context scale separately securitydata aggregation DELIVERING MICROSERVICES
  • 80. RELEASE 2 - ISOLATION DATA "No direct database access is allowed from outside the service, and there’s no data sharing among the services" Werner Vogels, CTO and Vice President of amazon.com DELIVERING MICROSERVICES
  • 81. RELEASE 2 - ISOLATION CONTAINERS LXD DELIVERING MICROSERVICES
  • 82. RELEASE 2 - ISOLATION INTEGRATION Orchestration Choreography http://www.thoughtworks.com/insights/blog/scaling-microservices-event-stream DELIVERING MICROSERVICES
  • 83. RELEASE 2 - LOWER BARRIER TO ENTRY TO BE ADDED DELIVERING MICROSERVICES
  • 84. RELEASE 2 - BUILD WHAT YOU CAN SUPPORT DELIVERING MICROSERVICES
  • 85. RELEASE 2 - UNDERSTAND SERVICES • Know if and when to create a new service new bounded context, aggregation, security, scale independently • Define (your level of) isolation code, compilation, runtime, persistence, integration • Reduce barrier to entry repository blueprint, pipeline template, scaffolding script • Build what you can support develop DevOps culture (e.g. infrastructure as code) DELIVERING MICROSERVICES
  • 86. RELEASE N - SCALE Discovery Release 1 Release 2 Release N… DELIVERING MICROSERVICES
  • 87. RELEASE N - SCALING FOR LOAD CAP THEOREM DELIVERING MICROSERVICES Availability Consistency Partition Tolerance
  • 88. DELIVERING MICROSERVICES RELEASE N - SCALING FOR LOAD ARCHITECTURE
  • 89. DELIVERING MICROSERVICES RELEASE N - SCALING FOR LOAD ARCHITECTURE Consistent & Available (No Partition Tolerance)
  • 90. DELIVERING MICROSERVICES RELEASE N - SCALING FOR LOAD ARCHITECTURE Consistent & Available (No Partition Tolerance) Partition Tolerant & Available (No consistency)
  • 91. DELIVERING MICROSERVICES RELEASE N - SCALING FOR LOAD ARCHITECTURE Consistent & Available (No Partition Tolerance) Partition Tolerant & Available (No consistency) Partition Tolerant & Available (Eventual consistency) read replicas Writes Reads
  • 92. RELEASE N - SCALING DELIVERY DELIVERING MICROSERVICES
  • 93. PO BA QA DEV OPS RELEASE N - SCALING DELIVERY SERVICE TEAMS DELIVERING MICROSERVICES
  • 94. PO BA QA DEV OPS RELEASE N - SCALING DELIVERY SERVICE TEAMS DELIVERING MICROSERVICES service team
  • 95. PO BA QA DEV OPS RELEASE N - SCALING DELIVERY SERVICE TEAMS DELIVERING MICROSERVICES service team service A service B service C HQ
  • 96. PO BA QA DEV OPS RELEASE N - SCALING DELIVERY SERVICE TEAMS DELIVERING MICROSERVICES service team service A service B service C HQ service A service B service C
  • 97. PO BA QA DEV OPS RELEASE N - SCALING DELIVERY SERVICE TEAMS DELIVERING MICROSERVICES service team service A service B service C HQ service A service B service C
  • 98. RELEASE N - SCALING DELIVERY DISTRIBUTED TEAMS DELIVERING MICROSERVICES CHENGDUBRISBANE SYDNEY PERTH
  • 99. RELEASE N - SCALING DELIVERY DISTRIBUTED TEAMS DELIVERING MICROSERVICES CHENGDUBRISBANE mogul-service pizza-image-service SYDNEY PERTH
  • 100. RELEASE N - SCALING DELIVERY DISTRIBUTED TEAMS DELIVERING MICROSERVICES CHENGDUBRISBANE mogul-service pizza-image-service SYDNEY PERTH media-serviceauth-service dough-service email-service mogul-private-service moderation-service pizza-service order-service leaderboard-service charity-service
  • 101. microservices? need big upfront design? Microservices strategic value break the monolith scale re-org CONCLUSION KEY TAKEAWAYS
  • 102. microservices? need big upfront design? Microservices strategic value break the monolith scale re-org CONCLUSION • what are microservices KEY TAKEAWAYS
  • 103. microservices? need big upfront design? Microservices strategic value break the monolith scale re-org CONCLUSION • what are microservices • does not require big upfront design KEY TAKEAWAYS
  • 104. microservices? need big upfront design? Microservices strategic value break the monolith scale re-org CONCLUSION • what are microservices • does not require big upfront design • application of agile techniques to distributed systems KEY TAKEAWAYS
  • 105. microservices? need big upfront design? Microservices strategic value break the monolith scale re-org CONCLUSION • what are microservices • does not require big upfront design • application of agile techniques to distributed systems • agree with business why microservices KEY TAKEAWAYS
  • 106. microservices? need big upfront design? Microservices strategic value break the monolith scale re-org CONCLUSION • what are microservices • does not require big upfront design • application of agile techniques to distributed systems • agree with business why microservices • continuous delivery, testing strategy, monitoring KEY TAKEAWAYS
  • 107. microservices? need big upfront design? Microservices strategic value break the monolith scale re-org CONCLUSION • what are microservices • does not require big upfront design • application of agile techniques to distributed systems • agree with business why microservices • continuous delivery, testing strategy, monitoring • start small, grow your own capabilities KEY TAKEAWAYS
  • 108. microservices? need big upfront design? Microservices strategic value break the monolith scale re-org CONCLUSION • what are microservices • does not require big upfront design • application of agile techniques to distributed systems • agree with business why microservices • continuous delivery, testing strategy, monitoring • start small, grow your own capabilities • scale your services and your organisation KEY TAKEAWAYS
  • 109. microservices? need big upfront design? Microservices strategic value break the monolith scale re-org CONCLUSION • what are microservices • does not require big upfront design • application of agile techniques to distributed systems • agree with business why microservices • continuous delivery, testing strategy, monitoring • start small, grow your own capabilities • scale your services and your organisation • choose what works for you KEY TAKEAWAYS