Home » ComputerScience » DevOps vs Site Reliability Engineering

DevOps vs Site Reliability Engineering

DevOps vs Site Reliability Engineering

I’ve been around for a really long time. It was about 5 or 6 years ago that I started hearing the term DevOps. I wasn’t sure what to make of it, but I assumed it was a systems administrator that wrote code to automate tasks. It was basically what I’ve always done, but we didn’t have a particular name for it and I left it at that.

Recently a new term has been coming to the surface – SRE or Site Reliability Engineer. The first time I heard the term was from someone in Google. Then from Facebook. Now it seems to be everywhere. Initially, I thought it was just a different name for DevOps. The job descriptions appear to overlap and encompass many of the same skill sets. It was recently explained to me by a very smart fellow, that the two were indeed different. He tried to explain it to me, but I needed to do a little research on my own.

I found the following two descriptions incredibly helpful:

https://www.linkedin.com/pulse/devops-vs-site-reliability-engineering-sean-washington

I believe that there are two main disciplines here – SRE is more defined as to architect a fully automated IT infrastructure, while DevOps is more of an orchestration of the an Agile or Lean development team – serving infrastructure as code/tasks to coders when needed.

And according to Wikipedia: https://en.wikipedia.org/wiki/Site_reliability_engineering#DevOps_vs_SRE the difference is:

Coined around 2008, DevOps is a practice that encompasses automation of manual tasks, continuous integration and continuous delivery. It applies to a wide audience of companies whereas SRE might be considered a subset of DevOps that possesses additional skill sets.

For people not in the industry – An SRE is a hybrid Programmer/Systems Engineer. The job is to automate Systems Administration – to build a system of self-deployment, self-monitoring, self-repairing infrastructure through the use of programs, third party tools and scripts. A good visual is the following:

SRE:

In contrast, DevOps is more concerned with the software development lifecycle. A DevOps Engineer will employ programs, third party tools and scripts to compile, build, test and deploy software on the infrastructure – the below graphic is a description:

DevOps:

An SRE is a programming Systems Engineer – vs. A DevOps Eng is a software developer that knows about operations. The difference is subtle and can be a little confusing. One isn’t more important than the other, but they are different jobs.

Keep posted because I’ll start exploring and reviewing tools used for both SRE’s and DevOps

Leave a Reply