Skip to main content

DevOps and SRE Intro

DevOps is a set of practices that automates the processes between software development and IT teams. This is to enable them to build, test, and release software faster and more reliably. It builds a culture of collaboration between teams that historically functioned in relative silos. The promised benefits include increased trust, faster software releases, ability to solve critical issues quickly, and better manage.

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.

DevOps Principles (In Short):

1. Reduce Organization Silos: 

Avoid the communication gap between the Developers and Operation team,

Shared Ownership,

Work as a Team.

2. Accept failure as normal:  

Treat application/service failures as normal,

Blameless Postmortems.

3. Measure Everything:

User impact, network stability, access methods and etc.

4. Automate as much and avoid manual work:

Automate the regular tasks and always look for the opportunity in automation area.

5. Change Gradually:

Implement any changes to the application, infrastructure in gradual manner. 

Release any new feature in the application to less number of users initially then proceed further to cover all the users gradually. 


How SRE differs from DevOps?

DevOps is not a role, it is a culture which defines WHAT needs to be achieved. SRE is a role; you can have an SRE professional.

SREs practice DevOps since they are focused on aspects like availability, observability, and scaling.

DevOps focuses on WHAT needs to be done before the system is in production. SRE deals with monitoring applications or services after deployment to practice where automation is crucial to improving a system's health and availability.

Comments