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

Enabling DevOps culture with a Platform Engineering team - Challenges & Lessons Learned (30 mins)

3f6ef57041f1429e9764eb6c72d0fecd?s=47 Adarsh Shah
October 17, 2017

Enabling DevOps culture with a Platform Engineering team - Challenges & Lessons Learned (30 mins)

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 Adarsh Shah 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.

3f6ef57041f1429e9764eb6c72d0fecd?s=128

Adarsh Shah

October 17, 2017
Tweet

Transcript

  1. Adarsh Shah Principal Consultant @ Contino ShahAdarsh Enabling DevOps culture

    with a Platform Engineering team Challenges & Lessons Learned
  2. Team Structures for DevOps Dev & Ops collaboration Collaboration Dev

    Ops Dev SRE HandOff - Meets Standards? Site Reliability Engineering (Google) Dev Cross-functional team Platform Engineering team Platform <platform> Api driven monitoring tools analytics App Dev 1 Ops App Dev 2 server provisioning self service pipelines container platform
  3. 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
  4. Example responsibilities Platform <platform> Api driven monitoring tools analytics server

    provisioning self service pipelines container platform App Dev 1 Ops App Dev 2
  5. Example Workflow new microservice trigger Platform <platform> Dev Dockerfile my-service.yml

    self service pipelines containers monitoring analytics server provisioning api call
  6. Challenges & Lessons Learned with Platform Engineering teams

  7. The Principles Underpinning DevOps The Three Ways Systems Thinking Amplify

    Feedback Loops Culture of Continual Experimentation & Learning
  8. Challenge 1: Avoid creating another silo

  9. - Enablers not just Doer’s - Cross-team internships - Constant

    pairing with App dev teams - Lunch and learn sessions - Not a service center Avoid creating another silo
  10. Challenge 2: Tackling Knowledge silos within the team

  11. - Story pair rotation - Support pair rotation - Glossary

    of terms - Postmortem - Skills matrix exercise Tackling Knowledge silos within the team
  12. Skills Matrix exercise Python Pipeline Kubernetes AWS Vault Consul Terraform

    David 3 2 1 2 2 1 1 Katie 1 1 2 3 2 3 1 Mark 3 3 2 1 3 2 2 Martha 3 3 2 2 1 3 3 Martin 3 3 2 3 3 2 3
  13. Next sprint Python Pipeline Kubernetes AWS Vault Consul Terraform David

    3 2 1 2 2 1 1 Katie 1 1 2 3 2 2 1 Mark 3 3 2 1 3 2 2 Martha 3 3 1 2 1 3 3 Martin 3 2 2 3 3 1 3
  14. Challenge 3: Building the right features

  15. - Promote Product thinking - Observe and talk to customers

    - Key Performance Indicator driven - Product Owner Prioritization Building the right features
  16. 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
  17. None
  18. Challenge 4: Being Agile

  19. - Story Writing - Analysis is required but its technical

    analysis - Standup, Retros & other agile practices - Product Owner Prioritization Being Agile
  20. Challenge 5: Embracing rapid adoption

  21. - Showcases - Enablement - Maintainability - Build trust Embracing

    rapid adoption
  22. Different models - Temporary vs Permanent

  23. 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 - Temporary vs Permanent
  24. Team Structures for DevOps Dev & Ops collaboration Collaboration Dev

    Ops Dev SRE HandOff - Meets Standards? Site Reliability Engineering (Google) Dev Cross-functional team Platform Engineering team Platform <platform> Api driven monitoring tools analytics App Dev 1 Ops App Dev 2 server provisioning self service pipelines container platform
  25. Questions Adarsh Shah Principal Consultant @ Contino ShahAdarsh ShahAdarsh@gmail.com