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

Enabling DevOps culture with a Platform Engineering team - DoD Edinburgh

Adarsh Shah
October 18, 2019

Enabling DevOps culture with a Platform Engineering team - DoD Edinburgh

DevOps is about creating a culture of shared responsibility in delivery teams. It is recommended to embed operations skills into delivery teams to reduce friction and enable them to deliver products to customers faster but whenever there is a need for significant investment in tooling and automation and teams lack the skills to self-manage a full application and operations stack, having a separate Platform engineering team can help. Organizations that consider establishing such a platform engineering team should be very cautious not to accidentally create a separate DevOps team.

In this presentation we will talk about when and why Platform engineering team can be helpful. The team’s chief responsibility is to operate a platform which enables delivery teams to self-service deploy and operate systems with reduced lead time and complexity. The emphasis here is on self-service infrastructure and supporting tools, with delivery teams still responsible for supporting what they deploy onto the platform. He will also talk about challenges and lessons learned leading and being part of such teams. He will explain “The Three Ways: The Principles Underpinning DevOps” as mentioned in “DevOps Handbook” & “The Phoenix Project” and how it can be used to resolve some of these challenges faced by the team.

Adarsh Shah

October 18, 2019
Tweet

More Decks by Adarsh Shah

Other Decks in Technology

Transcript

  1. Adarsh Shah
    Technology Leader, Coach, Hands-on Architect

    Independent Consultant
    shahadarsh
    www.shahadarsh.com
    Enabling DevOps culture
    with a Platform
    Engineering team
    Challenges & Lessons
    Learned
    Priyanka Rao
    Project Manager, Agile Coach

    Independent Consultant
    pri_posterous

    View Slide

  2. @shahadarsh @pri_posterous
    Common team structures
    Dev & Ops
    collaboration
    Collaboration
    Dev Ops
    Site Reliability
    Engineering
    Dev SRE
    HandOff - Meets Standards?
    Cross-functional
    team
    Dev
    Platform
    Engineering team
    Platform
    Platform
    Api driven
    App Dev 1
    Ops
    App Dev 2
    Customers
    Self-service pipelines
    Monitoring tools
    Analytics
    Infra provisioning
    Container platform

    View Slide

  3. @shahadarsh @pri_posterous
    Platform Engineering Team is responsible for operating
    a platform which enables delivery teams to self-service
    deploy and operate systems with reduced lead time and
    complexity.
    Platform Engineering team

    View Slide

  4. @shahadarsh @pri_posterous
    Vision

    View Slide

  5. @shahadarsh @pri_posterous
    Platform Engineering team
    Platform

    Api driven
    App Dev 1
    Ops
    App Dev 2
    Customers
    Self-service pipelines
    Monitoring tools
    Analytics
    Infra provisioning
    Container platform

    View Slide

  6. @shahadarsh @pri_posterous
    The Principles Underpinning DevOps
    The Three Ways
    Systems Thinking
    Amplify Feedback Loops
    Culture of Continual
    Experimentation & Learning

    View Slide

  7. @shahadarsh @pri_posterous
    Challenges & Lessons Learned
    with Platform Engineering teams

    View Slide

  8. @shahadarsh @pri_posterous
    #1 Challenge:
    Avoid creating another silo

    View Slide

  9. @shahadarsh @pri_posterous
    • Enablers not just Doers
    • Cross-team internships
    • Constant pairing with App dev teams
    • Lunch and learn sessions
    • Not a service center
    • Common goals & incentives
    Avoid creating another silo

    View Slide

  10. @shahadarsh @pri_posterous
    #2 Challenge:
    Tackling Knowledge silos within the
    team

    View Slide

  11. @shahadarsh @pri_posterous
    • Story pair rotation (pair stairs)
    • ‘Support-pair’ rotation
    • Glossary of terms
    • Postmortem
    • Skills matrix exercise
    Tackling Knowledge silos within the team

    View Slide

  12. @shahadarsh @pri_posterous
    Pair stairs
    Martha Katie Mark David Martin
    Martha
    Katie 1
    Mark 3 0
    David 0 1 1
    Martin 0 2 1 0

    View Slide

  13. @shahadarsh @pri_posterous
    • Story pair rotation (pair stairs)
    • ‘Support-pair’ rotation
    • Glossary of terms
    • Postmortem
    • Skills matrix exercise
    Tackling Knowledge silos within the team

    View Slide

  14. @shahadarsh @pri_posterous
    Skills Matrix exercise
    Python Pipeline Kubernetes AWS Vault Consul Terraform
    Martha 1 2 3 2 2 3 3
    Katie 3 3 2 1 2 1 3
    Mark 1 1 2 3 1 2 2
    David 1 1 2 2 3 1 1
    Martin 1 1 2 1 1 2 1

    View Slide

  15. @shahadarsh @pri_posterous
    Next sprint
    Python Pipeline Kubernetes AWS Vault Consul Terraform
    Martha 1 2 3 2 2 3 3
    Katie 3 3 2 1 2 1 3
    Mark 1 1 2 3 1 2 2
    David 1 1 3 2 3 1 1
    Martin 1 1 2 1 1 3 1

    View Slide

  16. @shahadarsh @pri_posterous
    #3 Lesson learned:
    Building the right features

    View Slide

  17. @shahadarsh @pri_posterous
    • Promote Product thinking
    • Observe and talk to customers
    • Key Performance Indicator driven
    • Innovate (problem solve) and experiment
    • Product Owner Prioritization
    Building the right features

    View Slide

  18. @shahadarsh @pri_posterous
    Path to Production exercise
    Logging Monitoring
    Business
    Continuity
    Disaster
    Recovery
    Security
    Delivery
    Infrastructure
    Support
    Now Format
    AD
    integration
    Pipelines
    Soon Aggregation SLAs, KPIs Secrets mgmt
    Container
    platform
    Later
    Retention,
    Masking
    API for infra
    provisioning
    Near
    Release
    BCP test Failover test Pen testing
    Post
    Release

    View Slide

  19. @shahadarsh @pri_posterous

    View Slide

  20. @shahadarsh @pri_posterous
    #4 Lesson learned:
    Being Agile

    View Slide

  21. @shahadarsh @pri_posterous
    • Story Writing
    • Analysis is required but its technical analysis
    • Standup, Retros & other agile practices
    • Product Owner Prioritization
    • Decide on team norms
    • Project reporting
    Being Agile

    View Slide

  22. @shahadarsh @pri_posterous
    #5 Lesson learned:
    Embracing rapid adoption

    View Slide

  23. @shahadarsh @pri_posterous
    • Showcases + future plans
    • Enablement
    • Maintainability
    • Build trust (communicate why, how, when - release
    notes & instructions)
    Embracing rapid adoption

    View Slide

  24. @shahadarsh @pri_posterous
    Dev Ops
    Dev & Ops
    Team structures evolution

    View Slide

  25. @shahadarsh @pri_posterous
    Dev Ops
    Dev & Ops
    Dev
    Cross-functional team
    Team structures evolution

    View Slide

  26. @shahadarsh @pri_posterous
    Dev Ops
    Dev & Ops
    Dev & Ops
    collaboration
    Collaboration
    Dev Ops Dev
    Cross-functional team
    Team structures evolution

    View Slide

  27. @shahadarsh @pri_posterous
    Dev Ops
    Dev & Ops
    Dev & Ops
    collaboration
    Collaboration
    Dev Ops Dev
    Cross-functional team
    Dev SRE
    HandOff - Meets
    Standards?
    Site Reliability
    Engineering
    site reliability
    & uptime is critical?
    Team structures evolution

    View Slide

  28. @shahadarsh @pri_posterous
    Dev Ops
    Dev & Ops
    Dev & Ops
    collaboration
    Collaboration
    Dev Ops Dev
    Cross-functional team
    Dev SRE
    HandOff - Meets
    Standards?
    Site Reliability
    Engineering
    site reliability
    & uptime is critical?
    Team structures evolution
    teams lack skills to
    self-manage
    app and ops stack?
    Platform
    Platform
    Api driven
    App Dev 1
    Ops
    App Dev 2
    Customers
    Self-service
    pipelines
    Monitoring
    tools
    Analytics
    Infra
    provisioning
    Container
    platform
    Temp Platform team?
    Platform Engineering
    team

    View Slide

  29. @shahadarsh @pri_posterous
    Summary
    • Different team structures for DevOps
    • Platform Engineering
    • Challenges
    • Avoid creating another silo
    • Building the right features
    • Being Agile
    • Embracing rapid adoption
    • Tackling knowledge silos within the team
    • Evolution of team structures

    View Slide

  30. Adarsh Shah
    Technology Leader, Coach, Hands-on Architect

    Independent Consultant
    shahadarsh
    www.shahadarsh.com
    Questions
    Priyanka Rao
    Project Manager, Agile Coach

    Independent Consultant
    pri_posterous

    View Slide