Thursday, June 24, 2021

Best Ultimate Definition of DevOps

 DevOps enables us to build software in a faster and reliable way. 

That's it.

Yes that's pretty much all there is to it. 

Over the decades, what was marring software development was that software was taking too long to build because any serious software needs multiple teams to develop, stored, build, test, integrate and deploy. 

Earlier, on every step, teams were working in silos taking their sweet time to finish their part and chucking the software over the fence to the next team. Without any automation and collaboration between these teams software was taking longer to build and end product was always replete with bugs. 

DevOps is a natural evolution from that process where code is stored in single repo and all developers work in single repo for their application, then there is a single automated build process for that repo, which then get's tested on the way to deployment. Agile methodology and shorter sprints ensure that software passes through the phases in days and not in months and bugs are identified and rectified as early as possible in the cycle.

Then comes the slew of tooling available ranging from Git or bitbucket and others for source code, Jenkins or TeamCity and others for build and testing, and then either automatic deploy or manual deploy to different environments.

I hope that helps.

No comments: