DevOps Engineer interview question · Most asked

What is the difference between continuous integration, continuous delivery and continuous deployment, in practice?

Summary

Continuous integration: everyone merges small changes to the main branch frequently, and each merge is built and tested automatically. Continuous delivery: every change that passes the pipeline is releasable and can be deployed to production at any time with a push-button, low-risk process. Continuous deployment: every change that passes the pipeline is deployed to production automatically, with no manual gate.

Longer Answer

In practice the difference shows in where humans intervene: continuous delivery may keep a manual approval or release schedule for business reasons; continuous deployment removes it and relies on automated tests, progressive rollouts and fast rollback. Both require trunk-based development, comprehensive automation and feature flags to decouple deploy from release. A team that "does CI" but merges once a week from long-lived branches is not really doing CI.

Key Points

  • CI: frequent merges, automated tests.
  • Delivery: always releasable.
  • Deployment: automatic to prod.
  • Feature flags decouple deploy from release.

More most-asked DevOps Engineer questions

← All DevOps Engineer questions