microservices in the cloud at autoscout24
TRANSCRIPT
ITM Top Leadership Team | 07.03.2015 | Christian Deger
Microservices in the cloudat AutoScout24
Christian [email protected]@cdeger
2,4 Million Vehicles
17 countries
350 employees
140 in IT
RUS
S
PL
NL
DB
F A
HR RO
BG
UA
I
TR
E
CZ
1.000.000.000Page Impressions per Month
2000 Servers2 Data Centers
MTBF optimized
NewCEO
Talent?Do you attract
21st CenturyWhat does a
tech company look like?
Great Design
Universally Connected
Mobile First
Instant Business Value
Massive Data Insight
Highly Available
goodHmm, we are
Rebooteverything
.NET / Windows to JVM / Linux
Monolith to Microservices
Data center to AWS
Devs + Ops to Collaboration culture
Involve product people
Giants
Stand on the Shoulders of
samedirection
STRATEGICGOALSGoals of the business side
ARCHITECTURALPRINCIPLESHigh-Level Principles
DESIGN AND DELIVERY PRINCIPLESTactical measures
REDUCE TIME TO MARKETSpeed, Fast Feedback
COST EFFICIENCYCollect metrics to allow decisions cost vs. value.
SUPPORT DATA-DRIVEN DECISIONSListen to users and validate hypothesis.Provide as many relevant metrics & data as possible.
YOU BUILT IT, YOU RUN ITThe team is responsible for shaping, building, running and maintaining its products. Fast feedback from live and customers helps us to continuously improve.
ORGANIZED AROUND BUSINESS CAPABILITIESBuild teams around products not projects. Follow the domain and respect bounded contexts. Inverse Conway Maneuver.
LOOSELY COUPLEDBy default avoid sharing and tight coupling, except for the big things in common. Don’t create the next monolith.
MACRO AND MICRO ARCHITECTUREClear separation. Autonomous micro services within the rules and constraints of the macro architecture.
AWS FIRSTFavor AWS platform service over managed service, over self-hosted OSS, over self-rolled solutions.
DATA-DRIVEN / METRIC-DRIVENCollect metrics from processes and applications. Analyze, alert and act on them.
ELIMINATE ACCIDENTAL COMPLEXITYStrive to keep it simple. Focus on essential complexity. You build one, you delete one.
AUTONOMOUS TEAMSMake fast local decisions. Be responsible. Know your boundaries. Share findings.
INFRASTRACTURE AS CODEAutomate everything: Reproducible, traceable and tested.Immutable servers over snowflake servers.
COLLABORATION CULTUREEngineers from all backgrounds work together in collaborative teams as engineers and share responsibilities. No silos.
BE BOLDGo into production early. Value monitoring over tests. Recover and learn. Optimize for MTTR not MTBF.
SECURITY, COMPLIANCE AND DATA PRIVACYSecurity must be included from the beginning and everybody’s concern. Keep data-privacy in mind.
CONTAINMENT AND BOUNDARIESAlign blast radius and vendor lock-in with the boundaries of the organization or business capabilities.
Version 1.0Icons made by Freepik from www.flaticon.com are licensed under CC BY 3.0
Build
MeasureLearn
Microservices
Conway’s Law
“organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations”
Autonomous teams
business capabilitiesorganized around
crossfunctional teams
We are all engineers!
You build it,you run it.
while developing software
Cost optimization
ZeroBug Policy
ContinuousDelivery
Unlimited Infrastructure with APIs
ImmutableServers
Monitoring is the new testing
Separatecode deployment
feature release
from
Nostaging
environment
STRATEGICGOALSGoals of the business side
ARCHITECTURALPRINCIPLESHigh-Level Principles
DESIGN AND DELIVERY PRINCIPLESTactical measures
REDUCE TIME TO MARKETSpeed, Fast Feedback
COST EFFICIENCYCollect metrics to allow decisions cost vs. value.
SUPPORT DATA-DRIVEN DECISIONSListen to users and validate hypothesis.Provide as many relevant metrics & data as possible.
YOU BUILT IT, YOU RUN ITThe team is responsible for shaping, building, running and maintaining its products. Fast feedback from live and customers helps us to continuously improve.
ORGANIZED AROUND BUSINESS CAPABILITIESBuild teams around products not projects. Follow the domain and respect bounded contexts. Inverse Conway Maneuver.
LOOSELY COUPLEDBy default avoid sharing and tight coupling, except for the big things in common. Don’t create the next monolith.
MACRO AND MICRO ARCHITECTUREClear separation. Autonomous micro services within the rules and constraints of the macro architecture.
AWS FIRSTFavor AWS platform service over managed service, over self-hosted OSS, over self-rolled solutions.
DATA-DRIVEN / METRIC-DRIVENCollect metrics from processes and applications. Analyze, alert and act on them.
ELIMINATE ACCIDENTAL COMPLEXITYStrive to keep it simple. Focus on essential complexity. You build one, you delete one.
AUTONOMOUS TEAMSMake fast local decisions. Be responsible. Know your boundaries. Share findings.
INFRASTRACTURE AS CODEAutomate everything: Reproducible, traceable and tested.Immutable servers over snowflake servers.
COLLABORATION CULTUREEngineers from all backgrounds work together in collaborative teams as engineers and share responsibilities. No silos.
BE BOLDGo into production early. Value monitoring over tests. Recover and learn. Optimize for MTTR not MTBF.
SECURITY, COMPLIANCE AND DATA PRIVACYSecurity must be included from the beginning and everybody’s concern. Keep data-privacy in mind.
CONTAINMENT AND BOUNDARIESAlign blast radius and vendor lock-in with the boundaries of the organization or business capabilities.
Version 1.0Icons made by Freepik from www.flaticon.com are licensed under CC BY 3.0
?
Picture Credits• "HotWheels - '69 Ford Torino Talladega“ by Leap Kye, licensed under CC BY-ND 2.0• Differences between Traditional vs Next Generation by Simon Wardley under CC BY-SA 3.0• Enterprise IT Adoption Cycle by Simon Wardley under CC BY-SA 3.0• And the future is private by Simon Wardley under CC BY-SA 3.0• Leosvel et Diosmani by Ludovic Péron under CC BY-SA 3.0• Spare wheel by Brian Snelson under CC BY 2.0
Backup
How many environments?
V2V3
V6 V5
V4
V7
V5
V8
Engineer CI Dev Staging
V1
V4
Prod
Target Architecture
Monolith Alarm!
Nanoservices? Composition?