DevOps Theory vs. Practice: A Song of Ice and TireFire

A presentation at Oracle Openworld 2019 in September 2019 in San Francisco, CA, USA by Baruch Sadogursky

Slide 1

Slide 1

DevOps Theory vs. Practice: A Song of Ice and Tire Fire

Slide 2

Slide 2

Senior SRE Leader at Google Thought Leader, Disruptive Innovator Senior Software Engineer at Netflix SVP of Thoughts at Facebook Obviously better than you Disclaimer: absolutely

Slide 3

Slide 3

Viktor Gamov Official Hiptech Translator Native proficiency in Russian and Bad Russian. Fluent in Thought Leader gibberish. Knows some English. Goes to gym. Like a lot. Disclaimer: absolutely none of the above is true. @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 4

Slide 4

Baruch, Thought Leader Away! @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 5

Slide 5

Everybody’s software must be releasable at absolutely any time @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 6

Slide 6

Everyone must have 100% test automation @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 7

Slide 7

We do Continuous Security well. @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 8

Slide 8

Your greatest threat is an outage. Not an employee. @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 9

Slide 9

VMs are the enemy of DevOps. This is where you must focus your innovation. @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 10

Slide 10

You are a beautiful unique snowflake, as are your problems. No vendor could possibly understand them. @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 11

Slide 11

Our company is based in SF because that’s where the best engineers are. @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 12

Slide 12

THANK YOU! @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 13

Slide 13

Viktor Gamov Developer Advocate, Confluent @gamussa @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 14

Slide 14

Slide 15

Slide 15

🎩 @jbaruch #dockercon jfrog.com/shownotes @ErinMeyerINSEAD’s “Culture Map”

Slide 16

Slide 16

Shownotes! ● ● ● ● ● ● jfrog.com/shownotes Slides Video (by tomorrow) All the links! Comments, Ratings Raffle! @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 17

Slide 17

How did we get here? @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 18

Slide 18

Slide 19

Slide 19

TIMEThereFOR BULLET POINTS could be text here too • Gotta love bullets • Gotta love bullets • Gotta love bullets • Gotta love bullets • Gotta love bullets • Gotta love bullets

Slide 20

Slide 20

Slide 21

Slide 21

TIMEThereFOR BULLET POINTS could be text here too • Gotta love bullets • Gotta love bullets • Gotta love bullets • Gotta love bullets • Gotta love bullets • Gotta love bullets

Slide 22

Slide 22

Slide 23

Slide 23

Cargo Cult @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 24

Slide 24

The Four Questions @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 25

Slide 25

The Four Questions 1. Is my organization/team ready to adopt a new tech? 2. Is it even a good tech? 3. What problem do I solve by using this tech? 4. Will solving this problem help my organization? @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 26

Slide 26

The Four Questions 1. Is my organization/team ready to adopt a new tech? 2. Is it even a good tech? 3. What problem do I solve by using this tech? 4. Will solving this problem help my organization? @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 27

Slide 27

Is my organization /team ready to adopt a new tech? 1. @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 28

Slide 28

• “A maturity model is a tool that Introducing maturity models helps people assess the current effectiveness of a person or group and supports figuring out what capabilities they need to acquire next in order to improve their performance. • In many circles maturity models have gained a bad reputation, but although they can easily be misused, in proper hands they can be helpful.” - • Martin Fowler @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 29

Slide 29

• “A maturity model is a tool that Introducing maturity models helps people assess the current effectiveness of a person or group and supports figuring out what capabilities they need to acquire next in order to improve their performance. • In many circles maturity models have gained a bad reputation, but although they can easily be misused, in proper hands they can be helpful.” - • Martin Fowler @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 30

Slide 30

Introducing maturity models Nicole Forsgren, Jezz Hamble, Gene Kim @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 31

Slide 31

Introducing maturity models Nicole Forsgren, Jezz Hamble, Gene Kim @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 32

Slide 32

Bad Maturity Models are Bad. Bad Maturity Models @jbaruch Good Maturity Models Goal Process Prescribed by the book One size doesn’t fit all Checkboxes for tools Focus on outcomes Write and forget Constantly evolve @gamussa #codeone jfrog.com/shownotes

Slide 33

Slide 33

Maturity model components Evaluation factors Scoring methodology Self assessment vs 3rd party assessment capability Progress tracking Visualization @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 34

Slide 34

Maturity Model Example @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 35

Slide 35

C*O Level @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 36

Slide 36

Simple model @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 37

Slide 37

Progress planning Target Today @jbaruch @gamussa In 2Q #codeone jfrog.com/shownotes

Slide 38

Slide 38

Leader board Team B Team A Team C Team D Team E @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 39

Slide 39

Random placing colored dots?! @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 40

Slide 40

@jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 41

Slide 41

@jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 42

Slide 42

Too high-level, too low-level? @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 43

Slide 43

@jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 44

Slide 44

Account for different teams’ priorities @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 45

Slide 45

Model definition example System config as Code The infrastructure configuration is managed as code - e.g. no manual processes for configuring/setting up/ infrastructure. Differentiating: Infrastructure operates without any manual processes. All changes to the infrastructure or infrastructure capabilities are done through automation and policy only. Complete: Infrastructure operates without any manual processes. Some infrequent administrative activities may be initiated manually (although the activities themselves must be automated). Partial (Most): Infrastructure operates without any manual processes. Some infrequent administrative activities may be manual, pending automation. Partial (Much): Infrastructure operates with significant automation. Some processes still manual; pending automation. Partial (Some): Infrastructure requires significant care and feeding. Many processes still manual; pending automation. No Support: While some functions may be automated, they are generally kicked-off manually; and many functions are still fully manual. Large backlog of automation items. @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 46

Slide 46

Applying maturity models: DOs and DONT’s Only use primary colors Involve your teams in the model definition Let team self assess first and then assess together Partner with forward looking teams first Remember being at 100% is not a goal the model has to have a stretch goal Evolve the model from time to time And …. @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 47

Slide 47

Our message is: https://martinfowler.com/bliki/MaturityModel.html @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 48

Slide 48

@jbaruch @gamussa Is it even a good tech? #codeone jfrog.com/shownotes

Slide 49

Slide 49

@jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 50

Slide 50

@jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 51

Slide 51

@jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 52

Slide 52

@jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 53

Slide 53

Build your own Radar 1. Is my organization/team ready to adopt a new tech? 2. Is it even a good tech for our team? 3. What problem do I solve by using this tech? 4. Will solving this problem help my organization? @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 54

Slide 54

Build your own radar! @jbaruch @gamussa #codeone jfrog.com/shownotes

Slide 55

Slide 55

Thank you very much! ● ● ● ● Shownotes! @jbaruch @gamussa #CodeOne