Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Devops: The continuing evolution of operations

Devops: The continuing evolution of operations

Keynote talk from Agile Portugal 2018. A trip through the history of how Devops became a think, what devops really is, and where it might be going.

Gareth Rushgrove

May 25, 2018
Tweet

More Decks by Gareth Rushgrove

Other Decks in Technology

Transcript

  1. Gareth Rushgrove Product Manager at Docker Curator Devops Weekly Previously

    software engineer and occasional systems administrator
  2. - What is Devops? - Where did it come from?

    - Devops then, now and next - Coevolution of tools and practice
  3. Agile; a reminder We are uncovering better ways of developing

    software by doing it and helping others do it. Agile Manifesto
  4. What is software development? The process of conceiving, specifying, designing,

    programming, documenting, testing, and fixing involved in creating and maintaining software applications
  5. A very broad problem domain There is a lot more

    to running services than just software development
  6. What is operations? The sum of all of the skills,

    knowledge and values that your company has built up around the practice of shipping and maintaining quality systems Charity Majors
  7. Patterns Siloed teams Long cycle times Poor visibility Manual processes

    Cross-functional teams Short cycle times Fast feedback Automated processes
  8. Team topologies anti-types Dev Ops Dev Ops Devops Devops Topologies,

    Matthew Skelton Anti-type A Dev and ops silos Anti-type B Devops team silo
  9. Anti-type A Dev and ops silos Anti-type B Devops team

    silo Team topologies anti-types Dev Ops Dev Ops Devops Devops Topologies, Matthew Skelton
  10. Team topologies Dev Ops Dev Ops Devops Devops Topologies, Matthew

    Skelton Type 1 Dev and ops collaboration Type 6 Devops evangelism team
  11. Safer 60x change success rate 168x faster mean time to

    recovery State of DevOps report 2015
  12. Devops is simply a banner Devops is... an umbrella concept

    that refers to anything that smoothes out the interaction between development and operations. Damon Edwards
  13. Really it’s all about Sharing Devops came out of mailing

    list conversations, early Twitter, blogging, small groups of passionate folks meeting in person and the explosion of technical conferences.
  14. Infrastructure as code - Applying software engineering practices to servers

    - Version control for operations - Configuration management - Unit testing for infrastructure
  15. Automated deployment - Building trust in deploying software - Evolving

    concept of deployment pipeline - Continuous delivery and continuous deployment
  16. All still as relevant today Infrastructure as code, deployment and

    monitoring are foundational technical concepts to devops, even if the technologies and best practices are always changing
  17. Tenets of SRE - Ensure a durable focus on engineering

    - Maximise change velocity within a given error budget - Monitoring - Emergency response - Change management - Demand forecasting and capacity planning - Provisioning - Efficiency and performance
  18. Observability - Monitoring - Alerting/visualization - Distributed systems tracing infrastructure

    - Log aggregation/analytics Four pillars of the Twitter Observability Engineering team
  19. A new role for ops? - Automation - Cost optimisation

    - Disaster recovery - Monitoring - Security - Troubleshooting Kevin Downs, New Relic
  20. Stumbling upon research Devop practitioners are constantly rediscovering and validating

    findings from applied psychology, management systems and other fields. Often without realising.
  21. Hidden Cost of Team Cognition The need for coordination drives

    the need for communication amongst team members J. MacMillan, E. E. Entin, D. Serfaty (2004)
  22. Hidden Cost of Team Cognition Reduction in communication overhead can

    be created in multiple ways, such as by restructuring the team to reduce the need for coordination… J. MacMillan, E. E. Entin, D. Serfaty (2004)
  23. Hidden Cost of Team Cognition ...or by activities that increase

    mutual awareness and shared mental models amongst team members. J. MacMillan, E. E. Entin, D. Serfaty (2004)
  24. Devops? Many successful devops practices emphasise building shared mental models

    across teams and disciplines, reducing the overhead of communication.
  25. Sociotechnical systems Sociotechnical Systems suggest that all human systems include

    both a “technical system” and a “social system”
  26. Sociotechnical systems It is possible for the system to optimize

    on the technology, giving priority to technical solutions and compelling the social system to adapt to it...
  27. Sociotechnical systems … or to optimize on the social system,

    giving priority to existing social patterns and procedures and compelling the technology to fill in what gaps remain.
  28. Sociotechnical systems Better outcomes are usually obtained by a reciprocal

    process of joint optimization, through which both the technical and social systems change to some degree in response to each other.
  29. Devops? This is why devops doesn’t just talk about the

    tools, because in isolation that’s not the best way to change the status quo.
  30. Microservices There are two essential strategies to manage [growing software]:

    a team can keep everything together (create a monolith) or a team can divide a project into smaller pieces (create microservices) Hunter Loftis, Heroku
  31. Microservices There are two essential strategies to manage a growing

    team: keep everyone together or divide into smaller sub-teams Me, paraphrasing Hunter
  32. Service Management - We ignore too much of the past

    when embracing the new - Traditional ITSM still has areas to explore for devops - Asset management? - CMDB? - Contextual knowledge management? - And new domains in which to solve known problems - Configuration management for Serverless? - Multi-cloud service validation?
  33. Support - Ops tools have evolved hugely over the last

    10 years - Can we say the same thing about support tooling? - Too often devops practices applied only to deployment - Little crossover between those introducing devops and their colleagues in support - Shout-out to Jon Hall talking about Swarming
  34. A different banner? The need to share experiences of how

    we improve operations will exist beyond the banner of “devops”
  35. Avoid tribalism - Banners are useful catalysts for new topics

    - But to the practitioner, the word “devops” isn’t important - Neither is the word “agile” - Neither is the next word we band around
  36. The importance of diversity - The first 3 devopsdays had

    1 women speaker out of 30 - Devopsdays Minneapolis 2017 had 10 women speakers - Devops as a movement would not exist today without embracing diversity - Shout-out to Bridget Kromhout, Nicole Forsgren, Dominica DeGrandis, Jennifer Davis, Mandi Walls, Sarah Wells, Cindy Sridharan, Julia Evans, Robyn Bergeron and many more
  37. Always ask “How do we run this?” What devops means

    to me is to constantly be asking “how do we run this?” and strive to improve the answer to that question over time