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

Role of Team Structures in DevOps Transformatio...

Adarsh Shah
November 02, 2017

Role of Team Structures in DevOps Transformation Journey

Conway’s Law says that “Organizations which design systems, are constrained to produce designs which are copies of the communication structures of these organizations”. The communication structures are heavily influenced by how the teams are structured and whether they can create a culture of shared responsibility.

In this presentation, Adarsh Shah will talk about various team structures and how DevOps culture prospers in those structures. He will explain when and why these team structures can be beneficial and what are the various paths that he has seen organizations take during the DevOps transformation journey from Dev & Ops silo to one of these team structures & their pros & cons.

Adarsh Shah

November 02, 2017
Tweet

More Decks by Adarsh Shah

Other Decks in Technology

Transcript

  1. Role of Team Structures in DevOps Transformation Journey Adarsh Shah

    Principal Consultant @ Contino ShahAdarsh Deck: http://bit.ly/team-structures
  2. Common 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. Conway’s law “Organizations which design systems, are constrained to produce

    designs which are copies of the communication structures of these organizations” - Melvin Conway
  4. Dev Ops Software Development IT buying Monitoring servers Respond to

    Outages Change Control Backup & DR planning Software Deployment Application monitoring & support Server provisioning & configuration
  5. Issues • Communication barriers • Project focused instead of Product

    • Waste during “hand-off” • Increased feature lead time
  6. Dev Ops Software Development IT buying Monitoring servers Respond to

    Outages Change Control Backup & DR planning Software Deployment Application monitoring & support Server provisioning & configuration
  7. IT buying Monitoring servers Respond to Outages Change Control Backup

    & DR planning Software Deployment Application monitoring & support Server provisioning & configuration Software Development Dev Ops
  8. Collaboration Software Deployment Application monitoring & support Server provisioning &

    configuration Dev Ops Software Development IT buying Respond to Outages Change Control Backup & DR planning Monitoring servers
  9. Dev Ops Software Development Software Deployment Application monitoring & support

    Server provisioning & configuration IT buying Respond to Outages Change Control Backup & DR planning Monitoring servers
  10. Advantages of this model • Improved communication & collaboration •

    Reduced feature lead time • Software stability and quality
  11. For this model to work • Dev and Ops -

    Shared vision • Organizational maturity • Need skills to self-manage operations stack
  12. Product team Software Development IT buying Monitoring servers Respond to

    Outages Change Control Backup & DR planning Software Deployment Application monitoring & support Server provisioning & configuration
  13. Software Development IT buying Monitoring servers Respond to Outages Change

    Control Backup & DR planning Software Deployment Application monitoring & support Server provisioning & configuration Product team
  14. Site Reliability Engineering is what happens when you ask a

    software engineer to design an operations team - Ben Sloss, Senior VP (technical operations) at Google
  15. Attributes of SRE • Site reliability & uptime is really

    critical • Engineers + very close to engineers with Ops skills • Focused on automation • Empowered SRE team • Data Driven & techniques like Error Budgeting
  16. Dev SRE Software Development IT buying Monitoring servers Respond to

    Outages Change Control Backup & DR planning Software Deployment Application monitoring & support Server provisioning & configuration Automation Data Driven
  17. 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
  18. Example responsibilities Platform <platform> Api driven monitoring tools analytics server

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

    self service pipelines containers monitoring analytics server provisioning api call
  20. Why Platform engineering team? - Teams lack skills to self-manage

    full app & ops stack - Delivery teams still responsible for supporting what they deploy onto the platform
  21. Common 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
  22. Dev Ops Dev & Ops Dev & Ops collaboration Collaboration

    Dev Ops Dev SRE HandOff - Meets Standards? Site Reliability Engineering (Google) Platform <platfor Api driven monitoring analytics App Dev 1 Ops App Dev 2 server provisioning self service pipelines container platform Platform Engineering team Dev Cross-functional team site reliability & uptime is critical? teams lack skills to self-manage app and ops stack? Temp Platform team? ShahAdarsh Deck: http://bit.ly/team-structures