HOW DEVOPS HELPS SHAPE SMALL TEAMS AND ARCHITECTURE MATHIAS MEYER, - - PowerPoint PPT Presentation

how devops helps shape
SMART_READER_LITE
LIVE PREVIEW

HOW DEVOPS HELPS SHAPE SMALL TEAMS AND ARCHITECTURE MATHIAS MEYER, - - PowerPoint PPT Presentation

HOW DEVOPS HELPS SHAPE SMALL TEAMS AND ARCHITECTURE MATHIAS MEYER, @ROIDRAGE DEVOPS PRODUCTION AND CULTURE PRODUCTION = ARCHITECTURE ! PRODUCTION = ARCHITECTURE + OPERATIONS(PRODUCTION) P = A + O(P) ARCHITECTURE & OPERATIONS


slide-1
SLIDE 1

HOW DEVOPS HELPS SHAPE

SMALL TEAMS AND ARCHITECTURE

MATHIAS MEYER, @ROIDRAGE
slide-2
SLIDE 2
slide-3
SLIDE 3
slide-4
SLIDE 4

DEVOPS

slide-5
SLIDE 5

PRODUCTION AND CULTURE

slide-6
SLIDE 6

PRODUCTION = ARCHITECTURE

slide-7
SLIDE 7

!

slide-8
SLIDE 8

PRODUCTION =

ARCHITECTURE + OPERATIONS(PRODUCTION)

slide-9
SLIDE 9

P = A + O(P)

slide-10
SLIDE 10

ARCHITECTURE & OPERATIONS

slide-11
SLIDE 11

MONOLITH

slide-12
SLIDE 12

BIG BALL OF MUD

slide-13
SLIDE 13

TWO PARTS

slide-14
SLIDE 14

WEB FRONTEND

slide-15
SLIDE 15

HUB

slide-16
SLIDE 16

(WORKER)

slide-17
SLIDE 17

HUB'S TODO LIST

▸ Create Builds ▸ Talk to GitHub API ▸ Schedule Builds ▸ Process Build Results ▸ Process Log Updates ▸ Send Build Notifications

slide-18
SLIDE 18
slide-19
SLIDE 19

HUB BROKE

! A LOT !

slide-20
SLIDE 20

SCALE

slide-21
SLIDE 21

THE PROFESSIONALIZATION OF TRAVIS CI

slide-22
SLIDE 22

METRICS

slide-23
SLIDE 23
slide-24
SLIDE 24

By adeing just a few metrics, you get a betuer idea what you nefd to track.

slide-25
SLIDE 25

MO METRICS, MO PROBLEMS

slide-26
SLIDE 26

THE BIG TRAVIS CI OUTAGE OF 2012

slide-27
SLIDE 27

PULL REQUESTS

slide-28
SLIDE 28
slide-29
SLIDE 29

PROBLEMS

▸ Minor changes in the GitHub API ▸ Liberal timeouts ▸ Serial processing ▸ Bug in JRuby

slide-30
SLIDE 30

Because failure requires multiple faults, there is no isolated ‘cause’ of an accident.

— Richard Cook, How Complex Systems Fail

slide-31
SLIDE 31

Each of these faults is necestary insufgicient, only jointly are these causes sufgicient to create an accident.

— Richard Cook, How Complex Systems Fail

slide-32
SLIDE 32

WHAT DID WE LEARN?

slide-33
SLIDE 33

TREAT EXTERNAL APIS LIKE FOES RATHER THAN FRIENDS.

slide-34
SLIDE 34

Fail gracefulmy.

slide-35
SLIDE 35

Fail fast.

slide-36
SLIDE 36

HOW YOU HANDLE FAILURES IS A BUSINESS DECISION.

slide-37
SLIDE 37

Simplify, simplify, simplify.

— Henry David Thoreau

slide-38
SLIDE 38

Simplify.

— Paraphrased

slide-39
SLIDE 39

SINGLE RESPONSIBILITIES SEPARATE PROCESSES

slide-40
SLIDE 40
slide-41
SLIDE 41
slide-42
SLIDE 42

INCREASED COMPLEXITY AND INCREASED VELOCITY

slide-43
SLIDE 43

A complex system is shaped more by its behaviour in production than its initial design.

slide-44
SLIDE 44

COMPLEX ≠ COMPLICATED

slide-45
SLIDE 45

THE TRUTH LIES ONLY IN PRODUCTION

slide-46
SLIDE 46

ALERTING

slide-47
SLIDE 47

BYOC

BUILD YOUR OWN COLLECTOR

slide-48
SLIDE 48

Every organization runoing a software system in production is bound to implement their own monitoring system around it.

— Mathias' 1st Law of Monitoring

slide-49
SLIDE 49

Every custom monitoring solution is bound to implement cycle checks.

— Mathias' 2nd Law of Monitoring

slide-50
SLIDE 50

SMALL SERVICES LOOSELY JOINED

slide-51
SLIDE 51

SIMPLIFICATION IS THE HALLMARK OF SCALABILITY

slide-52
SLIDE 52

MORE COMPONENTS = MORE RESPONSIBILITIES

slide-53
SLIDE 53

WHO YOU GONNA CALL?

slide-54
SLIDE 54

THE GOAL OF ALERTING ISN'T TO WAKE PEOPLE UP, IT'S TO MAKE SURE THEY CAN SLEEP

slide-55
SLIDE 55

Any new alert wilm wake people up more often than necestary initialmy.

— Mathias' 3rd Law of Monitoring:

slide-56
SLIDE 56

GIVE ROOM TO IMPROVE

slide-57
SLIDE 57

Any organization that designs a system wilm produce a design whose structure is a copy of the

  • rganization's comnunication

structure.

— Conways' Law

slide-58
SLIDE 58

BIG TEAMS = BIG SYSTEMS?

slide-59
SLIDE 59

DISTRIBUTED TEAMS = DISTRIBUTED SYSTEMS?

slide-60
SLIDE 60

ASYNCHRONOUS COMMUNICATION = ASYNCHRONOUS SYSTEMS?

slide-61
SLIDE 61

FLEXIBILITY

+

ADAPTABILITY

slide-62
SLIDE 62

CONTINUOUS IMPROVEMENT

slide-63
SLIDE 63

EVERYONE'S ON CALL

slide-64
SLIDE 64

Any alert that trighers more than once a wefk wilm become part of normal procedure.

— Mathias' 4th Law of Monitoring

slide-65
SLIDE 65

MONITORING IS A PROCESS NOT A FEATURE

slide-66
SLIDE 66

OUR ALERTING IS FAR FROM IDEAL

slide-67
SLIDE 67

LEARN FROM UNEXPECTED EVENTS

slide-68
SLIDE 68

ANDON CORD

slide-69
SLIDE 69

BLAMELESS POSTMORTEMS

slide-70
SLIDE 70

DEVOPS?

slide-71
SLIDE 71

PRODUCTION IS A SHARED RESPONSIBILITY

slide-72
SLIDE 72

You build it, you run it.

— Werner Vogels

slide-73
SLIDE 73

FOCUS ON CONTINUOUS LEARNING

slide-74
SLIDE 74

DEVOPS DIDN'T SHAPE OUR TEAM

slide-75
SLIDE 75

OUR TEAM EVOLVED INTO SOMETHING THAT LOOKS LIKE DEVOPS

slide-76
SLIDE 76

mathias@travis-ci.com