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.

98234c645fe8c935edc0fec0186d28b8?s=128

Gareth Rushgrove

May 25, 2018
Tweet

Transcript

  1. Devops The continuing evolution of operations Gareth Rushgrove

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

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

    - Devops then, now and next - Coevolution of tools and practice
  5. What is Devops? (And why should I care?)

  6. Agile; a reminder We are uncovering better ways of developing

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

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

    to running services than just software development
  9. 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
  10. Anti-patterns Siloed teams Long cycle times Poor visibility Manual processes

  11. Patterns Siloed teams Long cycle times Poor visibility Manual processes

    Cross-functional teams Short cycle times Fast feedback Automated processes
  12. 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
  13. 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
  14. Team topologies Dev Ops Dev Ops Devops Devops Topologies, Matthew

    Skelton Type 1 Dev and ops collaboration Type 6 Devops evangelism team
  15. Faster 30x more frequent deployments 200x faster lead times than

    their peers State of DevOps report 2015
  16. Safer 60x change success rate 168x faster mean time to

    recovery State of DevOps report 2015
  17. 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
  18. Where did it come from?

  19. Operations as the new secret sauce (2006)

  20. Agile Infrastructure at Agile Toronto (2008)

  21. Agile Systems Administration mailing list (2009) 2009 the year of

    Agile Sysadmins? Patrick Debois
  22. 10 deploys per day (2009)

  23. Devopsdays Ghent (2009)

  24. Devopsdays per year

  25. What does devops mean to me? A cultural and professional

    movement Adam Jacobs (2010)
  26. What does devops mean to me? Culture Automation Measurement Sharing

    John Willis + Damon Edwards (2010)
  27. Devops Enterprise Summit (2014)

  28. 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.
  29. Devops then

  30. Infrastructure as code - Applying software engineering practices to servers

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

    concept of deployment pipeline - Continuous delivery and continuous deployment
  32. Monitoring sucks/love (2011)

  33. 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
  34. Devops now

  35. Platforms - Industrialising automation best practices - Raising the level

    of abstraction - An API for operations
  36. Site Reliability Engineering SRE embodies the philosophies of devops, but

    provides a prescriptive set of practices
  37. 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
  38. Observability - Monitoring - Alerting/visualization - Distributed systems tracing infrastructure

    - Log aggregation/analytics Four pillars of the Twitter Observability Engineering team
  39. Serverless The server as we know it is dying [mic

    drop] Kevin Downs, New Relic
  40. A new role for ops? - Automation - Cost optimisation

    - Disaster recovery - Monitoring - Security - Troubleshooting Kevin Downs, New Relic
  41. Coevolution of tools and practice

  42. Stumbling upon research Devop practitioners are constantly rediscovering and validating

    findings from applied psychology, management systems and other fields. Often without realising.
  43. 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)
  44. 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)
  45. 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)
  46. Devops? Many successful devops practices emphasise building shared mental models

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

    both a “technical system” and a “social system”
  48. 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...
  49. 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.
  50. 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.
  51. 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.
  52. 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
  53. Microservices There are two essential strategies to manage a growing

    team: keep everyone together or divide into smaller sub-teams Me, paraphrasing Hunter
  54. Microservices Would you start with one team building multiple services?

  55. Microservices Or start with identifying the domain model and splitting

    the team up around that model?
  56. Cloud You build it, you run it. Werner Vogels, AWS

    CTO
  57. Cloud Would you make different technology decisions if you’re on-call

    when things go wrong?
  58. Devops next?

  59. 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?
  60. 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
  61. Operations machines What does operations mean when machine learning leads

    to more autonomous infrastructure?
  62. A different banner? The need to share experiences of how

    we improve operations will exist beyond the banner of “devops”
  63. Constant coevolution What new tools will unlock new ways of

    working?
  64. Constant coevolution What new processes will be required to support

    new tools?
  65. Recommended reading

  66. Just getting started

  67. Learning more

  68. Moving the industry forward

  69. Conclusions

  70. 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
  71. 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
  72. 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
  73. Thank you