<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[The Cloud Dive]]></title><description><![CDATA[I brute-forced my way into cloud engineering — breaking prod and grinding through hundreds of tutorials along the way.

Eventually, I made it.

Now I’m documenting what actually matters so you can skip the painful parts.]]></description><link>https://theclouddive.com</link><image><url>https://substackcdn.com/image/fetch/$s_!Qd10!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7be82cb5-9eb0-4b86-96e8-07063afdc715_800x800.png</url><title>The Cloud Dive</title><link>https://theclouddive.com</link></image><generator>Substack</generator><lastBuildDate>Sat, 16 May 2026 03:44:05 GMT</lastBuildDate><atom:link href="https://theclouddive.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[The Cloud Dive]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[everythingcloud@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[everythingcloud@substack.com]]></itunes:email><itunes:name><![CDATA[The Cloud Dive]]></itunes:name></itunes:owner><itunes:author><![CDATA[The Cloud Dive]]></itunes:author><googleplay:owner><![CDATA[everythingcloud@substack.com]]></googleplay:owner><googleplay:email><![CDATA[everythingcloud@substack.com]]></googleplay:email><googleplay:author><![CDATA[The Cloud Dive]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[A Dev Kafka Broker for the Price of a Bad Coffee]]></title><description><![CDATA[Running a real Kafka broker for Sentinel's ingestion layer &#8212; without the managed service price tag]]></description><link>https://theclouddive.com/p/a-dev-kafka-broker-for-the-price</link><guid isPermaLink="false">https://theclouddive.com/p/a-dev-kafka-broker-for-the-price</guid><dc:creator><![CDATA[The Cloud Dive]]></dc:creator><pubDate>Mon, 09 Mar 2026 13:45:47 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Sb3o!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c72a938-f477-4c9e-abe9-3ac9b5545700_1024x608.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Sb3o!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c72a938-f477-4c9e-abe9-3ac9b5545700_1024x608.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Sb3o!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c72a938-f477-4c9e-abe9-3ac9b5545700_1024x608.png 424w, https://substackcdn.com/image/fetch/$s_!Sb3o!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c72a938-f477-4c9e-abe9-3ac9b5545700_1024x608.png 848w, https://substackcdn.com/image/fetch/$s_!Sb3o!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c72a938-f477-4c9e-abe9-3ac9b5545700_1024x608.png 1272w, https://substackcdn.com/image/fetch/$s_!Sb3o!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c72a938-f477-4c9e-abe9-3ac9b5545700_1024x608.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Sb3o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c72a938-f477-4c9e-abe9-3ac9b5545700_1024x608.png" width="1024" height="608" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3c72a938-f477-4c9e-abe9-3ac9b5545700_1024x608.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:608,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Sb3o!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c72a938-f477-4c9e-abe9-3ac9b5545700_1024x608.png 424w, https://substackcdn.com/image/fetch/$s_!Sb3o!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c72a938-f477-4c9e-abe9-3ac9b5545700_1024x608.png 848w, https://substackcdn.com/image/fetch/$s_!Sb3o!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c72a938-f477-4c9e-abe9-3ac9b5545700_1024x608.png 1272w, https://substackcdn.com/image/fetch/$s_!Sb3o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c72a938-f477-4c9e-abe9-3ac9b5545700_1024x608.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">An AI generated diagram of this deployment &#8212; laptop &#8594; fly proxy &#8594; Kafka broker on Fly.io.</figcaption></figure></div><h2><strong>Deploying Kafka on Fly.io</strong></h2><p>Before I could wire Kafka into Sentinel&#8217;s ingestion layer, I needed a Kafka broker that wasn&#8217;t going to cost me $50/month to leave running while I figured things out.</p><p>AWS MSK? Overkill for dev work. I need something in the middle &#8212; a real bro&#8230;</p>
      <p>
          <a href="https://theclouddive.com/p/a-dev-kafka-broker-for-the-price">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Sentinel: Scoping the Ingestion Layer Architecture]]></title><description><![CDATA[Defining Constraints, Making Tradeoffs, and Building the Foundation]]></description><link>https://theclouddive.com/p/sentinel-scoping-the-ingestion-layer</link><guid isPermaLink="false">https://theclouddive.com/p/sentinel-scoping-the-ingestion-layer</guid><dc:creator><![CDATA[The Cloud Dive]]></dc:creator><pubDate>Mon, 02 Mar 2026 17:31:12 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!c7Wo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2781b4de-6705-4287-bc8a-c21165fad863_692x1282.heic" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2><strong>Designing the Architecture: What We&#8217;re Building and Why</strong></h2><p>Last episode we talked about the gap &#8212; the difference between a portfolio that shows you can deploy and one that shows you can design.</p><p>Now we close the gap.</p><p>This is where Sentinel stops being an idea and starts being a system. But before we get into what we built, we need to start with something most &#8230;</p>
      <p>
          <a href="https://theclouddive.com/p/sentinel-scoping-the-ingestion-layer">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Sentinel: Why Most Cloud Portfolios Don’t Get You Hired]]></title><description><![CDATA[Why tutorials and certs aren&#8217;t enough and what actually moves the needle.]]></description><link>https://theclouddive.com/p/sentinel-why-most-cloud-portfolios</link><guid isPermaLink="false">https://theclouddive.com/p/sentinel-why-most-cloud-portfolios</guid><dc:creator><![CDATA[The Cloud Dive]]></dc:creator><pubDate>Tue, 24 Feb 2026 17:43:19 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Bj5U!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7e815b5-a766-4167-b4ae-589902fa72ea_1024x608.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p>This is Episode 0 of <strong><a href="https://theclouddive.com/s/sentinel">Sentinel</a></strong>, a public build documenting production-level cloud thinking.</p></blockquote><p>You did the tutorials. You deployed the thing. Maybe you have the certifications.</p><p>And nobody cares.</p><p>That&#8217;s not bitterness. That&#8217;s the market telling you something. Most cloud portfolios look the same to the person reading them &#8212; and that person has seen forty of them&#8230;</p>
      <p>
          <a href="https://theclouddive.com/p/sentinel-why-most-cloud-portfolios">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The Only 4 Terraform Commands You Need to Start]]></title><description><![CDATA[The init, plan, apply, and state loop every aspiring cloud engineer needs to know]]></description><link>https://theclouddive.com/p/the-only-4-terraform-commands-you</link><guid isPermaLink="false">https://theclouddive.com/p/the-only-4-terraform-commands-you</guid><dc:creator><![CDATA[The Cloud Dive]]></dc:creator><pubDate>Wed, 18 Feb 2026 22:59:02 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/72c2cabf-c1ff-4e60-b3c6-0eb67a01ce6d_1100x220.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Terraform is the quickest way to start managing infrastructure at scale. Period.</p><p>You need to spin up 3 VMs, 3 AWS App Runner services, and an ECS cluster then you need to keep track of ECR repos, security groups, databases, networking, etc. Manually? That gets messy fast.</p><p>Terraform keeps track of all of it through state. It keeps a record of every resourc&#8230;</p>
      <p>
          <a href="https://theclouddive.com/p/the-only-4-terraform-commands-you">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Deploying Keycloak on Fly.io from 0 to 1]]></title><description><![CDATA[Inside the issue, steps to deploy Keycloak on a Fly.io app.]]></description><link>https://theclouddive.com/p/deploying-keycloak-on-flyio-from</link><guid isPermaLink="false">https://theclouddive.com/p/deploying-keycloak-on-flyio-from</guid><dc:creator><![CDATA[The Cloud Dive]]></dc:creator><pubDate>Sun, 15 Feb 2026 22:33:53 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/195cb8a5-40d2-402e-815b-752205503ecc_2560x1440.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This is part one on a three part series on <a href="https://fly.io">fly.io</a> and <a href="https://www.keycloak.org">keycloak</a>. I am running a keycloak server on a DO droplet and exploring moving it to fly to cut costs. Is this FinOps you say?</p><p>In this first part I am showing how to deploy the fly app so that we can start exploring performance and costs in the next two articles of the series. So let&#8217;s get started.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://theclouddive.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">The &#8230;</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>
      <p>
          <a href="https://theclouddive.com/p/deploying-keycloak-on-flyio-from">
              Read more
          </a>
      </p>
   ]]></content:encoded></item></channel></rss>