Disputes around Site Reliability Engineering and DevOps approaches are due to differences in companies, teams, services, development volumes, practices, infrastructure and cultural code. In the IT market, there is confusion, rightly so, DevOps and SRE can be practiced in different ways, and different engineering teams can fill these roles. However, there are basic similarities and differences in approaches. Now DevOps is in trend and will be in demand in the coming years, SRE is gaining popularity more slowly but still relevant.
DevOps and Site Reliability Engineering
Devops – a set of methodologies and practices that help automate and integrate processes (remove the “wall”) between the development team and the team responsible for the operation (operations) so that they (together) can build, test and release releases faster and more reliably. (https://www.atlassian.com/devopsoperations can also be called: SysAdmin, SysOps, Systems Engineer, operations will be used in this article).
Who can be DevOps?
Engineer from development and engineer from operations. At the moment, in the CIS market, people from operations come to DevOps more often than developers, perhaps this moment adds to the confusion. As the complexity of the infrastructure grows, the developer almost completely stops writing service code, doing only automation or CM (Terraform, Ansible, Python etc).
Site Reliability Engineering is a set of principles and practices that takes aspects of software development and applies them to infrastructure and operations problems with the help of developers. What you get when you treat operations as a software issue. (Benjamin Treynor Sloss – Vice President, Engineering – Google, founder of SRE: Google Site Reliability Engineering, Google Cloud Technology)
Who can be an SRE?
SRE – a developer who wrote an application (application, system or service, in the future just an application), may be the SRE of this application. Also, now SREs are relegated to a role similar to that of engineers responsible for DevOps.
What is the difference between DevOps and SRE approaches?
DevOps started as a movement, SRE was developed as Google’s internal approach to building and maintaining scalable and highly reliable systems. DevOps is a broad set of principles for collaboration throughout the life cycle, between operations and product development. SRE is a position.
Core Metrics or Focus: DevOps has TTM (Time To Market), SRE – reliability (reliability or fault tolerance)
Areas of responsibility: DevOps is responsible for infrastructure and core practices, in a cross-functional team Operations Engineer may be responsible for practices. The SRE is responsible for “native” application fault tolerance and core practices.
The main specialization of the engineer: DevOps is infrastructure and automation SRE is software development.
The difference in approaches does not mean the impossibility of borrowing practices. In my opinion, the main difference is that DevOps was developed by people close to operations, while developers were initially responsible for SRE practices and shaped the approach at Google. SRE was a position and DevOps was an approach, before you could not say “DevOps Engineer” if you think about it sounds like “Scrum Engineer” or “Agile Engineer”. But the market is already making its own rules, DevOps is moving into the de facto standard and is developing a maturity model, let’s see, we’ll live in the future.
Additional, interesting, sources that allow you to dive deeper into the issue:
Official SRE page from Google: https://sre.google/
Book “founders” DevOps (in Russian): https://www.ozon.ru/product/rukovodstvo-po-devops-kak-dobitsya-gibkosti-nadezhnosti-i-bezopasnosti-mirovogo-urovnya-v-147521541
Books of the “founders” of SRE (in Russian): https://www.ozon.ru/product/site-reliability-workbook-prakticheskoe-primenenie-466091126/ and https://www.ozon.ru/product/site-reliability-engineering-nadezhnost-i-bezotkaznost-kak-v-google-392449624/
DevOps Vs. SRE: Competing Standards or Friends? (Cloud Next ’19): https://www.youtube.com/watch?v=0UyrVqBoCAU&t=855s
Love DevOps? Wait until you meet SRE | Atlassian https://www.atlassian.com/incident-management/devops/sre