Introduction
As a Devops Engineer for almost 8 years, I always see people frequently asking about Devops term. They are debating which one is right between Devops as a role or Devops as a principal movement.
At first, Devops as a movement introduced as a part of Agile System. After several time, this new system is considered as an answer for people who were tired with a top-down model which for some people, this old system doesn't suit with IT world who needs freedom, creativity, and time in the process.
By the time, Devops become de facto on the organization. Since not every place has same culture, thought and same maturity level, this condition enforces some organizations to made DevOps become a role since they need a person who can be responsible do the job.
Shifting of the trends
On 80-90's era, Everybody in IT wants to create a product that can implement on client side. Some of them become so successful in this model. We know them today as Microsoft with their windows Product, SAP with all their variant, Apple with their macintosh, Oracle with their Databases, etc.
They made a product's cycle where their customer can get a better software in the next future product (you do remember windows 95, 98, XP, etc right?),
They establish a dedicated team or environment (such as a third-party service) to assist customers in seamless migration from their current system to a new one.
This condition creating a role like system engineer, external support, system administrator, network enginner, etc which always available for helping the process from their expertise standpoint.
And Cloud Computing era comes. All the product-centric become a service-centric. Changing the trend where people already convenient before.
End-of-life a product also changes. No retiring and promote the version of the product anymore, Only new feature, new navigation, and new experience.
Companies need more In-house developer than before. Deployment and release happen more frequently for the sake of having better services.
In this situation, we need a better approach that can accommodate this new demand. The old process that has much human intervention doesn't fit anymore. Segregation between the steps and role in the process makes it worse. A person who understands end to end process from development until operations are needed (we will talk more about this in the next chapter) for architecting a new plan which can integrate all the process smoothly and automated.
SRE vs Devops
Many big companies try to answer these challenges and share their solution to the world. Some of them give more influence like a book with this title "The Phoenix Project" by Gene Kim, Kevin Behr, George Spafford give a new perspective. The others which give a big influence is a solution from Google.
Google believes everything will be better when a Developer who creates the services, involved in Operations also. They believe it will cover the gap and loophole of the missing information. Later, We know it as a Site Reliability Engineer (SRE).
The main Objective of SRE are more focus on SLA, SLI, and Service Level Objective (SLO). Where in the real task, they will more aware of the production metric.
Another idea comes with promises. A new discussion about the effectiveness also appeared. In some companies, sometimes this new role stacked up with Devops. The situation will end with both of the roles need to work together or just change the cover to do the same task.
Conclusion
Until a Process Cycle in IT Technology more mature, many roles will come and go for trying to answer the challenge.
I would say if scrum as an agile framework having a scrum master. Devops/SRE engineer becomes a role which will maintain the practice of devops methodology in a company is not bad either.
Doing with the right mindset more important since everything will change in the end.
Top comments (8)
I'm a DevOps Architect at Microsoft, my role is to do intensive mentoring and coaching about DevOps.
To me, when I hear that a company hires some "DevOps Engineers" I know that at 95% their DevOps transformation will fail.
DevOps is not a role, it is not a team, and it is not something you can do in a few people.
DevOps is a transformation that needs to happen at whole company level, or at least at the whole IT department. For DevOps to be successful, everyone has to be "DevOps Engineers" to a certain degree.
The whole engineering team needs to understand they have to develop the code, test it, create deployment scripts/artifacts, set up CI/CD and own the code in production.
my 2c
Love it. Couldn't agree more.
But let's not push aside about the reality where components of the whole company are not just about IT/Engineer Department. There are several others like management, sales, business, finance, etc.
And don't forget about culture, target, mission, and vision from the company itself. Sometimes adjustment is needed on certain conditions.
Looking forward to hearing your story when you successfully transform a company :)
Well, I’ve actually already transformed few companies in my career... both as internal staff and as consultant/external 😉 I’ve been doing this for many years already.
Hey Glad I found someone experienced on my feed, I was looking to learn more about How DevOps works and everything around it just out of curiosity!. I have started off with docker and learnt it's basics such as containerisation, compose, networking. Recently I have been reading the infamous "The Kubernetes Book". Please suggest how should I approach this further
@pahujanayan
Great. Keep learning :D
I write this series from my experiences so far for sharing and reach for who need it. happy this article find you :)
Now, I am in the third article's state. Let me know when you finish it as well.
I also will write another article regarding devops in here so stay tune!
Many tech firms in sri lanka have recently adopted devops into their workflow. Hoping for a positive change.
Hopefully better! Since Technology constantly evolved right? ;)
Couldn't agree more 😃