CI/CD with Robert Erez

· Source: The Pragmatic Engineer · Field: Technology & Digital — Software Development & Engineering, Cloud Computing & IT Infrastructure, Artificial Intelligence & Machine Learning · Depth: Advanced, extended

Summary

Robert Erez of Octopus Deploy discusses the evolution of CI/CD, highlighting early continuous delivery practices at Skype, including using New Zealand for canary deployments. He defines the stages from YOLO to continuous deployment, noting that full continuous deployment isn't suitable for all regulated industries. Erez explains Kubernetes' rise as a cross-platform container orchestration winner, used both cloud-native and on-premise, and its declarative state management. He clarifies GitOps' four pillars (declarative, versioned/immutable, pull, continuous reconciliation), emphasizing that not everything, especially secrets, belongs in Git. The discussion also covers the emergence of platform teams for standardizing deployment workflows and AI's anticipated impact on CI/CD, predicting higher code velocity and increased reliance on progressive delivery techniques like feature toggles for risk mitigation. Octopus Deploy's SaaS and on-premise operational challenges are also explored.

Key takeaway

For DevOps Engineers managing complex deployments, prioritize progressive delivery strategies like feature toggles to decouple feature releases from code deployments. This allows for rapid, controlled rollouts and immediate rollbacks of individual features, significantly reducing risk compared to full application rollbacks, especially with stateful systems. Additionally, embrace GitOps principles for declarative infrastructure management, but avoid dogmatically putting all configurations, particularly secrets, into Git.

Key insights

Effective software delivery balances automation, controlled progressive releases, and adaptable infrastructure, prioritizing practical outcomes over dogmatic approaches.

Principles

Method

Progressive delivery de-risks releases using techniques like canary deployments, blue/green strategies, and feature toggles to gradually expose changes and manage risk.

In practice

Topics

Best for: DevOps Engineer, Software Engineer, MLOps Engineer

Related on AIssential

Open in AIssential →

Editorial summary, takeaway, and curation by AIssential. Original article published by The Pragmatic Engineer.