DevOps is a culture and set of practices that combines software development (Dev) and IT operations (Ops) so that teams can build, test, and release software faster and more reliably. Instead of developers writing code and "throwing it over the wall" to an operations team, one team owns the whole cycle: writing, shipping, and running the software. The core ideas are automation of everything repeatable, small frequent releases instead of big risky ones, and fast feedback from production back to development.
The DevOps Lifecycle -
DevOps is usually drawn as an infinite loop: Plan → Code → Build → Test → Release → Deploy → Operate → Monitor, and back to Plan. Each stage feeds the next, and monitoring feeds what to plan next.
- Building : Turning source code into a runnable artifact (a bundle, binary, or container image).
- Testing : Automatically verifying that changes work and nothing existing broke.
- Tooling : The chain of tools that automates each stage, from version control to monitoring.
- Deployment : Getting the built and tested artifact running in production safely.
- DevSecOps : Extends DevOps by adding security checks (dependency scanning, secret detection, code analysis) into the same automated pipeline instead of leaving security for the end.
- SRE : Site Reliability Engineering is a related discipline that applies software engineering to operations, using SLOs and error budgets to balance reliability against release speed.