Foster DevOps culture

Completed

In order to fully realize DevOps benefits, organizations need to make a conscious effort of fostering the DevOps culture among their teams. This involves promoting collaboration, automation, and a mindset of continuous improvement, which ultimately will lead to faster, more reliable, and customer-centric software delivery. Such effort would be essential in our sample scenario, where the organization just started exploring the option to adopt DevOps practices. However, changing a corporate culture is a challenging undertaking. In this unit, you'll review a set of recommendations that should facilitate addressing this challenge.

How should organizations foster DevOps culture?

Screenshot of a team communicating about fostering DevOps culture.

Given the core DevOps culture elements, there are many actions that organizations can take to develop and foster their internal DevOps culture:

  • Build mutual respect within and between its teams: Teams should operate by using a code of ethics based on mutual respect and blameless culture. Teams should take collaborative ownership of any issues encountered during software delivery and identify improvement opportunities rather than looking for a culprit.
  • Clearly define roles and responsibilities of each individual team: Team decision-making should be democratic, but structured to ensure that decisions are made efficiently. When there are differing opinions about a situation, someone must be responsible for making the final decision based on the evidence that's presented.
  • Facilitate continuous learning and improvement: Organizations should establish architecture review boards and centers of excellence to develop and maintain their best practices in the areas of development, operations, and security. Team structure should ensure that everyone is a specialist in their function and a generalist in all other functions so that team members can support each other when needed.
  • Commit to optimization: Business and customer-driven needs should be the primary factors that determine the overall DevOps strategy. The teams need to regularly review their standard operating procedures, apply creative thinking, and seek areas of improvement.
  • Embrace safe experimentation: Organizations should develop means for testing and evaluating new functionality in isolation from the production environment and delivering innovative solutions in compliance with safe deployment practices.

Exemplifying these recommendations, Microsoft has a well-established live site culture that is based on the principles of DevOps. The company has a strong focus on customer satisfaction and operational excellence, and it has a culture of continuous learning and improvement. Key aspects of Microsoft's live site culture:

  • Learn once and share.
  • Drive with data.
  • Automate everything.
  • Use telemetry to drive decisions.
  • Embrace failure.
  • Root cause is key.
  • Lock down the environment.
  • Monitor everything.
  • Plan for scale.
  • Live site first.
  • Detect before customers.
  • Configuration as code.