Sysadmin, DevOps, SRE
In the last decade, a proliferation of job titles have appeared in an effort to differentiate from the good ol' Sysadmin title. There is a very valid reason for that (with some caveats), which I'll explain below.
Various job titles
What is a Sysadmin?
A traditional Sysadmin is typically a person whose goal is to ensure systems are up and running correctly. Their job is to respond to failures and problems on the network and servers, to fix them, and in some capacity to ensure they don't happen again. Their job is also to monitor systems and prevent problems before they arise (ex: swapping a failing hard drive before it dies and data is lost).
Version 1 of this eBook was specifically tailored for that person and people aiming to becoming that person.
In 2024, this job still exists and is quite common, however there's a multitude of new titles and responsibilities which have emerged and for which I think any old Sysadmin should not only be aware of, but be actively striving to become.
What is a DevOp?
There's a lot of debate around the word DevOp, and it seems to be trending towards a more theoretical practice as opposed to an exact title. The DevOp's goal was to merge developement and operations (sysadmin work) by providing developers with the ability to handle the full lifecycle of the systems which run their code. A Dev could pull some pre-existing virtual machines with pre-existing recipes and pre-existing container images, write their code, and push it all to staging and production without the intervention of a Sysadmin. Conversely, a Sysadmin would be encouraged to write more code to help automate the deployment and configuration of their servers. They could write code to build clusters and automate the things they would previously do manually.
Ansible, Chef, and Puppet were at the forefront of this new theoretical approach and spawned a new set of job titles for people who could literally "do both".
In 2024, this job title still exists and is quite common, however the underlying problem and conflict between Devs and Ops would not be resolved. You still needed a Sysadmin who knew much more about the target systems, to help setup the initial VMs, to write the initial recipes and create the initial container images. And once deployed to production, problems would still need to be handled by an experienced Sysadmin because a Dev who can only follow DevOps practices is not necessarily skilled or experienced at Ops work.
I still strongly believe in the idea of Devs being empowered to build, deploy, and manage their code in production environments without the help of a Sysadmin, but the title of DevOps is probably one we should let go. Let's move Devs and Ops into Engineering.
What is an SRE?
Not everyone saw this coming (and honestly, some still haven't), but the traditional Sysadmin job would not last forever. The main problem was the lack of engineering in the job itself. As tech geeks who like to hack on systems, there's the assumption that as long as our systems are up, everything is fine. The problem hinted above was that of a conflict between Devs and Ops. How can a Dev push new code and new features without naturally increasing the possibility of a failure, and thus eliminating the highly regarded uptime we all strive for? It makes no sense! But we did it anyways, and in a decade of being that guy, I can tell you it always ends in resent for those guys (ex: why are they pushing to prod while I'm sleeping?). The Sysadmin itself is not scalable, and suffers from the notion that as systems grow in scale, so do the number of Sysadmins required to manage them.
The idea behind the SRE is more of an evolution of a Sysadmin, powered by DevOps skills and the strong desire to engineer solutions to problems, rather than just "fix" them. With this knowledge, we can look at the IT industry as one that's trending more towards one where the traditional Sysadmin becomes irrelevant. The main focus is on reliability and performance, but with the implementation of best practices for handling failures, growing, and monitoring systems. The SRE is not just a dev, or an op, but also an engineer. Someone who strives to code themselves out of a job (haha).
In 2024, this job title still exists and is probably the most relevant in the industry when it comes to systems. I say this because as engineers, we now have the responsibility to work the way an engineer would. That means no hacks, no ugly shell scripts, no silencing of nagios alerts because "it always does that at 1am". There's much more to it, and there's lots of books on the subject which I highly suggest you read.
Moving forward
If you're looking for a job, either as a Sysadmin, DevOp, SRE, or something else I may have missed, then the next chapter should set you up with some necessary skills and knowledge to get there.