DevOps and Site Reliability Engineer(SRE), both seem to rule the world of software development, and at the same time, both appear to overlap or confuse people to some extent. Today, we will try to analyze both the terms and see if we can see some differentiating factors between the two.
The term ‘DevOps Engineer’ strives to dim this divide between Dev and Ops conjointly and suggests that the best approach is to hire engineers who can be excellent coders as well as handle all the Ops functions.
Skills required for a DevOps Engineer:
- Knowledge and proficiency with a variety of Ops and Automation tools
- Great at writing scripts
- Comfortable dealing with frequent testing and incremental releases
- Understanding of Ops challenges and how they can be addressed during design and development
- Soft skills for better collaboration across the team
You can read more about how to become a great DevOps engineer in this below mentioned article
How to be a great DevOps Engineer
Companies today have realized the immense value of adopting DevOps principles in accelerating software releases. After…
Site Reliability Engineer(SRE):
According to Wikipedia, “Site Reliability Engineering is a discipline that fuses aspects of software engineering and applies that to IT operations problems. The main goals are to create ultra-scalable and highly reliable software systems.”
Skills required for an SRE:
- Ability to postmortem the unexpected incidents to solve future hazards
- Skilled in evaluating new possibilities and capacity planning aptitudes
- Comfortable with handling the operations, monitoring and alerting
- Knowledge and experience in building processes and automation to support other teams
- Ability to persuade organizations to do what needs to be done
If you are interested in knowing more about SRE and becoming one, here is an article you can go through
So you want to be an SRE?
A description of SRE, compatibility quiz and resources to get you started.
What is the difference between DevOps and SRE?
1. DevOps is not a role, it is more of a cultural aspect and can’t be assigned to a person, should be done as a team. However, to do DevOps, we need some tools. Whereas, SRE is the practice of creating and maintaining a highly available service and it is a role given to a software professional.
2. SREs sometimes practice DevOps. “DevOps engineer” sometimes is really just a title used to hire sysadmins. While DevOps, as considered in the organizations focuses more on the automation part, SREs focus is more on the aspects like system availability, observability, and scale considerations.
3. Ali Fay, a DevOps expert says, “A ‘DevOps Engineer’ is someone who not only understands the full SDLC (Software Development Life Cycle) but has the hands-on skills actually to implement changes to tooling for supporting the improved processes. Usually, those skills are honed from years of experience as a sysadmin and/or developer, allowing them to implement services using good quality code. Whereas SREs main job is ensuring the site (aka “platform/service”) is always operational, no matter what.”
4. When asked about the difference between SRE and DevOps, Shaun Norris, the global head of cloud infrastructure services at Standard Chartered Bank says, “I like to think that SRE is to DevOps what Scrum is to Agile; one implementation of a philosophy. Not a 100% subset (SRE doesn’t subscribe to the full ‘run what you build’ mantra) but you get the idea…”.
5. DevOps primarily focuses on empowering developers to build and manage service and give them measurable metrics to prioritize tasks. There seem to be very fewer people in this segment who can handle a senior DevOps role since It should be someone with a combination of a software engineer, system engineer, architect, and an experienced master. SRE deals with monitoring applications or services after deployment to practice where automation is crucial to improving a system’s health and availability. She or he considers the role after the design work of a software developer.
DevOps and SRE can still be confusing at some level but it all depends on the company and your job profile interpretation. The roles and names might vary but the only thing that remains with you is your skills. End of the day, the whole world needs a solution and technology becoming more and more dynamic and enriching day by day, experience and learning matter more than anything else.
No matter who says what though, the profiles don’t matter much and these roles can always be interchangeable because both form the important building blocks of DevOps. Since ‘DevOps’ is moving with much speed and driving the digital transformation, it is very imperative to note that every company will become a DevOps company by 2020.