What are the main principles of DevOps?

DevOps is different from Technical Operations. It has following main principles:

  • Incremental: In DevOps we aim to incrementally release software to production. We do releases to production more often than Waterfall approach of one large release.
  • Automated: To enable use to make releases more often, we automate the operations from Code Check in to deployment in Production.
  • Collaborative: DevOps is not only responsibility of Operations team. It is a collaborative effort of Dev, QA, Release and DevOps teams.
  • Iterative: DevOps is based on Iterative principle of using a process that is repeatable. But with each iteration we aim to make the process more efficient and better.
  • Self-Service: In DevOps, we automate things and give self-service options to other teams so that they are empowered to deliver the work in their domain.