What is DevOps?


Additionally what does it take to be a DevOps engineer?

In: 2

DevOps can be a lot of different things depending on what company you work with.

Some companies, it’s a position that straddles between IT and development, kinda like a development liaison and enablement person.

Some companies treat DevOps more like a team of developers that develop web pages and other internet facing stuff.


Until just before 2000, most software was developed and updated using waterfall methodology, a linear approach to large-scale development projects. Software development teams would spend months developing large bodies of new code that impacted most or all of the application. Because the changes were so extensive, they spent several more months integrating that new code into the code base. 
Next, quality assurance (QA), security and operations teams would spend still more months testing the code. The result was months or even years between software releases, and often several significant patches or bug fixes between releases as well. And this “big bang” approach to feature delivery was often characterized by complex and risky deployment plans, hard to schedule interlocks with upstream and downstream systems, and IT’s “great hope” that the business requirements had not changed drastically in the months leading up to production “go live.”
To speed development and improve quality, development teams began adopting agile software development methodologies, which are iterative rather than linear and focus on making smaller, more frequent updates to the application code base. Chief among these methodologies are continuous integration and continuous delivery, or CI/CD. In CI/CD smaller chunks of new code are merged into the code base every one or two weeks, and then automatically integrated, tested and prepared for deployment to the production environment. Agile evolved the “big bang” approach into a series of “smaller snaps” which also compartmentalized risks.
The more effectively these agile development practices accelerated software development and delivery, the more they exposed still-siloed IT operations – system provisioning, configuration, acceptance testing, management, monitoring – as the next bottleneck in the software delivery lifecycle. 
So DevOps grew out of agile. It added new processes and tools that extend the continuous iteration and automation of CI/CD to the rest of the software delivery lifecycle. And it implemented close collaboration between development and operations at every step in the process.

Idk how to go about explaining this to a 5 year old.
But this has all necessary information for you in the link above.

A new approach to IT to merge two types of profiles in a single one to hire less to do more.

Dev is “developing” – writing new software
Ops is “operations” – keeping the servers and databases running smoothly
DevOps just means having a role that takes a software development approach to operations – write software to automate common operations tasks rather than doing them manually

To be a good DevOps engineer, you need to learn to program, and you need to learn how software is deployed and maintained on servers. These days this mostly means cloud services.

To me DevOps are the guys responsible for the infrastructure that builds and deploys software. This includes the monitoring of all server and/or application health. Or what people call the CI/CD (continuous integration/continuous delivery) pipeline. In bigger system this may also include user tracking and analytics that feed usage data into various storage.