Skip to main content

SRE, DevOps and ITOps

[PLACEHOLDER]

 If you are wondering what the differences between the SRE and DevOps are, as well as how these roles work with ITOps within an organisation then you are not alone; and best of all you are on the right blog post.

Often enough business units in a company get confused, assigning the ServiceNow or Jira tickets or any other ticketing system of your preference, to the wrong group, and even having the incorrect expectations when doing resourcing. Let us go through definitions, insights and scenarios that will help you understand the difference.

DevOps software development operations - AI Generated

When it comes to DevOps and SRE, then you might be wondering which practice came first. While SRE may have originated a bit earlier, internally at Google, DevOps came first publicly as a practice and started to be used by companies. A few years later was when Google decided to open SRE to the world after the publication of the "Site Reliability Engineering" book. Therefore, technically speaking, DevOps was first.

SRE and DevOps timeline by Beolle

What is DevOps?

In 2009 the DevOps concept emerged. Its goal was/is to improve collaboration and accelerate software development and its delivery.
 
DevOps stands for Development and Operations, with its focus on the end-to-end application life-cycle. In its approach it leverages collaboration, automation and integration for the delivery of solutions.
Agility is one of the key aspects. DevOps helps break down silos and provides a continuous delivery pipeline, contributing with velocity without compromising reliability.

 

DevOps cycle

What is SRE?

Site Reliability Engineering started internally at Google in 2003, and later it was shared with the rest of the world in 2016, focusing on using software engineering principles, ensuring that systems are reliable and scalable.

SRE automates IT operations tasks and accelerates software delivery. Mitigating the IT risks is key, with key metrics around it such as percentage (%)  of risk mitigated, number of risks identified, incidents resolution time, mean time to recover (MTTR), etc.

SRE - Reliability, Efficiencies, performance. Image by Beolle
 

spacejoy-alphatradezone-pexels-unsplash-merged

Recommended article

SLA-SLO-SLI and DevOps metrics. Companies are in need of the metrics that will allow them to stay in business by making sure they meet...

What is ITOps?

In charge of managing and deploying IT resources within a business, like:

  • Infrastructure.
    • This includes making sure that IT systems are running efficiently and cost-effectively.
  • ITSM. IT Service Management.
  • Incidents and security management.

No “Ors”, just “Ands”

These 3 disciplines have things in common, as well as key differences. It is my experience that the majority of the time they compliment and support each other, making the business efficient if you are able to establish proper roles and responsibilities, having defined processes and ceremonies that keeps the execution in sync, in a multidisciplinary fashion. You can prevent (not always, but with a high percentage of success) collisions between the groups leveraging elements such as on-boarding techniques, shared documentation and proper intakes procedures.

In addition, using a consistent framework/methodology, that all three (3) disciplines are trained on, also helps. 

What do I mean by this? 

Well, the traditional ITOps usually leverages ITIL (Information Technology Information Library) for resolving tickets related to incidents, change management, etc. They see agile as a methodology for the other disciplines mentioned in this article. 

IT teams are task driven and usually led by Project Managers, and the concept of product owner is non-existent. Therefore, the way I see it, SRE is in the middle. It has elements that align well with one side, and with the other. Parting from that premise, then how do we get DevOps aligned with ITOps with less friction? Aside from the guardrails and RACI, coaching ITOps to understand and adopt certain areas of agility will help to facilitate that collaboration. By the same token, having DevOps and SRE understanding areas of ITIL will allow them to follow (and appreciate) some of the processes that support the “good bureaucracy” implemented by the IT services that the organization relies on. 

Here are a couple of distinctions between them:

  • DevOps manages the End-to-End application cycle, leveraging agility and automation. The Ops and development collaboration contributes to team empowerment and finding alignment to the business objectives. SRE will take care of the tools and methods used during the product life cycle, making sure applications are running smoothly, they are reliable, sustainable and scalable.
  • SRE will work with Developers and QA engineers getting the coming upgrades and updates to the production environment, and to fix reliability issues before the push. While ITOps cares about reliability, they also will be focusing on Infrastructure management and cost, among other areas. To bring some colour here, let us say your SRE team would like to help prevent 500 errors on your website. The team will be looking into an APM (Application Performance Monitoring) such as New Relic or DataDog to provide real-time monitoring and alerting. This allows for early performance issues detection before it leads to significant errors that raise the risk of your web application.

A final note around the APM scenario above:

Ok, I know what you are thinking. You might be saying something like "APM is something that the DevOps team in my organisation uses". So, what is the difference here between them and SRE?

This is what I was getting at with no “Ors” just “Ands”. There are different circumstances and conditions which can spin a variety of answers here. Let's say we have this scenario where a well established and large enterprise has an org structure that clearly has a DevOps and a SRE teams defined, supporting the business. How would the teams make use of the APM tool, making sure everything is running as expected?

  • DevOps. They will use APM to monitor the application performance, identifying potential enhancements. While doing so, they can share the data with the developers, working collaboratively on the application’s improvements.
  • SRE. They will use the APM for monitoring the system performance and its availability. In that effort they will configure APM for automated notifications related to issues. This reduces the response time.


Trending posts

Steer for a talent transformation strategy (and avoiding AI fatigue)

 There was a debate on whether to feature the term “AI” in the title of this article. Honestly, a key motivation for pursuing the research that led to this post was sparked by the widespread excitement about AI appearing constantly in our LinkedIn feed, to the point of feeling the fatigue, and even a bit disappointed in the algorithm of this, and the others, social media and content curated apps.  We soon discovered that there is an entire concept called "AI fatigue", not exactly how we were feeling it, but more about the mixed emotions people in the workforce have regarding the use of AI tools. Photo by Mart Production via Pexels (background updated with AI and Adobe  tech) From micro blog posts to video podcasts, lately, most of the tech content we encounter revolves around AI. They often sound or read very similar, usually mentioning the same few top providers. The articles (and social posts... at least the popular ones with paid-campaigns behind it) tend to focus less...

Digital Sovereignty in a Polarised World - Data, Cloud Power, and the Search for Trusted Alternatives

 Relationships have deteriorated, with trust diminished to an extent that may preclude restoration. The world, once structured to favour certain regions, has undergone significant shifts; for numerous countries, such advantages never existed. In this polarised reality, stakeholders are re-evaluating alliances, as former partners now often embody the role of "frenemy," thereby threatening freedom. This phenomenon is longstanding, rooted in historical power dynamics. When politics and influence supersede principles of fairness, respect, and integrity, ethical boundaries become blurred. Previously, issues that did not directly affect you would get overlooked out of principle, but current risks necessitate action to safeguard sovereignty. Information has consistently served as a key strategic asset, a trend only intensified by technological advancements that have elevated data as the principal factor. In other words, technology has amplified that, and data is the name of the game...

Assembling MLOps practice - part 2

 Part I of this series, published in May, discussed the definition of MLOps and outlined the requirements for implementing this practice within an organisation. It also addressed some of the roles necessary within the team to support MLOps. Lego Alike data assembly - Generated with Gemini   This time, we move forward by exploring part of the technical stack that could be an option for implementing MLOps.  Before proceeding, below is a CTA to the first part of the article for reference. Assembling an MLOps Practice - Part 1 ML components are key parts of the ecosystem, supporting the solutions provided to clients. As a result, DevOps and MLOps have become part of the "secret sauce" for success... Take me there Components of your MLOps stack. The MLOps stack optimises the machine learning life-cycle by fostering collaboration across teams, delivering continuous integration and depl...

Building MCP with TypeScript

MCP servers are popular these days. We’ve been researching and exploring a few code repos, some where missing modularity, others just not having pieces that we were looking for… therefore we decided to build our own, simple and foundational that could be a starting point for those trying to solve for the similar things we were… and we decided to share it with the community, via our public github. MCP host, server,data sources     Before we start.  Using Typescript and NodeJS was one of our requirements. This proved somewhat challenging because I don't code as frequently these days due to my leadership responsibilities, and I typically prefer working with C# or Python. Colleagues in my tech community have been working with their teams on some of their MCPs going the Python route. Therefore, I said, “I guess we are trying the other route” 😊. One of our reasons to go with TypeScript was due to the need of the integration with APIs, and based on the research, it seems t...

This blog uses cookies to improve your browsing experience. Simple analytics might be in place for pageviews purposes. They are harmless and never personally identify you.

Agreed