Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Solving Difficult System Problems with a DevOps Culture

Solving Difficult System Problems with a DevOps Culture

This item in japanese

Michael Stanke, director of software delivery at Puppet Labs, has written on SysAdvent about how DevOps is the development of a culture that can successfully overcome complex and difficult system thinking problems. Michael shares his experience of transitioning into a new position full of opportunities to make technical and process oriented contributions. The cross pollination of the roles in technology that underpin DevOps come to life in his story. He clearly sections the important milestones in cultural change leading to DevOps: reduce variation, break down silos, admit failure, build trust, experimentation matters, solve causes and not symptoms.

The following techniques are discussed in Michael's blog post with specific examples from his life:

Reduce Variation by engineering standardized configurations into networks, servers, and software. Therefore even when systems fail, they will fail in similar ways, providing an opportunity to raise the quality of all the systems at the same time.

Break Down Silos that exist due to tribalism of knowledge and authorization. Share knowledge, power, and the pain. For example, Michael points out an incident of giving sudo privileges to individuals, but in return expected their participation if late night trouble-shooting took place.

Admit Failure and Build Trust before finding the faults of others. Each person leading with their own failures at a post-mortem meeting is a more constructive experience that leads to trust.

Experimentation Matters because successful technology and processes can emerge out of trial and error, not by merely making assumptions. In his post Michael shares the surprising joy of a successful PHP application that was loved by his help desk, which had been an expected failure before hand.

Solve Causes, Not Symptoms, by digging deep into the problems at hand. This can entail asking a lot of questions, whether it be about process, technology, or people. Add automation where it can reduce issues, increase visibility and improve the reliability of systems.

Michael sums up his experience as the introduction of a DevOps culture in his team:

"I realized we were doing those things. It now had a label. DevOps was about using technology to solve problems. Using automation, showing results with numbers, and having heavy collaboration. "

Rate this Article