Back to Overview

DevOps

methodology collaboration automation culture

What is DevOps?

DevOps is a way of working where the people who build software (developers) and the people who run and maintain it (operations) collaborate closely throughout the entire process.


It emphasizes automation, communication, and breaking down traditional silos to deliver better software faster and more reliably.

Simple Analogy

DevOps is like building and maintaining a house together:


  • Traditional Approach: Architects (developers) design a house and throw the blueprints over a wall to builders (operations). Architects never visit the construction site, and builders can’t change the design even if they encounter problems. When something breaks later, it isn’t clear who should fix it.

  • DevOps Approach: Architects and builders work together from day one. Architects visit the site regularly, builders give input on designs, and both groups create a maintenance plan together. They use power tools (automation) instead of manual labor when possible, and they build the house in sections (small deployments) so people can start living in it sooner and provide feedback.

The DevOps Lifecycle

  1. Plan: Define features and requirements
  2. Code: Write and review code
  3. Build: Compile and package code
  4. Test: Automated testing
  5. Release: Prepare for deployment
  6. Deploy: Release to production
  7. Operate: Run and monitor
  8. Monitor: Collect data and feedback
  9. Repeat: Start the cycle again

Example

A team practicing DevOps might:

  • Use Git for version control
  • Automatically run tests whenever code is committed
  • Deploy code to production multiple times per day
  • Use monitoring tools to detect problems quickly
  • Have developers participate in on-call rotations
  • Hold regular retrospectives to continuously improve