{"id":12730,"date":"2019-04-12T10:41:29","date_gmt":"2019-04-12T08:41:29","guid":{"rendered":"https:\/\/chartmogul.com\/blog\/?p=12730"},"modified":"2023-08-11T11:13:52","modified_gmt":"2023-08-11T09:13:52","slug":"the-continuous-saga","status":"publish","type":"post","link":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/","title":{"rendered":"The Continuous Saga: how to keep a steady pace without breaking things"},"content":{"rendered":"\n<p>One of the most exciting and important moments for a product and engineering team is when you grow beyond 2-3 contributors to as many as 10-15. In my experience everyone is full of energy, is positive and is engaged &#8212; but with more hands on and ideas on the development lifecycle, there is more room for risks and roadblocks.<\/p>\n\n\n\n<p><em>Imagine a scenario like this&#8230;<\/em><\/p>\n\n\n\n<p>Your new, bigger team starts to implement multiple changes to the product(s), autonomously, in parallel and without the level of coordination that you used to have when there were just a few people. Sound familiar?<\/p>\n\n\n\n<p>At first, all is okay (exciting even) but in time, product starts to bleed from each and every angle. As a result, the team spends more time fighting fires and eventually, burnout sets in. One by one, each person becomes less engaged and as a team lead, you are left to pick up and resolve resulting personnel and product issues.<\/p>\n\n\n\n<p>As a functional team lead in product or in engineering, it is critical that you prevent a scenario like this in order to ensure the long term success of the business and of course, the happiness of your customers.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Avoid the avoidable<\/h2>\n\n\n\n<p>It\u2019s been almost a decade since Jez Humble and David Farley released <a href=\"https:\/\/medium.com\/r\/?url=https%3A%2F%2Fwww.amazon.de%2FContinuous-Delivery-Deployment-Automation-Addison-Wesley%2Fdp%2F0321601912\">Continuous Delivery<\/a>, in which they formalized state-of-the-art principles and practices to craft quality software at scale. The first iPad was just being released; Atari was still a company and Bitcoin was worth $0.01.<\/p>\n\n\n\n<p>Today continuous delivery is not just a nice-to-have &#8212; it is a must-have if your goal is to provide high value to your clients. However in order to talk about continuous delivery, we first need to have a broader conversation about what I call the <em>continuous saga: continuous integration, continuous delivery and continuous deployment.<\/em><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Continuous Integration<\/h3>\n\n\n\n<p>The youngest of the three was first mentioned in 1991 in the context of extreme programming. The goal of CI is simply to integrate and test <em>every single change<\/em> you add to your code base (aka product). <\/p>\n\n\n\n<p>So in other words, every time an engineer adds code to the version that is currently running in production, principles of CI mean that you are integrating and testing the full application before releasing it.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2021\/06\/lh--t__rSlM4UNj-4lPIF6ZkIlXNGd75QtyIh74XA-d_qxPcikvUQTJycRGnS0gShv6glKcpdLwc3J42tCEpeStVduZWDbMSHPqmqpIxUtdy1QaJCy46ORh3VLoeAfOWrSiRlhj8-J86DAt.png\" alt=\"\"\/><\/figure><\/div>\n\n\n\n<p>So what?<\/p>\n\n\n\n<p>Continuous integration helps the overall product development process because it:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Reduces the number of unknowns that you can find when features are merged (assuming you have a reliable test suite)<\/li><li>Resolves, or at least mitigates, the \u201c<a href=\"https:\/\/hackernoon.com\/it-works-on-my-machine-f7a1e3d90c63\">works on my machine<\/a>\u201d paradigm<\/li><li>Assuming you run the test suite for each commit, CI reduces the probability that your change is not compatible with the codebase version<\/li><\/ul>\n\n\n\n<p>There are plenty of resources and <a href=\"https:\/\/medium.com\/r\/?url=https%3A%2F%2Fmartinfowler.com%2Fbooks%2Fduvall.html\">books<\/a> about CI and there isn\u2019t any reasonable motivation as to why you shouldn\u2019t implement it. <br><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Continuous Delivery<\/h3>\n\n\n\n<p>CI is necessary &#8212; but not sufficient alone. With continuous delivery you can take the maturity of your product development process a step further.<\/p>\n\n\n\n<p>Done right continuous delivery can add another layer of automation and security to your team\u2019s operations. After a product version is validated, you package it and deploy it to a staging (or testing) environment. Automatically, without any human intervention.<\/p>\n\n\n\n<p>At that point if the team is happy with one of the versions they can then manually deploy to the production environment.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2021\/06\/lh--t__yaPHLRoeT0QFt6dU8pXvME3eq8NFPIiPE98os6a41c5hhD4vM4fTSaemIiJip8fTv5c7huElk5MMl9y5dHXHCJeSwM4CBvuksSrsSmFNsGkIIb_Rav7LFDZiJylWKcQLcjePXeQs.png\" alt=\"\"\/><\/figure>\n\n\n\n<p>In this case, the only required human intervention is to decide if a release is going to production or not. However, nothing needs to be prepared for that, everything is packaged, tested, and deployed in a test environment.<\/p>\n\n\n\n<p>As you can imagine continuous delivery is more complex to implement and requires a higher level of automation. The benefits, however, also are greater:<br><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Mitigates deployment risks. <\/strong>Smaller changes reduce the risk of deployment failures and make it easier to detect the root cause of identified issues.<\/li><li><strong>Decreases time to market. <\/strong>You no longer need to wait months or quarters to roll out a change incrementally. Instead, you can release on demand and involve more your customers in the discovery phase.<\/li><li><strong>Reduces costs<\/strong>. Continuous delivery eliminates fixed costs and frees up time for your team to focus on more important and less tedious tasks (don\u2019t let people do what a machine can do).<\/li><li><strong>Helps to build better products. <\/strong>Faster, iterative deployment means more feedback from your customers faster.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Continuous Deployment<\/h3>\n\n\n\n<p>The final step of the continuous saga is another CD acronym, but this time the \u2018D\u2019 stand for deploy.<\/p>\n\n\n\n<p>The goal of this step and approach is to completely remove any human intervention. Any change that passes all quality and testing gates goes straight to production.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2021\/06\/lh--t___-_3KVVl4LgySH_upP-O1uzEIqPKzWDUN-Hxu8T9yWSqBICtGEZhXUUPJVGYsRExcFEnage4VoOvPROK2MlEdjc7vRdqZI293yq3xr2ei6fibJFzEo0_YGY2eLpbqMqcImD-uwtH.png\" alt=\"\"\/><\/figure>\n\n\n\n<p>I know &#8212; from the outside &#8212; it doesn\u2019t look much different than continuous delivery, but the implications are enormous. Every time a single line of code is added to your code base, it\u2019s also going directly to your customer hands without exception.<\/p>\n\n\n\n<p>This approach requires a high level of awareness and diligence in the team and in process. You don\u2019t just need to be able to deploy fast, but you also need to recover fast in case of failures.<\/p>\n\n\n\n<p>High risk, high reward, right?<\/p>\n\n\n\n<p>When you remove transition time and the time\/energy required by human coordination, your team can test more variations in shorter time and receive product feedback faster.<\/p>\n\n\n\n<p>The level of effectiveness that you can provide to your customers is directly proportional to your level of knowledge of their needs. The more and faster you know about customer needs, the better you can help them.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What to do then?<\/h2>\n\n\n\n<p>Which of these processes you\u2019re able to employ depends on the level of maturity of your company and what your goals are. Not all companies can afford to implement continuous deployment, but it\u2019s important to understand each area of process improvement and how they are connected to one another. <\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2021\/06\/lh--t__UJMetX_c1YI3cILe9eTXvmNv5GpbEQr1TJBHPgHI5b9tdLdOUGZyDzu2BrZGz_tpAPNamRPe8mated8qRpKAJNGLm-DtHzyTtf1qcANEj5waxxe35kxAcpPFS47qnqZWlXx2GrkN.png\" alt=\"\"\/><\/figure><\/div>\n\n\n\n<p>You should focus your effort in implementing a solid and reliable first step before moving on to the next one. However, before rewriting guidelines and process, don\u2019t forget to encourage the most important change &#8212; the one that takes place with your and the team&#8217;s mindset. Performance goes beyond process compliance. Failure to adjust your thinking will result in poor adoption and execution.<\/p>\n\n\n\n<p>In fact, I suspect that this is the reason why many companies still don\u2019t do continuous delivery or fail to launch improved processes. Perhaps they see it as technical and execution activity, when in reality, the fundamentals are deeper and are tied to how you approach product development and who you are as a company.<br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>How to transition from the \u201cmove fast and break things\u201d paradigm to a \u201ckeep a steady pace and don\u2019t break things\u201d &#8212; all while making sure you don&#8217;t jeopardize customer feedback or time to market.<\/p>\n","protected":false},"author":29,"featured_media":12731,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,13],"tags":[188,221,282,134,156],"class_list":["post-12730","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-gtm","category-how-we-build","tag-best-practices","tag-development","tag-engineering","tag-integration","tag-processes"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>The Continuous Saga: how to keep a steady pace without breaking things | ChartMogul<\/title>\n<meta name=\"description\" content=\"How to transition from the \u201cmove fast and break things\u201d paradigm to a \u201ckeep a steady pace and don\u2019t break things\u201d -- all while making sure you don&#039;t jeopardize customer feedback or time to market.\" \/>\n<meta name=\"robots\" content=\"index, follow\" \/>\n<link rel=\"canonical\" href=\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The Continuous Saga: how to keep a steady pace without breaking things | ChartMogul\" \/>\n<meta property=\"og:description\" content=\"How to transition from the \u201cmove fast and break things\u201d paradigm to a \u201ckeep a steady pace and don\u2019t break things\u201d -- all while making sure you don&#039;t jeopardize customer feedback or time to market.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/\" \/>\n<meta property=\"og:site_name\" content=\"ChartMogul\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/chartmogul\" \/>\n<meta property=\"article:published_time\" content=\"2019-04-12T08:41:29+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-08-11T09:13:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/04\/blog_continuous_delivery.png\" \/>\n\t<meta property=\"og:image:width\" content=\"3000\" \/>\n\t<meta property=\"og:image:height\" content=\"1250\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Marco Ziccardi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@chartmogul\" \/>\n<meta name=\"twitter:site\" content=\"@chartmogul\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Marco Ziccardi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/\"},\"author\":{\"name\":\"Marco Ziccardi\",\"@id\":\"https:\/\/chartmogul.com\/blog\/#\/schema\/person\/944f37a5b06407806aef2434474548ed\"},\"headline\":\"The Continuous Saga: how to keep a steady pace without breaking things\",\"datePublished\":\"2019-04-12T08:41:29+00:00\",\"dateModified\":\"2023-08-11T09:13:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/\"},\"wordCount\":1107,\"publisher\":{\"@id\":\"https:\/\/chartmogul.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/04\/blog_continuous_delivery.png\",\"keywords\":[\"best practices\",\"development\",\"engineering\",\"integration\",\"processes\"],\"articleSection\":[\"GTM\",\"How we Build\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/\",\"url\":\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/\",\"name\":\"The Continuous Saga: how to keep a steady pace without breaking things | ChartMogul\",\"isPartOf\":{\"@id\":\"https:\/\/chartmogul.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/04\/blog_continuous_delivery.png\",\"datePublished\":\"2019-04-12T08:41:29+00:00\",\"dateModified\":\"2023-08-11T09:13:52+00:00\",\"description\":\"How to transition from the \u201cmove fast and break things\u201d paradigm to a \u201ckeep a steady pace and don\u2019t break things\u201d -- all while making sure you don't jeopardize customer feedback or time to market.\",\"breadcrumb\":{\"@id\":\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#primaryimage\",\"url\":\"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/04\/blog_continuous_delivery.png\",\"contentUrl\":\"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/04\/blog_continuous_delivery.png\",\"width\":3000,\"height\":1250,\"caption\":\"continuous-delivery\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/chartmogul.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"The Continuous Saga: how to keep a steady pace without breaking things\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/chartmogul.com\/blog\/#website\",\"url\":\"https:\/\/chartmogul.com\/blog\/\",\"name\":\"ChartMogul\",\"description\":\"Get all your SaaS &amp; Subscription Metrics with a Single Click! MRR, churn, LTV and much more.\",\"publisher\":{\"@id\":\"https:\/\/chartmogul.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/chartmogul.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/chartmogul.com\/blog\/#organization\",\"name\":\"ChartMogul\",\"url\":\"https:\/\/chartmogul.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/chartmogul.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/05\/ChartMogul-Logo.png\",\"contentUrl\":\"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/05\/ChartMogul-Logo.png\",\"width\":278,\"height\":52,\"caption\":\"ChartMogul\"},\"image\":{\"@id\":\"https:\/\/chartmogul.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/chartmogul\",\"https:\/\/x.com\/chartmogul\",\"https:\/\/www.linkedin.com\/company\/chartmogul\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/chartmogul.com\/blog\/#\/schema\/person\/944f37a5b06407806aef2434474548ed\",\"name\":\"Marco Ziccardi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/chartmogul.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/4404ec9532b6c36d820330cdb993a7f2a349a705a1e3ce4f4495b3f3ab206f85?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/4404ec9532b6c36d820330cdb993a7f2a349a705a1e3ce4f4495b3f3ab206f85?s=96&d=mm&r=g\",\"caption\":\"Marco Ziccardi\"},\"url\":\"https:\/\/chartmogul.com\/blog\/author\/zic\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"The Continuous Saga: how to keep a steady pace without breaking things | ChartMogul","description":"How to transition from the \u201cmove fast and break things\u201d paradigm to a \u201ckeep a steady pace and don\u2019t break things\u201d -- all while making sure you don't jeopardize customer feedback or time to market.","robots":{"index":"index","follow":"follow"},"canonical":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/","og_locale":"en_US","og_type":"article","og_title":"The Continuous Saga: how to keep a steady pace without breaking things | ChartMogul","og_description":"How to transition from the \u201cmove fast and break things\u201d paradigm to a \u201ckeep a steady pace and don\u2019t break things\u201d -- all while making sure you don't jeopardize customer feedback or time to market.","og_url":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/","og_site_name":"ChartMogul","article_publisher":"https:\/\/www.facebook.com\/chartmogul","article_published_time":"2019-04-12T08:41:29+00:00","article_modified_time":"2023-08-11T09:13:52+00:00","og_image":[{"width":3000,"height":1250,"url":"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/04\/blog_continuous_delivery.png","type":"image\/png"}],"author":"Marco Ziccardi","twitter_card":"summary_large_image","twitter_creator":"@chartmogul","twitter_site":"@chartmogul","twitter_misc":{"Written by":"Marco Ziccardi","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#article","isPartOf":{"@id":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/"},"author":{"name":"Marco Ziccardi","@id":"https:\/\/chartmogul.com\/blog\/#\/schema\/person\/944f37a5b06407806aef2434474548ed"},"headline":"The Continuous Saga: how to keep a steady pace without breaking things","datePublished":"2019-04-12T08:41:29+00:00","dateModified":"2023-08-11T09:13:52+00:00","mainEntityOfPage":{"@id":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/"},"wordCount":1107,"publisher":{"@id":"https:\/\/chartmogul.com\/blog\/#organization"},"image":{"@id":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#primaryimage"},"thumbnailUrl":"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/04\/blog_continuous_delivery.png","keywords":["best practices","development","engineering","integration","processes"],"articleSection":["GTM","How we Build"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/","url":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/","name":"The Continuous Saga: how to keep a steady pace without breaking things | ChartMogul","isPartOf":{"@id":"https:\/\/chartmogul.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#primaryimage"},"image":{"@id":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#primaryimage"},"thumbnailUrl":"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/04\/blog_continuous_delivery.png","datePublished":"2019-04-12T08:41:29+00:00","dateModified":"2023-08-11T09:13:52+00:00","description":"How to transition from the \u201cmove fast and break things\u201d paradigm to a \u201ckeep a steady pace and don\u2019t break things\u201d -- all while making sure you don't jeopardize customer feedback or time to market.","breadcrumb":{"@id":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/chartmogul.com\/blog\/the-continuous-saga\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#primaryimage","url":"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/04\/blog_continuous_delivery.png","contentUrl":"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/04\/blog_continuous_delivery.png","width":3000,"height":1250,"caption":"continuous-delivery"},{"@type":"BreadcrumbList","@id":"https:\/\/chartmogul.com\/blog\/the-continuous-saga\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/chartmogul.com\/blog\/"},{"@type":"ListItem","position":2,"name":"The Continuous Saga: how to keep a steady pace without breaking things"}]},{"@type":"WebSite","@id":"https:\/\/chartmogul.com\/blog\/#website","url":"https:\/\/chartmogul.com\/blog\/","name":"ChartMogul","description":"Get all your SaaS &amp; Subscription Metrics with a Single Click! MRR, churn, LTV and much more.","publisher":{"@id":"https:\/\/chartmogul.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/chartmogul.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/chartmogul.com\/blog\/#organization","name":"ChartMogul","url":"https:\/\/chartmogul.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/chartmogul.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/05\/ChartMogul-Logo.png","contentUrl":"https:\/\/chartmogul.com\/blog\/wp-content\/uploads\/2019\/05\/ChartMogul-Logo.png","width":278,"height":52,"caption":"ChartMogul"},"image":{"@id":"https:\/\/chartmogul.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/chartmogul","https:\/\/x.com\/chartmogul","https:\/\/www.linkedin.com\/company\/chartmogul\/"]},{"@type":"Person","@id":"https:\/\/chartmogul.com\/blog\/#\/schema\/person\/944f37a5b06407806aef2434474548ed","name":"Marco Ziccardi","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/chartmogul.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/4404ec9532b6c36d820330cdb993a7f2a349a705a1e3ce4f4495b3f3ab206f85?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4404ec9532b6c36d820330cdb993a7f2a349a705a1e3ce4f4495b3f3ab206f85?s=96&d=mm&r=g","caption":"Marco Ziccardi"},"url":"https:\/\/chartmogul.com\/blog\/author\/zic\/"}]}},"_links":{"self":[{"href":"https:\/\/chartmogul.com\/blog\/wp-json\/wp\/v2\/posts\/12730","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/chartmogul.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/chartmogul.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/chartmogul.com\/blog\/wp-json\/wp\/v2\/users\/29"}],"replies":[{"embeddable":true,"href":"https:\/\/chartmogul.com\/blog\/wp-json\/wp\/v2\/comments?post=12730"}],"version-history":[{"count":0,"href":"https:\/\/chartmogul.com\/blog\/wp-json\/wp\/v2\/posts\/12730\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/chartmogul.com\/blog\/wp-json\/wp\/v2\/media\/12731"}],"wp:attachment":[{"href":"https:\/\/chartmogul.com\/blog\/wp-json\/wp\/v2\/media?parent=12730"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/chartmogul.com\/blog\/wp-json\/wp\/v2\/categories?post=12730"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/chartmogul.com\/blog\/wp-json\/wp\/v2\/tags?post=12730"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}