In the increasingly common “you build it, you run it” cloud-native software development paradigm, a full lifecycle developer should have a complete understanding of the entire code-ship-run workflow. The inner dev loop, where an individual developer code, builds and tests their software, is just the beginning. The Kubernetes approach means that once code is pushed into version control to trigger the outer dev loop — where the ship and run aspects of software delivery happens — the developer experience is changing. Developers are beginning to take on full lifecycle development responsibility, which inevitably means shipping code and making sure it disrupts the end-user experience as little as possible.
Once a developer is ready to ship their code, the work of shipping safely without breaking things means understanding and adopting a number of delivery concepts. Many of these, such as continuous integration/continuous delivery (CI/CD), are familiar to most developers, while others, such as continuous deployment, progressive delivery and experiment-oriented rollout techniques may be less familiar.
Gaining an understanding of these concepts forms the basis for this next step in owning the full development lifecycle.