microservices in the cloud at autoscout24

42
ITM Top Leadership Team | 07.03.2015 | Christian Deger Microservices in the cloud at AutoScout24

Upload: christian-deger

Post on 14-Apr-2017

500 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: Microservices in the cloud at AutoScout24

ITM Top Leadership Team | 07.03.2015 | Christian Deger

Microservices in the cloudat AutoScout24

Page 2: Microservices in the cloud at AutoScout24

Christian [email protected]@cdeger

Page 3: Microservices in the cloud at AutoScout24

2,4 Million Vehicles

Page 4: Microservices in the cloud at AutoScout24

17 countries

350 employees

140 in IT

RUS

S

PL

NL

DB

F A

HR RO

BG

UA

I

TR

E

CZ

Page 5: Microservices in the cloud at AutoScout24

1.000.000.000Page Impressions per Month

Page 6: Microservices in the cloud at AutoScout24

2000 Servers2 Data Centers

MTBF optimized

Page 7: Microservices in the cloud at AutoScout24
Page 8: Microservices in the cloud at AutoScout24

NewCEO

Page 9: Microservices in the cloud at AutoScout24

Talent?Do you attract

Page 10: Microservices in the cloud at AutoScout24

21st CenturyWhat does a

tech company look like?

Page 11: Microservices in the cloud at AutoScout24

Great Design

Universally Connected

Mobile First

Instant Business Value

Massive Data Insight

Highly Available

Page 12: Microservices in the cloud at AutoScout24

goodHmm, we are

Page 13: Microservices in the cloud at AutoScout24

Rebooteverything

Page 14: Microservices in the cloud at AutoScout24

.NET / Windows to JVM / Linux

Monolith to Microservices

Data center to AWS

Devs + Ops to Collaboration culture

Involve product people

Page 15: Microservices in the cloud at AutoScout24

Giants

Stand on the Shoulders of

Page 16: Microservices in the cloud at AutoScout24
Page 17: Microservices in the cloud at AutoScout24

samedirection

Page 18: Microservices in the cloud at AutoScout24

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

Page 19: Microservices in the cloud at AutoScout24

Build

MeasureLearn

Page 20: Microservices in the cloud at AutoScout24

Microservices

Page 21: Microservices in the cloud at AutoScout24

Conway’s Law

“organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations”

Page 22: Microservices in the cloud at AutoScout24

Autonomous teams

business capabilitiesorganized around

Page 23: Microservices in the cloud at AutoScout24

crossfunctional teams

Page 24: Microservices in the cloud at AutoScout24

We are all engineers!

Page 25: Microservices in the cloud at AutoScout24

You build it,you run it.

Page 26: Microservices in the cloud at AutoScout24

while developing software

Cost optimization

Page 27: Microservices in the cloud at AutoScout24

ZeroBug Policy

Page 28: Microservices in the cloud at AutoScout24

ContinuousDelivery

Page 29: Microservices in the cloud at AutoScout24

Unlimited Infrastructure with APIs

Page 30: Microservices in the cloud at AutoScout24
Page 31: Microservices in the cloud at AutoScout24

ImmutableServers

Page 32: Microservices in the cloud at AutoScout24

Monitoring is the new testing

Page 33: Microservices in the cloud at AutoScout24

Separatecode deployment

feature release

from

Page 34: Microservices in the cloud at AutoScout24

Nostaging

environment

Page 35: Microservices in the cloud at AutoScout24

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

Page 36: Microservices in the cloud at AutoScout24

?

Page 38: Microservices in the cloud at AutoScout24

Backup

Page 39: Microservices in the cloud at AutoScout24
Page 40: Microservices in the cloud at AutoScout24

How many environments?

V2V3

V6 V5

V4

V7

V5

V8

Engineer CI Dev Staging

V1

V4

Prod

Page 41: Microservices in the cloud at AutoScout24

Target Architecture

Monolith Alarm!

Nanoservices? Composition?

Page 42: Microservices in the cloud at AutoScout24