© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
SQUARING THE CIRCLE
Bringing value to business & for your customer through DevOps
Image: © 2018, David Larson
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH2
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
WHAT IS DEVOPS?
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
WHAT IS NOT DEVOPS?
4
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
https://en.wikipedia.org/wiki/Site_reliability_engineering
“DevOps is a philosophy of
cross team empathy and
business alignment”
5
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
https://en.wikipedia.org/wiki/DevOps
“DevOps (a clipped compound of "development" and "operations") is a
software engineering culture and practice that aims at unifying software
development (Dev) and software operation (Ops). The main characteristic
of the DevOps movement is to strongly advocate automation and
monitoring at all steps of software construction, from integration, testing,
releasing to deployment and infrastructure management. DevOps aims at
shorter development cycles, increased deployment frequency, more
dependable releases, in close alignment with business objectives.”
6
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH7
Solving every issue with tech is next to impossible
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
DEVOPS FOR HIRE?
8
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH9
“System Administration”
“Cloud”
“Partner with engineers”
“Linux Master”
“Real programming”
“Higher education degree”
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
DEVOPS FOR SALE?
10
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH11
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
DEVOPS AS A TOOL?
12
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH13
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH14
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
https://en.wikipedia.org/wiki/DevOps
[...]DevOps is intended to be a
cross-functional mode of
working, rather than a single
DevOps tool[...]
15
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH16
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
https://en.wikipedia.org/wiki/Site_reliability_engineering
“DevOps is a philosophy of
cross team empathy and
business alignment”
17
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
You can’t buy DevOps, culture evolves and grows
DevOps isn’t a tool, it is non-technical
DevOps can help you deliver faster and more
reliable, but it’s not just that
You can’t hire DevOps, it’s a philosophy
18
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
WHAT IS IT THEN?
19
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
So, about the client you
assessed last week? What’s
their issue?
They don’t have a technical problem, they have
an organizational problem!
20
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
OUR VIEW OF DEVOPS
Culture is as important as code: Taking responsibility for the whole software
development process - collaborating on ideation, writing code, testing and
releasing - empowers individuals and teams to focus on a value and business
driven development cycle.
DevOps is not a single team or single engineer: Instead it allows engineers to
collaborate, share knowledge and be aware of the bigger picture in diverse and
agnostic teams. Single purpose, homogeneous teams should be a thing of the
past.
Trusting your code: Building incremental, well-tested
software allows for shorter, more trustworthy and more
reliable release cycles with a shared and distributed
responsibility model.
DevOps is cultural shift on an organizational level
21
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
Reduce organizational silos
Accept failure as normal
Implement gradual changes
Leverage tooling and automation
Measure everything
22
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
THE THREE WAYS
Systems Thinking
Amplify Feedback Loops
A Culture of Continuous
Experimentation and
Learning
2
3
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
“The First Way emphasizes the performance
of the entire system, as opposed to the
performance of a specific silo of work or
department. DevOps transcends departments
and showcases the overall value to the
customer.” – Gene Kim
24
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
SYSTEMS THINKING
Understand the value stream and success criteria for your product
Identify and leverage the most important contributors to delivering value on
every level
Champion autonomy and collaboration
Don’t blame and shame but rather look for cause and effect
Tackle impediments according to their priority (“Flow” control)*
2
5
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
Reduce organizational silos
Accept failure as normal
Implement gradual changes
Leverage tooling and automation
Measure everything
26
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
“[...]The goal of almost any process
improvement initiative is to shorten and
amplify feedback loops so necessary
corrections can be continually made.”
– Gene Kim
27
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
AMPLIFY FEEDBACK LOOPS
Take small, incremental steps
Transparency in everything
Empower customers and stakeholder to share their feedback effectively
Share knowledge and experience
Accurately assess the state of your product at any moment in time
2
8
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
Reduce organizational silos
Accept failure as normal
Implement gradual changes
Leverage tooling and automation
Measure everything
29
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
“[...] continual experimentation, taking risks
and learning from failure; and
understanding that repetition and practice is
the prerequisite to mastery.” – Gene Kim
30
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
CONTINUOUS EXPERIMENTATION & LEARNING
Incentivise continuous improvement for the product development cycle
Fail fast, recover fast
Measure your success
Leave room for learning and celebrate achievements
If it hurts, do it more often*
3
1
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
https://martinfowler.com/bliki/FrequencyReducesDifficulty.html
32
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
DECOMPOSITION FEEDBACK AUTOMATION
Breaking down complex
systems into viable products
Identifying boundaries and
interfaces
Reduce the scope until you
assign it to a product team
Writing tests is the foundation
of every single process within
modern software delivery; it’s
your feedback driver
Efficient and smart testing
keeps feedback loops short and
valuable
Short feedback loops enable
you to iterate faster, creating
more value and
transparency
Reproducible results without
variance
Never do anything twice, have it
done for you
Enable and empower people to
automate their workloads
33
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH34
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
Reduce organizational silos
Accept failure as normal
Implement gradual changes
Leverage tooling and automation
Measure everything
35
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
SOME EXAMPLES
36
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
Reduce organizational silos
Accept failure as normal
Implement gradual changes
Leverage tooling and automation
Measure everything
37
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
X-functional, autonomous teams
Accept failure as normal
Implement gradual changes
Leverage tooling and automation
Measure everything
38
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
X-functional, autonomous teams
Mean time to recovery
Implement gradual changes
Leverage tooling and automation
Measure everything
39
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
X-functional, autonomous teams
Mean time to recovery
Agile software development
Leverage tooling and automation
Measure everything
40
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
X-functional, autonomous teams
Mean time to recovery
Agile software development
Continuous Integration + Delivery
Measure everything
41
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
X-functional, autonomous teams
Mean time to recovery
Agile software development
Continuous Integration + Delivery
Fact driven decisions
42
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH43
© 2018 - Moritz Heiber, ThoughtWorks Deutschland GmbH
THANK YOU!
Questions?
Moritz Heiber
mheiber@thoughtworks.com
4
4

Bringing value to the business and for your customer through DevOps

  • 1.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH SQUARING THE CIRCLE Bringing value to business & for your customer through DevOps Image: © 2018, David Larson
  • 2.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH2
  • 3.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH WHAT IS DEVOPS?
  • 4.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH WHAT IS NOT DEVOPS? 4
  • 5.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH https://en.wikipedia.org/wiki/Site_reliability_engineering “DevOps is a philosophy of cross team empathy and business alignment” 5
  • 6.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH https://en.wikipedia.org/wiki/DevOps “DevOps (a clipped compound of "development" and "operations") is a software engineering culture and practice that aims at unifying software development (Dev) and software operation (Ops). The main characteristic of the DevOps movement is to strongly advocate automation and monitoring at all steps of software construction, from integration, testing, releasing to deployment and infrastructure management. DevOps aims at shorter development cycles, increased deployment frequency, more dependable releases, in close alignment with business objectives.” 6
  • 7.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH7 Solving every issue with tech is next to impossible
  • 8.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH DEVOPS FOR HIRE? 8
  • 9.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH9 “System Administration” “Cloud” “Partner with engineers” “Linux Master” “Real programming” “Higher education degree”
  • 10.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH DEVOPS FOR SALE? 10
  • 11.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH11
  • 12.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH DEVOPS AS A TOOL? 12
  • 13.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH13
  • 14.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH14
  • 15.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH https://en.wikipedia.org/wiki/DevOps [...]DevOps is intended to be a cross-functional mode of working, rather than a single DevOps tool[...] 15
  • 16.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH16
  • 17.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH https://en.wikipedia.org/wiki/Site_reliability_engineering “DevOps is a philosophy of cross team empathy and business alignment” 17
  • 18.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH You can’t buy DevOps, culture evolves and grows DevOps isn’t a tool, it is non-technical DevOps can help you deliver faster and more reliable, but it’s not just that You can’t hire DevOps, it’s a philosophy 18
  • 19.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH WHAT IS IT THEN? 19
  • 20.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH So, about the client you assessed last week? What’s their issue? They don’t have a technical problem, they have an organizational problem! 20
  • 21.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH OUR VIEW OF DEVOPS Culture is as important as code: Taking responsibility for the whole software development process - collaborating on ideation, writing code, testing and releasing - empowers individuals and teams to focus on a value and business driven development cycle. DevOps is not a single team or single engineer: Instead it allows engineers to collaborate, share knowledge and be aware of the bigger picture in diverse and agnostic teams. Single purpose, homogeneous teams should be a thing of the past. Trusting your code: Building incremental, well-tested software allows for shorter, more trustworthy and more reliable release cycles with a shared and distributed responsibility model. DevOps is cultural shift on an organizational level 21
  • 22.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH Reduce organizational silos Accept failure as normal Implement gradual changes Leverage tooling and automation Measure everything 22
  • 23.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH THE THREE WAYS Systems Thinking Amplify Feedback Loops A Culture of Continuous Experimentation and Learning 2 3
  • 24.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH “The First Way emphasizes the performance of the entire system, as opposed to the performance of a specific silo of work or department. DevOps transcends departments and showcases the overall value to the customer.” – Gene Kim 24
  • 25.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH SYSTEMS THINKING Understand the value stream and success criteria for your product Identify and leverage the most important contributors to delivering value on every level Champion autonomy and collaboration Don’t blame and shame but rather look for cause and effect Tackle impediments according to their priority (“Flow” control)* 2 5
  • 26.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH Reduce organizational silos Accept failure as normal Implement gradual changes Leverage tooling and automation Measure everything 26
  • 27.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH “[...]The goal of almost any process improvement initiative is to shorten and amplify feedback loops so necessary corrections can be continually made.” – Gene Kim 27
  • 28.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH AMPLIFY FEEDBACK LOOPS Take small, incremental steps Transparency in everything Empower customers and stakeholder to share their feedback effectively Share knowledge and experience Accurately assess the state of your product at any moment in time 2 8
  • 29.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH Reduce organizational silos Accept failure as normal Implement gradual changes Leverage tooling and automation Measure everything 29
  • 30.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH “[...] continual experimentation, taking risks and learning from failure; and understanding that repetition and practice is the prerequisite to mastery.” – Gene Kim 30
  • 31.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH CONTINUOUS EXPERIMENTATION & LEARNING Incentivise continuous improvement for the product development cycle Fail fast, recover fast Measure your success Leave room for learning and celebrate achievements If it hurts, do it more often* 3 1
  • 32.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH https://martinfowler.com/bliki/FrequencyReducesDifficulty.html 32
  • 33.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH DECOMPOSITION FEEDBACK AUTOMATION Breaking down complex systems into viable products Identifying boundaries and interfaces Reduce the scope until you assign it to a product team Writing tests is the foundation of every single process within modern software delivery; it’s your feedback driver Efficient and smart testing keeps feedback loops short and valuable Short feedback loops enable you to iterate faster, creating more value and transparency Reproducible results without variance Never do anything twice, have it done for you Enable and empower people to automate their workloads 33
  • 34.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH34
  • 35.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH Reduce organizational silos Accept failure as normal Implement gradual changes Leverage tooling and automation Measure everything 35
  • 36.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH SOME EXAMPLES 36
  • 37.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH Reduce organizational silos Accept failure as normal Implement gradual changes Leverage tooling and automation Measure everything 37
  • 38.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH X-functional, autonomous teams Accept failure as normal Implement gradual changes Leverage tooling and automation Measure everything 38
  • 39.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH X-functional, autonomous teams Mean time to recovery Implement gradual changes Leverage tooling and automation Measure everything 39
  • 40.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH X-functional, autonomous teams Mean time to recovery Agile software development Leverage tooling and automation Measure everything 40
  • 41.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH X-functional, autonomous teams Mean time to recovery Agile software development Continuous Integration + Delivery Measure everything 41
  • 42.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH X-functional, autonomous teams Mean time to recovery Agile software development Continuous Integration + Delivery Fact driven decisions 42
  • 43.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH43
  • 44.
    © 2018 -Moritz Heiber, ThoughtWorks Deutschland GmbH THANK YOU! Questions? Moritz Heiber mheiber@thoughtworks.com 4 4

Editor's Notes

  • #7 This is taken directly from Wikipedia It’s a very technical aspect of what DevOps, as a culture, represents But for me it’s a too simplistic view on the whole matter, and it’s a part of the reason why DevOps is so ambiguous! People only equate it with knowledge, and tools, and technology Because .. as technologists we are trying to solve all of our problems through applying technology Here are a few examples
  • #8 Reading all the news is cumbersome, and aggregated news need to be tailored in an appropriate way I’m not sure whether tech is ready to do this for us yet, for now newspapers and news organizations are probably still a very welcome institution
  • #14 So here are a few popular mentions when people talk about “DevOps tools” So I can just use one or two of those and I’ll be using DevOps, right? What if I’m even using all of them? NO
  • #15 What if I just add a few more .. ? I could go for Terraform, or AWS Lambda, or Docker Swarm! Or GitHub Enterprise .. or .. Stap!
  • #16 This is taken directly from Wikipedia It’s a very technical aspect of what DevOps, as a culture, represents But for me it’s a too simplistic view on the whole matter, and it’s a part of the reason why DevOps is so ambiguous! People only equate it with knowledge, and tools, and technology Because .. as technologists we are trying to solve all of our problems through applying technology Here are a few examples
  • #17 And we are trying to solve our problems in software development through technology as well And boy, do people love to call all sort of different things DevOps
  • #26 “The Goal” - Dr. Eliyahu Goldratt - Theory of Constraints Identify the constraint Exploit the constraint Subordinate all other activities to the constraint Elevate the constraint to new levels Find the next constraint Once all the minor issues have been solved you can move on to the bigger problems since they’re now all leveled out etc.