DevOps Demystified

For a term that is not even six years old, DevOps remains a mysterious pursuit for many software engineering organizations. Let me define DevOps to help you understand and chart your own journey. Hint: it is a cultural term!

Update: 2016-12-17

Yet another refactoring and updates with expanded citations, leveraging a bit of my last four months of DevOps evangelism for Nutanix across five countries. It could use more more work!

Update: 2015-11-18

I have polished and reorganized the slides a few times to improve the flow, reinforce, and elaborate on key points. I am happy to give this talk to any organization and I have provided the slides for your evangelism efforts as well! Please contact me with any follow up questions or comments.

Abstract

A brief history of the DevOps movement and community with a cross section view of many methods and practices that are breaking down the barriers to achieve engineering agility. DevOps seems intangible: you can’t buy it, there is no certification, and frankly, there is no universal definition, yet everyone wants it or already “does” it, but still has trouble identifying it. I will cover many topics so that you can understand and chart your journey to DevOps.

Agenda

  • A Definition and Cultural Rendering of DevOps
    • A Brief History of DevOps
    • DevOps Impact on Organizations
  • The Journey to DevOps
    • Agile Infrastructure in the Cloud
    • Infrastructure as Code
    • Pets versus Cattle versus Bacteria
    • Test, Build, Deploy Pattern
    • Infrastructure Orchestration and Models
  • Epilogue: BusinessOps
    • We are all DevOps: your call to action!

DevOps Definition

DevOps is the process of removing all friction between the developer and customer value.

However, DevOps is a culturally rendered term: it is practiced by people and dynamically bound to their capabilities.

Elaboration: I Dream of DevOps, but What is DevOps?

Presentation

The actual content of this blog post has been given as a talk:

  • 2015-11-17: presented at AWS Bay Area Meetup
    • Typical Meetup attrition: 75 registered, 25+ attended.
    • DevOps definition suggestions:
      • Change “remove friction” to “increase collaboration.”
        • It is close to being the flip side of the same coin, but does not allow a clean notion of recursion and application to tools.
      • Drop the word “value.”
        • I considered this, but the definition becomes too abstract: value yields tangible and measurable properties.
    • Tweets ensued: