Software Engineering Theory vs. Practice: A Song of Ice and Tire Fire
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
Official Hiptech Translator Native proficiency in Russian, Hebrew, English, Java, Go Curses in 18 more languages Fluent in Thought Leader gibberish
Disclaimer: some of the above may or may not be true. @jbaruch
@austindevops
jfrog.com/shownotes
Slide 4
Baruch, Thought Leader Away! @jbaruch
@austindevops
jfrog.com/shownotes
Slide 5
Everybody’s software must be releasable at absolutely any time @jbaruch
@austindevops
jfrog.com/shownotes
Slide 6
Everyone must have 100% test automation @jbaruch
@austindevops
jfrog.com/shownotes
Slide 7
We do Continuous Security well. @jbaruch
@austindevops
jfrog.com/shownotes
Slide 8
Your greatest threat is an outage. Not an employee. @jbaruch
@austindevops
jfrog.com/shownotes
Slide 9
VMs are the enemy of DevOps. This is where you must focus your innovation. @jbaruch
@austindevops
jfrog.com/shownotes
Slide 10
You are a beautiful unique snowflake, as are your problems. No vendor could possibly understand them. @jbaruch
@austindevops
jfrog.com/shownotes
Slide 11
Our company is based in SF because that’s where the best engineers are.
@jbaruch
@austindevops
jfrog.com/shownotes
Shownotes! ● ● ● ● ● ●
jfrog.com/shownotes Slides Video (by tomorrow) All the links! Comments, Ratings Raffle!
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 15
How did we get here?
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 16
Slide 17
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 18
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
The Four Questions
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 23
The Four Questions 1. Is my organization/team ready to adopt a new tech? 2. Is it even a good tech? 3. What do I gain from adopting this tech? 4. Is this tech a good solution to my problem?
Slide 24
The Four Questions 1. Is my organization/team ready to adopt a new tech? 2. Is it even a good tech? 3. What do I gain from adopting this tech? 4. Is this tech a good solution to my problem?
Slide 25
Is my organization /team ready to adopt a new tech? 1.
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 26
• “A maturity model is a tool that
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.
Introducing maturity models
• 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
@austindevops
jfrog.com/shownotes
Slide 27
• “A maturity model is a tool that
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.
Introducing maturity models
• 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
@austindevops
jfrog.com/shownotes
Bad Maturity Models are Bad. Maturity is a process, not a goal
One size does not fit all organizations (or teams in organization)
Focus on outcomes, not existence of a process or a tool
Always evolve the model as the industry and the organization evolves
Slide 31
Maturity model components Evaluation factors Scoring methodology Self assessment vs 3rd party assessment capability Progress tracking Visualization
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 32
Maturity Model Examples
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 33
Simple model
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 34
Progress planning Target
Today
@jbaruch
@austindevops
In 2Q
jfrog.com/shownotes
Slide 35
Leader board Team B
Team A
Team C
Team D
Team E
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 36
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 37
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 38
A different approach
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 39
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 40
Account for different teams’ priorities
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 41
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
@austindevops
jfrog.com/shownotes
Slide 42
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
@austindevops
jfrog.com/shownotes
Slide 43
Our message is:
https://martinfowler.com/bliki/MaturityModel.html
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 44
@jbaruch
Is it even a good tech?
@austindevops
jfrog.com/shownotes
Slide 45
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 46
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 47
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 48
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 49
The Recap: The Four Questions 1. Is my organization/team ready to adopt a new tech? 2. Is it even a good tech? 3. What do I gain from adopting this tech? 4. Is this tech a good solution to my problem?
Slide 50
Thank you very much! ● ● ●
Shownotes! @jbaruch @austindevops
@jbaruch
@austindevops
jfrog.com/shownotes
Slide 51
Things that are not questions ● ●
●
Your résumé Calling bullshit on the entire premise of the talk A long rambling story with no point
@jbaruch
@austindevops
jfrog.com/shownotes