The Evolution of DevOps: Second Wave DevOps
In 2009, John Allspaw and Paul Hammond gave a talk on how they deployed Flickr 10+ times a day, and the DevOps movement was born. Fast forward to 2023, and the industry has come a long way. Collaboration between developers and operations is now the norm, and best practices like source control, shared observability, feature flags, dark launching, continuous integration, and continuous delivery are widely adopted.
But the DevOps movement is not done yet. Enter Second Wave DevOps, a new initiative that aims to take DevOps to the next level. Second Wave DevOps is all about system-level thinking. It recognizes that software is not just code, but also infrastructure, data, and people. It seeks to optimize the entire system, not just individual components.
One of the key ideas behind Second Wave DevOps is the concept of a "system initiative". A system initiative is a cross-functional team that is responsible for a specific system-level outcome, such as improving performance or reducing downtime. The team includes not just developers and operations, but also data scientists, security experts, and other stakeholders. By bringing together all the necessary expertise, a system initiative can tackle complex problems that individual teams cannot.
Another important aspect of Second Wave DevOps is the use of data. With the rise of observability tools like Prometheus and Grafana, it is now possible to collect and analyze vast amounts of data about a system. Second Wave DevOps encourages teams to use this data to make informed decisions about their systems. For example, a team might use data to identify a bottleneck in their system and then use automation to fix it.
Second Wave DevOps also emphasizes the importance of automation. With the rise of infrastructure-as-code tools like Terraform and Ansible, it is now possible to automate the entire infrastructure stack. Second Wave DevOps encourages teams to use automation to reduce manual toil and increase reliability.
Finally, Second Wave DevOps recognizes that people are a critical part of the system. It encourages teams to invest in their people by providing training and career development opportunities. It also recognizes the importance of diversity and inclusion in building resilient systems.
In conclusion, Second Wave DevOps represents the next evolution of the DevOps movement. By taking a system-level approach, using data, emphasizing automation, and investing in people, Second Wave DevOps aims to build more resilient and reliable systems. As developers and operations professionals, we should embrace this initiative and continue to push the boundaries of what is possible.