SCALING ZALANDO

Size: px
Start display at page:

Download "SCALING ZALANDO"

Transcription

1 SCALING ZALANDO FELIX

2 ABOUT ME Software Zalando Software Engineer by heart 8 years in IT 2 years as an Architect 2

3 ZALANDO 3

4 WHO KNOWS ZALANDO?

5 2008

6 2 monoliths...

7 2015

8 HOW BIG ARE WE NOW?

9 ZALANDO IN NUMBERS ~ EUR 3 billion revenue > 160m visits per month > employees in Europe ~ 1600 tech employees 7 tech hubs: Berlin, Dublin, Helsinki... 9

10 STILL GROWING RAPIDLY

11 2015 SOMETHING MORE HAPPENED...

12 WE WANT AUTONOMOUS TEAMS TO DELIVER AMAZING PRODUCTS EFFICIENTLY AT SCALE.

13 RADICAL AGILITY 13

14 14

15 TECH CONSTITUTION 15

16 16

17 RULES OF PLAY 17

18 WHICH ARCHITECTURE STYLE IS FOSTERED BY RADICAL AGILITY?

19 ARCHITECTURE PRINCIPLES 19

20 ARCHITECTURE PRINCIPLES We prefer loosely coupled services. 20

21 ARCHITECTURE PRINCIPLES IN DETAIL Microservice with RESTful APIs Loosely coupled systems Favor message-driven Asynchronous communication Everything fails Resilient systems Operational Excellence Automate everything 21

22 HOW DO WE OPERATE OUR SERVICES?

23 AWS SETUP 23

24 AWS SETUP Each team has its own account Team AWS Account Team AWS Account Team AWS Account You build it, you run it Deployment via our STUPS tooling 24 T h e Internet

25 STUPS.io 25

26 STUPS.io 26

27 HOW DO WE TEST OUR SERVICES?

28 TESTING 28

29 TESTING Of course, automated testing - a lot Trade-off: Time to prod <> test coverage (with real systems) Testing flows becomes harder with microservices 29

30 OUR TESTING PYRAMID - WHERE TO RUN WHAT 30

31 CONSUMER-DRIVEN CONTRACTS Better collaboration between teams Emphasize importance of APIs Lowers inter-team alignment efforts 31

32 HOW DO TEAMS COLLABORATE?

33 At best, not necessary to deliver COLLABORATION BETWEEN TEAMS Through APIs Through Code - shared code 33

34 OPEN SOURCE CULTURE 34

35 Open Source Evangelist, Lauri Apple OPEN SOURCE CULTURE Open Source Guild Management supports Open Source 35

36 Approvals for pull requests Started in our Innovation Labs Now an official Github plugin 36

37 OPEN SOURCE FIRST

38 SHARED CODE BETWEEN TEAMS HAS TO BE OPEN SOURCE.

39 AND HOW DOES ARCHITECTURE WORK TAKE PLACE?

40 THE ARCHITECT 40

41 THE ARCHITECT 41

42 SERVICE ARCHITECTURE IS DESIGNED BY DELIVERY TEAMS.

43 GLOBAL ARCHITECTURE IS OWNED BY THE ARCHITECTURE TEAM.

44 ARCHITECTURE TEAM 44

45 4 in Berlin, 1 in Dublin ARCHITECTURE TEAM Focus on new platform and APIs Overarching team to support delivery teams Tech decisions with company-wide impact 45

46 WE SUPPORT TEAMS IN BUILDING MOST APPROPRIATE TECH SOLUTIONS.

47 RADICAL AGILITY VS ARCHITECTURE TEAM? We respect self-autonomy of teams. We support teams as technical consultants. We can provide outside perspective + broader technical overview. We let teams make their own architecture decisions. 47

48 THERE WAS TEAM COLLABORATION THROUGH APIS...

49 API GUILD 49

50 Group of Architect and Engineers API GUILD Develops API Guidelines Drives API Reviews 50

51 API FIRST

52 Foster review culture API REVIEWS Get feedback as soon as possible API Guild is public review partner 52

53 API GUIDELINES 53

54 REST Maturity Level 2 API GUIDELINES Backward compatibility over versioning Common Naming Rules and Data Objects 54

55 API GUIDELINES 55

56 OUR FUTURE SYSTEM WILL CONSIST OF THOUSANDS OF MICROSERVICES.

57 HOW DO TEAMS FIND AVAILABLE APIs?

58 API DISCOVERY 58

59 API DISCOVERY A system to crawl and curate all deployed APIs. Twintip Crawler APIs Twintip Storage Swagger UI

60 API DISCOVERY 60

61 HOW DO TEAMS CHOOSE TECH STACKS?

62 TECHNOLOGISTS GUILD 62

63 Knowledge sharing and discussion TECHNOLOGISTS GUILD Owns and curates Tech Radar Owns internal Tech Compendium 63

64 TECH RADAR We try to give delivery teams guidance in choosing technologies. Tech Radar is created by involved engineers in the technologists guild. Each team is encouraged to contribute experience reports. 64

65 65

66 SCALING ZALANDO Zalando in general Architecture specific Autonomous delivery teams API Guild + Guidelines Overarching architecture team API Reviews Rules of Play API Discovery Architecture Principles Technologists Guild Open Source Culture Tech Radar 66

67 FELIX MÜLLER TECHNOLOGY SOFTWARE ARCHITECT