SciDatajourney

Why we exactly need DevOps?

Hello everyone, welcome back to this course. So today in this session we are going to discuss why we exactly need DevOps. Right. So in our earlier sessions, we saw that the problem was almost solved.

The problem was solved between the customers and the companies with the help of Agile and Lean methodologies. So why did we need to come up with DevOps? So let us go ahead and see what problems DevOps is solving.

Why do we need DevOps?

So, guys, we did solve the problem between customers and the software company, but there were still some problems inside the software companies as well, right? And what was that problem?

So not in any tech company, in any tech team, you have two teams which are which contribute to the release of software. One is the developer team and the operations team.

Why we exactly need DevOps?

A developer is a person who develops the code and the code would be forwarded to the operations guy. Whose job is basically to test the code and put it on the testing server based on the requirement.

Now what was the problem here? The problem was developer developed the code and he forwarded it to the operation’s guy. The operations guy’s system could not run the code that the developer had forwarded right?

So obviously the developer would have tested the code that he’s sending on his system first and only then he’s sending on successful operation on his system. He will only forward the code to somebody else who wants to test it, right?

Why we exactly need DevOps?

But it did not run on the operation system which could be the problem of the environment. It could be the problem that he has not installed everything that is acquired by the software.

So you should push it back to the developer saying you know your code is not running on my system, please check your code.

Why we exactly need DevOps?

But now the developer was furious. You know it ran fine on his system and if the operations guy is not installing something properly, it’s not his problem, right?

It’s not his job to go ahead and fix his system and then run the code because his job is to run or develop the code which he’s doing, and the code is running fine on his system, right?

So it’s the operations guy’s problem that he’s not able to run it on his system. So these were some of the problems that were between the developers and the Operations guy and this was solved later.

Why we exactly need DevOps?

But before that, there were a lot of problems in team communication and it solved and it caused a lot of inefficiency in the team, right?

When we talked about lean methodology, we were talking about faster release cycles eliminating waste, but this was a waste that we were not able to eliminate using lean methodology, right? This was solved using DevOps.

What is DevOps exactly?

Right now the DevOps is what? What is DevOps exactly? It is not a tool. It is not a software suite. It’s an idea. It’s thinking. This thinking is implemented using some tools.

But right now, if you want to talk about DevOps, like I said, it’s just an idea of working in a certain way that could solve the problem that we were facing between the development and the operations team.

Differences between Traditional IT and DevOps

Traditional ITDevOps
Less ProductiveMore Productive
Skill Centric TeamThe team is divided into specialized silos
More time invested in planningSmaller and frequent releases lead to easy scheduling and less time in planning
Difficult to achieve target or goalFrequent releases, with continuous feedback, makes achieving targets easy
Differences between Traditional IT and DevOps

So if you were to draw some differences between what we were doing earlier when we were working without DevOps and what happens when we use DevOps is that the traditional IT system was less productive although it was very productive as we saw in Lean methodology where we have eliminated everything.

We have tried everything in our hands to solve it using the planning part. However, there was still some room for inefficiency that we could not solve using planning, and that was solved using DevOps. So DevOps were more was more productive than traditional IT than in traditional IT, we had a skill-centric team, right?

Each team was skilled, was killed in a particular territory and we had a lot of teams in our organization that used to work on different different things. Now in DevOps, what we do is the smaller teams are also specialized in different doppings based on the Ceros right based on the technology.

So rather than having four people who are equipped or who are skill-centric in one particular technology, in DevOps we had each person who was skill-centric in technology right?

So probably one person would know Kubernetes, the other person would know DevOps better, the other person would know git better, and the other person could know some other technology better.

Differences between Traditional IT and DevOps

So we had silos like this, right? In traditional IT, we used to invest more time in planning. So when I talk about traditional IT, I’m talking about Waterfall, Agile, and Lean, both collectively, right?

So there was still some planning involved. When we talk about traditional IT. In DevOps, we are saying we do smaller and more frequent release cycles, right?

So we do smaller and more frequent release cycles as we saw by the end of Lean and Agile methodology that we are doing smaller release cycles.

DevOps takes advantage of those methodologies and implements them in its own model as well we have smaller and frequent releases but they’re still smaller than what we were seeing in Lean and Agile methodologies.

How is it we are going to discuss it in the future. So DevOps still shortens the release cycle with the help of automation. It’s a release cycle and hence releases software in even fewer days or fewer weeks than we had in traditional IT.

If we talk about DevOps guys, I would like to give you a fact that using DevOps methodology you can have release cycles in a day rather than weeks or months. So every day there could be a release if you’re using DevOps methodology to the fullest.

OK, So this was again a good thing. In traditional IT when we’re using the Waterfall model, for example, it was difficult to achieve a target or goal because the goal was set one year later, right?

So there was a difficulty in doing that. The reason is we cannot foresee the future, right? There could be some more problems that could be there while we are working on a project, but everything cannot be planned.

But in DevOps, because we are doing shorter release cycles, it is not that difficult to achieve a target or goal. It is easier to set objectives for a day than to set objectives for any year what you’re going to do, right?

And that is why DevOps makes it easy for us or for your employees to achieve their goals or their targets. OK, so this was the difference between what we had in the past. Probably we were using the Waterfall Methodology in the past. And what is the present what we can currently achieve using the DevOps methodology?

The Bottom Line

In conclusion, the need for DevOps in modern software development is not just a trend but a strategic necessity. DevOps addresses the challenges of traditional development methodologies by promoting collaboration, automation, and efficiency.

As organizations strive for faster, more reliable software delivery, embracing DevOps becomes imperative for staying ahead in a competitive market.