<?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[Data Engineer Things]]></title><description><![CDATA[Data Engineer Things is dedicated to creating and sharing learning resources for data engineering. Our audience ranges from aspirational data engineers to experienced data leaders. Subscribe to grow and learn together!]]></description><link>https://dataengineerthings.substack.com</link><image><url>https://substackcdn.com/image/fetch/$s_!tTfP!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66064eba-64c2-444a-8c61-2f9c14174abd_800x800.png</url><title>Data Engineer Things</title><link>https://dataengineerthings.substack.com</link></image><generator>Substack</generator><lastBuildDate>Sun, 11 Oct 2026 06:55:13 GMT</lastBuildDate><atom:link href="https://dataengineerthings.substack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Xinran Waibel]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[dataengineerthings@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[dataengineerthings@substack.com]]></itunes:email><itunes:name><![CDATA[Data Engineer Things]]></itunes:name></itunes:owner><itunes:author><![CDATA[Data Engineer Things]]></itunes:author><googleplay:owner><![CDATA[dataengineerthings@substack.com]]></googleplay:owner><googleplay:email><![CDATA[dataengineerthings@substack.com]]></googleplay:email><googleplay:author><![CDATA[Data Engineer Things]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Data Engineer Things Newsletter - Community Spotlight Edition (October 2026)]]></title><description><![CDATA[On streaming systems, platform design, open source, and engineering tradeoffs.]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-55f</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-55f</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 06 Oct 2026 15:03:48 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Fkmc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.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_!Fkmc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Fkmc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!Fkmc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!Fkmc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!Fkmc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Fkmc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:230101,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/214463350?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Fkmc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!Fkmc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!Fkmc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!Fkmc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa2781b3-9434-479d-bfa8-9d1485c4e675_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hi everyone,</p><p>For this month&#8217;s Community Spotlight, we&#8217;re chatting with Jerry Peng, a Staff Software Engineer at Databricks and the tech lead for Spark Structured Streaming&#8217;s Real-Time Mode.</p><p>Jerry has over a decade of experience building distributed streaming systems across industry and open source, working on technologies including Apache Storm, Heron, Pulsar, and Spark. He is also a committer and PMC member of Apache Pulsar, Storm, and Heron.</p><p>In this conversation, Jerry reflects on how stream processing has evolved, the tradeoffs engineers often underestimate, what open source can teach engineering teams, and where AI can meaningfully change how distributed systems are built and operated.</p><p>Let&#8217;s get into it.</p><p>- Shubham, Swetha, &amp; Sugandhi</p><div><hr></div><h3>&#128227; What&#8217;s New in DET</h3><h4>&#127908; DET Webinar: Stop Optimizing the Wrong Part of Your Spark Job</h4><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YaqH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2700fda0-a626-4c82-9536-5388917b9e20_1919x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YaqH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2700fda0-a626-4c82-9536-5388917b9e20_1919x1080.png 424w, https://substackcdn.com/image/fetch/$s_!YaqH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2700fda0-a626-4c82-9536-5388917b9e20_1919x1080.png 848w, https://substackcdn.com/image/fetch/$s_!YaqH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2700fda0-a626-4c82-9536-5388917b9e20_1919x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!YaqH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2700fda0-a626-4c82-9536-5388917b9e20_1919x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YaqH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2700fda0-a626-4c82-9536-5388917b9e20_1919x1080.png" width="475" height="267.1875" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2700fda0-a626-4c82-9536-5388917b9e20_1919x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:475,&quot;bytes&quot;:872107,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/214463350?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2700fda0-a626-4c82-9536-5388917b9e20_1919x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!YaqH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2700fda0-a626-4c82-9536-5388917b9e20_1919x1080.png 424w, https://substackcdn.com/image/fetch/$s_!YaqH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2700fda0-a626-4c82-9536-5388917b9e20_1919x1080.png 848w, https://substackcdn.com/image/fetch/$s_!YaqH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2700fda0-a626-4c82-9536-5388917b9e20_1919x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!YaqH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2700fda0-a626-4c82-9536-5388917b9e20_1919x1080.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Join us on <strong>October 16</strong> to explore where Spark performance problems actually come from and how to focus optimization efforts on the bottlenecks that matter. <strong>(<a href="https://luma.com/uux1k484?tk=WJNUHj">RSVP</a>)</strong></p><h4>&#128205; DET Meetups in October</h4><ul><li><p>Toronto meetup at Shopify Toronto Office on Thu, Oct 29 (<strong><a href="https://luma.com/gfqf7h0v">RSVP</a></strong>)</p></li><li><p>Bengaluru meetup at Koramangala, Bengaluru on Sat, Oct 31 (<strong><a href="https://luma.com/99az8b81">RSVP</a></strong>)</p></li></ul><h4>&#127775; Data Engineering + AI Leadership Summit 2026</h4><p>The Data Engineering + AI Leadership Summit is coming up on <strong>November 2 in San Francisco</strong>, bringing together senior data and AI practitioners and leaders for candid discussions on challenges facing modern organizations. <strong><a href="https://luma.com/deals2026?utm_source=newsletter_1005">Apply to Attend</a></strong></p><div><hr></div><h3>&#127903;&#65039; Next Query 2026: The Data + AI Infrastructure Summit</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DzAM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9074f52-9eb4-4d09-a285-74996780470b_2400x1260.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DzAM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9074f52-9eb4-4d09-a285-74996780470b_2400x1260.png 424w, https://substackcdn.com/image/fetch/$s_!DzAM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9074f52-9eb4-4d09-a285-74996780470b_2400x1260.png 848w, https://substackcdn.com/image/fetch/$s_!DzAM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9074f52-9eb4-4d09-a285-74996780470b_2400x1260.png 1272w, https://substackcdn.com/image/fetch/$s_!DzAM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9074f52-9eb4-4d09-a285-74996780470b_2400x1260.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DzAM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9074f52-9eb4-4d09-a285-74996780470b_2400x1260.png" width="601" height="315.3598901098901" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b9074f52-9eb4-4d09-a285-74996780470b_2400x1260.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:764,&quot;width&quot;:1456,&quot;resizeWidth&quot;:601,&quot;bytes&quot;:1547731,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/214463350?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9074f52-9eb4-4d09-a285-74996780470b_2400x1260.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!DzAM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9074f52-9eb4-4d09-a285-74996780470b_2400x1260.png 424w, https://substackcdn.com/image/fetch/$s_!DzAM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9074f52-9eb4-4d09-a285-74996780470b_2400x1260.png 848w, https://substackcdn.com/image/fetch/$s_!DzAM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9074f52-9eb4-4d09-a285-74996780470b_2400x1260.png 1272w, https://substackcdn.com/image/fetch/$s_!DzAM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9074f52-9eb4-4d09-a285-74996780470b_2400x1260.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Next Query is a free virtual summit organized by PhoenixAI, the original creator of StarRocks, exploring the data infrastructure behind analytics and AI agents. On November 4, engineers from companies like Apple, Cisco, Microsoft, and AWS will share how they build analytics systems at scale. Sessions include:</p><ul><li><p><strong>Apple:</strong> StarRocks as a Service: Building, Operating, and Troubleshooting at Scale</p></li><li><p><strong>Cisco:</strong> From Unified Real-Time Analytics to a Governed AI Data Plane</p></li><li><p><strong>Applovin:</strong> Scaling Analytics at AppLovin with StarRocks</p></li></ul><p><strong>&#128073;&#127996; Sign up <a href="https://nextquery.phoenixdata.ai/?utm_source=DET&amp;utm_medium=Newsletter&amp;utm_campaign=NextQuery2026">HERE</a> (free registration).</strong></p><div><hr></div><h3>Spotlight: Jerry Peng</h3><div class="pullquote"><p style="text-align: justify;">&#8220;Building a system that performs well is one challenge; building one that can be operated reliably in production is another.&#8221;</p></div><blockquote><p><em><span>Please introduce yourself briefly to the Data Engineer Things community.</span></em></p></blockquote><p><span>My name is Jerry Peng, and I am currently a Staff Software Engineer at Databricks, where I work extensively on Apache Spark Structured Streaming. Before joining Databricks, I was a Principal Software Engineer at Splunk, focusing on streaming and messaging systems, particularly Apache Pulsar and Apache Flink.</span></p><p><span>I have spent much of my career working on open-source stream processing systems. I am a committer and PMC member of the Apache Pulsar, Apache Storm, and Apache Heron projects. Prior to Splunk, I worked at Streamlio, where we were building a next-generation stream processing platform before the company was acquired by Splunk. Earlier in my career, I also worked at Citadel and Yahoo, where I focused on distributed systems and stream processing.</span></p><p><span>My interest in this space goes back to my graduate studies at the University of Illinois Urbana-Champaign, and much of my career since then has centered on building scalable, reliable systems for processing data in real time.</span></p><div><hr></div><blockquote><p><em>You&#8217;ve spent nearly your entire career building distributed stream processing systems. What first drew you to this space, and what has kept it interesting for so many years?</em></p></blockquote><p><span>How I got started in distributed stream processing is actually a funny story. While I was in graduate school at UIUC, my advisor, Professor Indranil Gupta, told me that stream processing was going to be the &#8220;next hot area&#8221; and suggested that I do research in it. As a fairly naive and inexperienced graduate student, I agreed without really knowing what I was getting myself into. I am pretty sure I had even fallen asleep during one of the lectures where he talked about stream processing systems. But that conversation ended up being the start of my journey into the field.</span></p><p><span>What has kept me in stream processing for so many years is that I still find the problems both technically challenging and rewarding. Stream processing sits at the intersection of distributed systems and databases, and there are difficult problems to solve across many dimensions. </span><strong><span>Performance is not just about maximizing throughput; you also have to think about latency, scalability, fault tolerance, consistency, infrastructure cost, and increasingly, usability.</span></strong><span> Improving one dimension often comes at the expense of another, so building a good streaming system requires making interesting engineering tradeoffs. Even after working in this area for many years, there are still plenty of hard problems left to solve.</span></p><p><span>It has also been interesting to watch the industry evolve. When I first entered the field, stream processing was relatively specialized, and batch processing was still the dominant way most organizations approached large-scale data processing. As batch processing technologies have matured, more organizations have started asking whether there are faster and more efficient ways to process their data and make it available for use. Increasingly, they are realizing that </span><strong><span>many workloads traditionally implemented as batch pipelines can naturally be expressed as streaming or incremental computations</span></strong><span>. This shift has led to much greater interest in stream processing and, more broadly, in building data pipelines around continuous and incremental processing.</span></p><p><span>So in some sense, my advisor was right&#8212;just perhaps a little early. When he told me years ago that stream processing was going to be the &#8220;next hot thing,&#8221; I did not fully appreciate what he meant. Today, we are at a point where many more engineers and organizations are actively thinking about how to build their data systems around streaming and incremental computation, which makes it an especially exciting time to still be working in this space.</span></p><div><hr></div><blockquote><p><em>You&#8217;ve worked on Apache Storm, Heron, Pulsar, and now Spark Structured Streaming. Looking back, what ideas about stream processing have remained fundamentally true across all these systems, and which assumptions have completely changed?</em></p></blockquote><p><span>One thing that has remained fundamentally true across all of these systems is the core challenge of distributed computing: how do you take a collection of commodity machines of different shapes and sizes and make them work together as a single, scalable, and fault-tolerant system? Hardware has become faster and cloud infrastructure has changed how we provision resources, but the fundamental requirements have not changed very much. A distributed stream processing system still needs to scale across many machines, tolerate failures, recover correctly, and continue processing data reliably.</span></p><p><span>Latency has also always been an important concern in stream processing, but I think the way we think about latency has evolved considerably. In the earlier days of streaming systems, lower latency was often treated as an objective by itself&#8212;the faster you could process an event, the better. Today, users are much more interested in the relationship between latency and cost. If infrastructure cost were irrelevant, almost everyone would want their data processed as quickly as possible. In practice, however, users need to make intelligent tradeoffs between latency, throughput, reliability, and infrastructure spend. The question is increasingly not simply, &#8220;How low can my latency be?&#8221; but rather, &#8220;</span><strong><span>What latency does my application actually require, and what is the most cost-effective way to achieve it?</span></strong><span>&#8221;</span></p><p><span>Another major change has been how stream processing is exposed to users. Historically, using a streaming engine often required a fairly deep understanding of streaming concepts and specialized programming models. Developers had to reason explicitly about things such as event time, windows, state, watermarks, and the lifecycle of long-running streaming applications. That created a relatively high barrier to entry.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BCtd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51bd4315-5f75-4f0d-89d8-297bdfa3af70_1672x941.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BCtd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51bd4315-5f75-4f0d-89d8-297bdfa3af70_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!BCtd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51bd4315-5f75-4f0d-89d8-297bdfa3af70_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!BCtd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51bd4315-5f75-4f0d-89d8-297bdfa3af70_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!BCtd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51bd4315-5f75-4f0d-89d8-297bdfa3af70_1672x941.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BCtd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51bd4315-5f75-4f0d-89d8-297bdfa3af70_1672x941.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/51bd4315-5f75-4f0d-89d8-297bdfa3af70_1672x941.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:485086,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/214463350?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51bd4315-5f75-4f0d-89d8-297bdfa3af70_1672x941.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!BCtd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51bd4315-5f75-4f0d-89d8-297bdfa3af70_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!BCtd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51bd4315-5f75-4f0d-89d8-297bdfa3af70_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!BCtd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51bd4315-5f75-4f0d-89d8-297bdfa3af70_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!BCtd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51bd4315-5f75-4f0d-89d8-297bdfa3af70_1672x941.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Familiar abstractions make streaming easier to use.</figcaption></figure></div><p><span>Over time, the industry has increasingly moved toward exposing streaming capabilities through interfaces that data engineers already understand, such as SQL, tables, and materialized views. Instead of requiring every user to think of themselves as a streaming systems expert, the system can increasingly hide much of that complexity behind familiar abstractions. I think this is an important evolution: </span><strong><span>stream processing is becoming less of a specialized technology that users have to explicitly adopt and more of an underlying execution model for continuously and incrementally maintaining fresh data.</span></strong></p><div><hr></div><blockquote><p><em>For years, organizations maintained separate systems for batch processing and low-latency streaming. Do you think Real-Time Mode represents the beginning of a unified data platform, or will there always be workloads that require specialized streaming engines?</em></p></blockquote><p><span>Historically, it was common for organizations to use one set of systems for batch processing and another for low-latency stream processing. Technologies such as Apache Hadoop MapReduce and Spark were widely used for batch workloads, while specialized engines such as Apache Storm and Apache Flink were often adopted for workloads that required millisecond-level latency. I would argue, however, that Apache Spark had already gone a long way toward unifying batch and streaming even before Real-Time Mode. Spark supports both batch processing and, through Structured Streaming, incremental and streaming processing on top of the same core engine and largely the same APIs. Users can move between these processing models without having to adopt an entirely different programming model or technology stack.</span></p><div><hr></div><h4>&#128161; Editorial Note: Spark Structured Streaming&#8217;s Real-Time Mode</h4><p><em><a href="https://www.databricks.com/blog/introducing-real-time-mode-apache-sparktm-structured-streaming">Real-time mode</a></em> <em>is a new Spark Structured Streaming trigger that processes events continuously as they arrive, instead of on a micro-batch schedule, cutting latency down to milliseconds for use cases like fraud detection, live personalization, and ML feature serving. For a video walkthrough, Jerry also covered</em> <em>Spark Structured Streaming&#8217;s Real-Time Mode</em> <em>in his 2<a href="https://www.youtube.com/watch?v=_E8f6wkcIBE">026 Data Engineering Open Forum talk</a>.</em></p><div><hr></div><p><span>One of the strengths of Structured Streaming is the flexibility it gives users in choosing how their pipelines execute based on freshness and cost requirements. With the AvailableNow execution mode, a pipeline processes all currently available data and then shuts down. With ProcessingTime, it runs continuously and periodically processes newly arriving data. And now, with Real-Time Mode, it can continuously process data with millisecond-level latency. Together, these execution modes allow users to choose the right balance between data freshness and infrastructure cost without having to move to a different processing engine simply because their latency requirements change.</span></p><p><span>Real-Time Mode is significant because low latency was the major remaining gap in this unification. Previously, it was difficult for Structured Streaming to consistently achieve millisecond-level latency, so organizations already using Spark for batch and less latency-sensitive streaming workloads would often operate a separate engine such as Flink for their lowest-latency workloads. RTM closes that gap, allowing organizations to consolidate batch, incremental, and low-latency streaming workloads onto the same platform.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4Zp5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe00a0ca1-2ec4-4177-9cc8-6c2dc1c85d2d_1672x941.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4Zp5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe00a0ca1-2ec4-4177-9cc8-6c2dc1c85d2d_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!4Zp5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe00a0ca1-2ec4-4177-9cc8-6c2dc1c85d2d_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!4Zp5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe00a0ca1-2ec4-4177-9cc8-6c2dc1c85d2d_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!4Zp5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe00a0ca1-2ec4-4177-9cc8-6c2dc1c85d2d_1672x941.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4Zp5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe00a0ca1-2ec4-4177-9cc8-6c2dc1c85d2d_1672x941.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e00a0ca1-2ec4-4177-9cc8-6c2dc1c85d2d_1672x941.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:471891,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/214463350?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe00a0ca1-2ec4-4177-9cc8-6c2dc1c85d2d_1672x941.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!4Zp5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe00a0ca1-2ec4-4177-9cc8-6c2dc1c85d2d_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!4Zp5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe00a0ca1-2ec4-4177-9cc8-6c2dc1c85d2d_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!4Zp5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe00a0ca1-2ec4-4177-9cc8-6c2dc1c85d2d_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!4Zp5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe00a0ca1-2ec4-4177-9cc8-6c2dc1c85d2d_1672x941.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">One platform, multiple paths from batch to real-time.</figcaption></figure></div><p><span>We have already seen this with customers at Databricks. Some customers that previously maintained both Spark and Flink environments have moved their low-latency workloads to Structured Streaming and deprecated their separate Flink infrastructure. Platform consolidation resonates strongly because the cost of operating multiple engines goes well beyond infrastructure: teams must learn multiple systems, maintain different tooling, understand different APIs and semantics, and develop operational expertise for each.</span></p><p><span>So I think the unification of batch and streaming was already well underway with Apache Spark; Real-Time Mode extends that unification into the low-latency domain.</span></p><div><hr></div><blockquote><p><em>Databricks serves a broad range of customers with very different workloads and latency requirements. How do you decide when a capability should become part of the core platform versus remaining a specialized solution, and what tradeoffs does that decision involve?</em></p></blockquote><p><span>My view is that specialized solutions should, whenever possible, be built on top of the core platform rather than as completely separate technology stacks. That requires the core platform to have strong fundamentals&#8212;scalability, fault tolerance, reliability, and operability&#8212;so it can support a wide range of workloads.</span></p><p><span>Building a specialized system from scratch can be attractive because it allows you to optimize aggressively for a particular use case. But it also introduces significant duplicated complexity. You now have another system to deploy, monitor, upgrade, autoscale, debug, and support. More importantly, you may end up rediscovering and solving many of the same correctness and reliability problems that the core platform has already encountered and hardened itself against through years of production use.</span></p><p><span>This fragmentation also tends to create a worse user experience. Users may have to learn a different API, programming model, operational model, and debugging workflow simply because one workload has different requirements. Over time, that becomes both an operational and management burden.</span></p><p><span>Real-Time Mode is a good example of the approach I prefer. We could have built an entirely new low-latency streaming engine optimized specifically for millisecond-level processing. Instead, we deliberately chose to extend Structured Streaming itself. This allowed us to reuse Spark&#8217;s existing APIs, semantics, state management, fault tolerance, ecosystem, and operational foundations while changing the execution architecture needed to achieve much lower latency.</span></p><p><span>There will always be cases that require specialized behavior, but I think the better architectural pattern is to make that specialization a capability or execution mode of a strong core platform. A battle-tested core already embodies years of lessons around correctness, reliability, and operability. Building on that foundation lets engineers focus on what is actually unique about the new use case rather than repeatedly solving the same distributed systems problems.</span></p><p><span>The real challenge, then, is designing the core platform with clean abstractions and strong enough fundamentals that it can evolve to support new classes of workloads without becoming overly complex.</span></p><div><hr></div><blockquote><p><em>Streaming system design often involves tradeoffs such as lower latency at the cost of higher infrastructure spend, or stronger consistency at the cost of throughput and availability. What other tradeoffs do you think engineers tend to underestimate when designing streaming systems?</em></p></blockquote><p><span>I think one area that has not received enough attention is usability. As I mentioned earlier, many concepts in stream processing can be difficult for users to understand and reason about. That raises an important design question: can we expose streaming and incremental processing through simpler and more familiar interfaces, such as SQL, tables, or materialized views, rather than requiring every user to become an expert in streaming concepts? A technically powerful system is much less valuable if it is too difficult for users to understand and use correctly.</span></p><p><span>Another important area is operability. Engineers who have not actually run streaming systems in production often underestimate how challenging it is to operate and support them over long periods of time. You have to handle upgrades, failures, scaling and autoscaling, workload changes, and capacity management, all while continuing to meet latency and availability SLOs. Building a system that performs well is one challenge; building one that can be operated reliably in production is another.</span></p><p><span>A third area with a lot of nuance is correctness, particularly understanding at what level a correctness guarantee actually applies. A streaming engine may provide exactly-once processing internally, but that does not automatically mean the entire pipeline is exactly-once. Sources, sinks, retries, external side effects, and application logic all contribute to the end-to-end semantics. </span><strong><span>Engineers sometimes underestimate how much correctness is ultimately a property of the entire pipeline rather than just the processing engine.</span></strong></p><div><hr></div><blockquote><p><em><span>You&#8217;ve spent years building both open-source infrastructure and commercial products. What engineering habits or design principles have you learned from open source that companies should adopt more often, and vice versa?</span></em></p></blockquote><p><span>One of the most valuable lessons I have learned from open source is the importance of a relatively egalitarian engineering culture. In a healthy open-source community, your job title, employer, or organizational seniority carries much less weight than the quality of your technical argument and the trust you have built through your contributions. A junior contributor can challenge a design proposed by a very senior engineer, and that design still has to stand on its technical merits.</span></p><p><span>This creates a healthy form of adversarial review. You have to clearly explain the problem you are solving, the assumptions you are making, the alternatives you considered, and the tradeoffs involved. You cannot simply rely on organizational authority to move a decision forward. This becomes even more valuable when contributors come from different companies, each bringing different workloads, constraints, and incentives. A design that works well for one organization may not make sense for the broader community, so ideas are tested against a much wider range of perspectives.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3rEL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda2b6ce5-787a-4299-a637-cc1b86b371d4_1448x1086.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3rEL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda2b6ce5-787a-4299-a637-cc1b86b371d4_1448x1086.png 424w, https://substackcdn.com/image/fetch/$s_!3rEL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda2b6ce5-787a-4299-a637-cc1b86b371d4_1448x1086.png 848w, https://substackcdn.com/image/fetch/$s_!3rEL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda2b6ce5-787a-4299-a637-cc1b86b371d4_1448x1086.png 1272w, https://substackcdn.com/image/fetch/$s_!3rEL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda2b6ce5-787a-4299-a637-cc1b86b371d4_1448x1086.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3rEL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda2b6ce5-787a-4299-a637-cc1b86b371d4_1448x1086.png" width="1448" height="1086" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/da2b6ce5-787a-4299-a637-cc1b86b371d4_1448x1086.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1086,&quot;width&quot;:1448,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:450568,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/214463350?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda2b6ce5-787a-4299-a637-cc1b86b371d4_1448x1086.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3rEL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda2b6ce5-787a-4299-a637-cc1b86b371d4_1448x1086.png 424w, https://substackcdn.com/image/fetch/$s_!3rEL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda2b6ce5-787a-4299-a637-cc1b86b371d4_1448x1086.png 848w, https://substackcdn.com/image/fetch/$s_!3rEL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda2b6ce5-787a-4299-a637-cc1b86b371d4_1448x1086.png 1272w, https://substackcdn.com/image/fetch/$s_!3rEL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda2b6ce5-787a-4299-a637-cc1b86b371d4_1448x1086.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Open source and product thinking build better systems.</figcaption></figure></div><p><span>I think companies could benefit from adopting more of this mindset internally: creating an environment where engineers feel comfortable challenging ideas regardless of who proposed them, and where technical decisions are driven primarily by evidence, reasoning, and long-term impact rather than hierarchy.</span></p><p><span>At the same time, commercial product development has taught me lessons that open source projects can benefit from as well. One of the biggest is prioritization. There are always many technically interesting problems to solve, but engineering resources are finite. Building a commercial product forces you to ask which problems matter most to users and whether solving them will materially improve their experience.</span></p><p><span>Another lesson is the importance of usability. Open source infrastructure can sometimes be designed primarily by experts for experts. Commercial products tend to put much more pressure on simplifying workflows, providing good defaults, improving observability, and reducing the amount of specialized knowledge required to use and operate the system. </span><strong><span>A feature is not successful simply because it is technically sophisticated; users also need to be able to discover it, understand it, and operate it reliably.</span></strong></p><div><hr></div><blockquote><p><em>Many engineering teams today are evaluating AI-assisted development. Which parts of building distributed data systems do you believe AI will meaningfully accelerate, and which areas will continue to depend primarily on engineering judgment?</em></p></blockquote><p><span>One distinction I think is important is the difference between deciding what to build and figuring out how to build it.</span></p><p><span>AI is already becoming very effective at the &#8220;how.&#8221; It can accelerate implementation by generating code, writing tests, exploring unfamiliar codebases, improving documentation, and suggesting alternative implementations. I expect these capabilities to continue improving, especially for work that is time-consuming or relatively mechanical.</span></p><p><span>Another area where I think AI can have an enormous impact is production incident response. Distributed systems generate large amounts of operational data&#8212;logs, metrics, traces, alerts, configuration changes, and deployment history&#8212;and correlating all of that information during an incident can be slow and difficult. AI is well suited to quickly sift through this data, identify anomalies, narrow down likely root causes, correlate symptoms across components, and suggest potential remediations. This has the potential to significantly reduce debugging and root-cause analysis time, and ultimately shorten mean time to recovery.</span></p><p><span>Where human judgment remains especially important is deciding which problems are worth solving in the first place. That requires understanding users, real-world use cases, business priorities, system constraints, and where the technology should evolve over time. In distributed systems, there is rarely a single objectively correct design. Engineers must make tradeoffs among latency, throughput, cost, consistency, availability, usability, and operational complexity, and those decisions depend heavily on context.</span></p><p><span>AI can certainly assist with that process by exploring alternatives, challenging assumptions, and surfacing tradeoffs. But ultimately, people still need to decide which problems matter and which tradeoffs are acceptable. AI can increasingly help us determine how to build something&#8212;and even how to diagnose and remediate it when it fails&#8212;but </span><strong><span>deciding whether it is the right thing to build remains fundamentally a human decision.</span></strong></p><p><span>So I see AI as a powerful force multiplier for engineers. It can accelerate both software development and production operations, allowing engineers to spend more time on the higher-level questions: What problem are we trying to solve? Is it worth solving? What guarantees should the system provide? And which tradeoffs are we willing to make?</span></p><div><hr></div><blockquote><p><em>Looking back at your career from Yahoo to Citadel to startups, Splunk, and Databricks, which transition taught you the most, and changed the way you think about engineering?</em></p></blockquote><p><span>I think two transitions taught me complementary lessons: working at a startup taught me how to own a product end to end, while my experience at Databricks taught me what it takes to scale a product and the organization around it.</span></p><p><span>At a startup, you have to wear many hats. There may not be dedicated product managers, technical writers, support engineers, or operations teams for everything you are building, so engineers often take on parts of those roles themselves. You talk directly to users to understand their problems, help define what should be built, design and implement the solution, write documentation, operate it in production, and support customers when something goes wrong.</span></p><p><span>That experience gave me a much broader perspective on engineering. I learned to think about a product across its entire lifecycle rather than focusing only on implementation. Writing good code is just one part of building a successful product. You also have to understand whether you are solving the right problem, whether users can understand and adopt the solution, how it will behave in production, and how it will be supported over time. That sense of end-to-end ownership was one of the most valuable lessons of my startup experience.</span></p><p><span>Databricks complemented that experience by teaching me what it takes to operate at a much larger scale. As the number and diversity of customers grow, approaches that work for a small user base no longer work. I gained experience not only in scaling the technology itself, but also in scaling product adoption, engineering teams, customer support, and go-to-market efforts. I also learned how to leverage a much larger organization&#8212;across engineering, product, support, and field teams&#8212;to scale a product far beyond what any individual team could do on its own.</span></p><p><span>So the startup experience taught me how to think broadly and own a product from beginning to end, while Databricks taught me how to take that same product mindset and scale it. Together, those experiences changed how I think about engineering: it is not just about designing and implementing a system, but about the entire journey from identifying the right problem to building, operating, supporting, and ultimately scaling the solution.</span></p><div><hr></div><h3>Key Takeaways</h3><ul><li><p>Streaming is becoming less specialized and more unified.<span> The direction is toward using familiar abstractions like SQL and tables across batch, incremental, and low-latency workloads.</span></p></li><li><p>Usability is the next frontier for streaming. A system is only as good as people&#8217;s ability to use and run it. Usability and operability are the tradeoffs engineers underestimate most: hiding streaming complexity behind familiar interfaces, and keeping systems reliable through upgrades, failures, and scaling.</p></li><li><p>The hardest engineering problems are often about tradeoffs, not raw performance.<span> Latency, cost, reliability, correctness, and operability all have to be balanced together.</span></p></li><li><p>Strong core platforms usually beat fragmented specialized stacks<strong>.</strong><span> Extending a battle-tested system can reduce duplicated complexity around reliability, operations, and user experience.</span></p></li><li><p>Correctness is an end-to-end property, not something a streaming engine can guarantee on its own.<span> Sources, sinks, retries, external side effects, and application logic all shape the actual semantics of the pipeline.</span></p></li></ul><div><hr></div><h3>Community poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:1165889}" data-component-name="PollToDOM"></div><div><hr></div><h3>&#128172; How to stay connected</h3><ul><li><p><a href="https://www.linkedin.com/in/boyang-jerry-peng/">LinkedIn</a></p></li></ul><div><hr></div><h3>&#8505;&#65039; About Data Engineer Things</h3><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Data Pulse Edition (September 2026)]]></title><description><![CDATA[OpenAI's playbook for cheaper agent loops, Stripe's self-healing database fleet, Shopify's AI security harness, Apache Ossie's push for a semantic standard and more.]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-f15</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-f15</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 22 Sep 2026 15:01:18 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Uh4U!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa68837b-c778-4755-b17e-8d6f893faeef_975x700.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_!Uh4U!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa68837b-c778-4755-b17e-8d6f893faeef_975x700.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Uh4U!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa68837b-c778-4755-b17e-8d6f893faeef_975x700.png 424w, https://substackcdn.com/image/fetch/$s_!Uh4U!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa68837b-c778-4755-b17e-8d6f893faeef_975x700.png 848w, https://substackcdn.com/image/fetch/$s_!Uh4U!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa68837b-c778-4755-b17e-8d6f893faeef_975x700.png 1272w, https://substackcdn.com/image/fetch/$s_!Uh4U!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa68837b-c778-4755-b17e-8d6f893faeef_975x700.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Uh4U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa68837b-c778-4755-b17e-8d6f893faeef_975x700.png" width="975" height="700" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fa68837b-c778-4755-b17e-8d6f893faeef_975x700.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:700,&quot;width&quot;:975,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:163008,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/215366470?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa68837b-c778-4755-b17e-8d6f893faeef_975x700.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Uh4U!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa68837b-c778-4755-b17e-8d6f893faeef_975x700.png 424w, https://substackcdn.com/image/fetch/$s_!Uh4U!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa68837b-c778-4755-b17e-8d6f893faeef_975x700.png 848w, https://substackcdn.com/image/fetch/$s_!Uh4U!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa68837b-c778-4755-b17e-8d6f893faeef_975x700.png 1272w, https://substackcdn.com/image/fetch/$s_!Uh4U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa68837b-c778-4755-b17e-8d6f893faeef_975x700.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p style="text-align: justify;">Hey again, dear reader,</p><p style="text-align: justify;"><span>Recently, &#8220;</span><strong><span>Your AI Slop Bores Me</span></strong><span>&#8221; meme series has been doing rounds, unmissable. And that kid on the Pepsi stack throne unamused is the one image response to shut down any AI heavy content online.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hQzC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F466da552-56fd-4557-89d5-9123d811815a_448x446.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hQzC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F466da552-56fd-4557-89d5-9123d811815a_448x446.jpeg 424w, https://substackcdn.com/image/fetch/$s_!hQzC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F466da552-56fd-4557-89d5-9123d811815a_448x446.jpeg 848w, https://substackcdn.com/image/fetch/$s_!hQzC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F466da552-56fd-4557-89d5-9123d811815a_448x446.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!hQzC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F466da552-56fd-4557-89d5-9123d811815a_448x446.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hQzC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F466da552-56fd-4557-89d5-9123d811815a_448x446.jpeg" width="448" height="446" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/466da552-56fd-4557-89d5-9123d811815a_448x446.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:446,&quot;width&quot;:448,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;AI poorly remade the main image used to mock AI slop.&quot;,&quot;title&quot;:&quot;AI poorly remade the main image used to mock AI slop.&quot;,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI poorly remade the main image used to mock AI slop." title="AI poorly remade the main image used to mock AI slop." srcset="https://substackcdn.com/image/fetch/$s_!hQzC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F466da552-56fd-4557-89d5-9123d811815a_448x446.jpeg 424w, https://substackcdn.com/image/fetch/$s_!hQzC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F466da552-56fd-4557-89d5-9123d811815a_448x446.jpeg 848w, https://substackcdn.com/image/fetch/$s_!hQzC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F466da552-56fd-4557-89d5-9123d811815a_448x446.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!hQzC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F466da552-56fd-4557-89d5-9123d811815a_448x446.jpeg 1456w" sizes="100vw"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p style="text-align: justify;"><span>There is no doubt GenAI is a force multiplier, we all get more things done with less time and resource needs than before. But it is also silently training us to look away when something sounds &#8220;generated&#8221; and not written. And that kid on the throne is who we quietly are turning into, even if the content is worth a 10 minute read.</span></p><p style="text-align: justify;"><span>To address that attention hazard, we&#8217;re revamping our Data Pulse newsletter by introducing a mix of a podcast, a video and quick one-liners to give the best version of a story. Because our goal remains the same in the world of &#8220;generated AI content&#8221;: bring what&#8217;s genuinely worth your time, structured in a format that&#8217;s easier for you to consume.</span></p><p style="text-align: justify;"><span>So, here&#8217;s a carefully hand-picked list of what stood out to us this month in the data space and AI space. Gear up, dive in, let us know in the community polls or the comments if that inner kid on the Pepsi throne would still approve.</span></p><p>&#8211; Chozhan</p><div><hr></div><h3><strong>&#129716; What&#8217;s New with DET</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!G_OI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c663d8-0a3a-493d-8828-4a2eda411b45_1672x941.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!G_OI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c663d8-0a3a-493d-8828-4a2eda411b45_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!G_OI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c663d8-0a3a-493d-8828-4a2eda411b45_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!G_OI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c663d8-0a3a-493d-8828-4a2eda411b45_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!G_OI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c663d8-0a3a-493d-8828-4a2eda411b45_1672x941.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!G_OI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c663d8-0a3a-493d-8828-4a2eda411b45_1672x941.png" width="599" height="336.9375" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b4c663d8-0a3a-493d-8828-4a2eda411b45_1672x941.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:599,&quot;bytes&quot;:1717223,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/215366470?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c663d8-0a3a-493d-8828-4a2eda411b45_1672x941.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!G_OI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c663d8-0a3a-493d-8828-4a2eda411b45_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!G_OI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c663d8-0a3a-493d-8828-4a2eda411b45_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!G_OI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c663d8-0a3a-493d-8828-4a2eda411b45_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!G_OI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c663d8-0a3a-493d-8828-4a2eda411b45_1672x941.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Introducing the <strong><a href="https://dataaileadership.com/?utm_source=newsletter_0922">Data Engineering + AI Leadership Summit 2026</a></strong>, a new community event organized by DET. We are bringing together senior data and AI practitioners and leaders for candid discussions on challenges faced by modern organizations.</p><ul><li><p>&#128467;&#65039; When: 1:00&#8211;6:00 PM on Monday, November 2, 2026</p></li><li><p>&#128205; Where: Convene 100 Stockton, San Francisco</p></li><li><p>&#127903;&#65039; Apply to attend <strong><a href="https://luma.com/deals2026?utm_source=newsletter_0922">HERE</a></strong>. Early-bird registration ends September 25.</p></li></ul><p>Upcoming DET Meetup events:</p><ul><li><p><span>Seattle Meetup @ AWS on Thursday, Sept 24: </span><a href="https://luma.com/e3bv3lop"><span>RSVP</span></a></p></li><li><p><span>Bay Area Meetup @ LinkedIn on Thursday, Sept 24: </span><a href="https://luma.com/det-dr9b"><span>RSVP</span></a></p></li><li><p><span>Toronto Meetup @ Shopify on </span>Thursday, Oct 29: <a href="https://luma.com/gfqf7h0v">RSVP</a></p></li></ul><div><hr></div><h3><strong>&#11088;&#65039; Reverie: The Summit for AI Builders</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nmGT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F291d3d74-695f-4acd-b9a6-74b73884b0a0_2400x1256.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nmGT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F291d3d74-695f-4acd-b9a6-74b73884b0a0_2400x1256.png 424w, https://substackcdn.com/image/fetch/$s_!nmGT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F291d3d74-695f-4acd-b9a6-74b73884b0a0_2400x1256.png 848w, https://substackcdn.com/image/fetch/$s_!nmGT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F291d3d74-695f-4acd-b9a6-74b73884b0a0_2400x1256.png 1272w, https://substackcdn.com/image/fetch/$s_!nmGT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F291d3d74-695f-4acd-b9a6-74b73884b0a0_2400x1256.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nmGT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F291d3d74-695f-4acd-b9a6-74b73884b0a0_2400x1256.png" width="601" height="314.53434065934067" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/291d3d74-695f-4acd-b9a6-74b73884b0a0_2400x1256.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:762,&quot;width&quot;:1456,&quot;resizeWidth&quot;:601,&quot;bytes&quot;:2577907,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/215366470?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F291d3d74-695f-4acd-b9a6-74b73884b0a0_2400x1256.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!nmGT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F291d3d74-695f-4acd-b9a6-74b73884b0a0_2400x1256.png 424w, https://substackcdn.com/image/fetch/$s_!nmGT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F291d3d74-695f-4acd-b9a6-74b73884b0a0_2400x1256.png 848w, https://substackcdn.com/image/fetch/$s_!nmGT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F291d3d74-695f-4acd-b9a6-74b73884b0a0_2400x1256.png 1272w, https://substackcdn.com/image/fetch/$s_!nmGT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F291d3d74-695f-4acd-b9a6-74b73884b0a0_2400x1256.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Reverie is a one-day summit on the data infrastructure powering frontier AI. Join us in San Francisco on November 5 as the teams behind the largest multimodal training runs share an inside look at their systems and the lessons they learned along the way.</p><p><span>&#128073;&#127996; </span>Apply to attend <strong><a href="https://www.reveriesummit.com/?utm_medium=paid&amp;utm_source=DET&amp;utm_campaign=reverie-2026&amp;discountCode=DET50">HERE</a></strong>. <span>DET members get 50% off with code </span><strong>DET50</strong>! </p><p><em>(This message is sponsored by LanceDB)</em></p><div><hr></div><h3><strong>&#128214; Featured Read</strong></h3><h3><a href="https://blog.bytebytego.com/p/how-chatgpt-optimizes-its-agent-loop">How ChatGPT Optimizes its Agent Loop: Harness, API, and Inference</a></h3><p><strong>ByteByteGo</strong> - <em>(article, ~10 min read)</em></p><p><strong>Summary:</strong> ByteByteGo sat down with the OpenAI engineers behind Codex and ChatGPT Work to unpack why &#8220;cost per successful task,&#8221; not just capability, is the metric frontier labs are now optimizing for. They break an agentic request into three layers:</p><ul><li><p><strong>harness</strong>: assembles context, runs the tool-call loop, executes under approval policies)</p></li></ul><ul><li><p><strong>API layer</strong>: auth, tokenization, safety checks)</p></li><li><p><strong>inference</strong>: GPU fleet actually running the model)</p></li></ul><p>and walk through what happens, layer by layer, every time an agent loops.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!J3g1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158d3539-3017-4180-bc09-f4762d30eafe_3726x4503.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!J3g1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158d3539-3017-4180-bc09-f4762d30eafe_3726x4503.png 424w, https://substackcdn.com/image/fetch/$s_!J3g1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158d3539-3017-4180-bc09-f4762d30eafe_3726x4503.png 848w, https://substackcdn.com/image/fetch/$s_!J3g1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158d3539-3017-4180-bc09-f4762d30eafe_3726x4503.png 1272w, https://substackcdn.com/image/fetch/$s_!J3g1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158d3539-3017-4180-bc09-f4762d30eafe_3726x4503.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!J3g1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158d3539-3017-4180-bc09-f4762d30eafe_3726x4503.png" width="1456" height="1760" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/158d3539-3017-4180-bc09-f4762d30eafe_3726x4503.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1760,&quot;width&quot;:1456,&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;:true,&quot;topImage&quot;:false,&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_!J3g1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158d3539-3017-4180-bc09-f4762d30eafe_3726x4503.png 424w, https://substackcdn.com/image/fetch/$s_!J3g1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158d3539-3017-4180-bc09-f4762d30eafe_3726x4503.png 848w, https://substackcdn.com/image/fetch/$s_!J3g1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158d3539-3017-4180-bc09-f4762d30eafe_3726x4503.png 1272w, https://substackcdn.com/image/fetch/$s_!J3g1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158d3539-3017-4180-bc09-f4762d30eafe_3726x4503.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://blog.bytebytego.com/p/how-chatgpt-optimizes-its-agent-loop">source</a></figcaption></figure></div><p>The techniques are the interesting part: replacing per-call HTTPS requests with a single persistent WebSocket so the harness stops re-sending the entire conversation history on every tool call; keeping prompt prefixes byte-for-byte stable so prompt caching doesn&#8217;t silently break (their example: a hash map serializing tool definitions in a different order each time, quietly making every call more expensive); &#8220;deferred tool discovery,&#8221; where instead of stuffing hundreds of tool schemas into context, the agent gets a search tool and pulls in only what it needs; and &#8220;Code Mode,&#8221; where the model writes a small script to batch several tool calls instead of paying for a full model round-trip per call.</p><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>The harness is just orchestration with a new name.</strong> Deciding what context enters a run, executing under guardrails, appending results, looping until done, swap &#8220;agent&#8221; for &#8220;DAG&#8221; and this is a pipeline-design problem we already know.</p></li><li><p><strong>Deferred tool discovery maps directly onto anything you build over your own catalog or warehouse.</strong> Don&#8217;t load every table schema into an agent&#8217;s context up front. Instead index it and let the agent search, the same way you&#8217;d avoid a <code>SELECT *</code> on a wide table.</p></li><li><p><strong>Stable prompt prefixes are cache design in a new outfit.</strong> If you&#8217;ve debugged why a &#8220;identical&#8221; query wasn&#8217;t hitting your warehouse&#8217;s result cache, this will feel familiar.</p></li><li><p><strong>Optimize end to end, not one favorite layer is a lesson our field learns over and over</strong>, in query tuning, in pipeline cost control, and now here.</p></li></ul><p>Read the full article <a href="https://blog.bytebytego.com/p/how-chatgpt-optimizes-its-agent-loop">here</a> &#128072;&#127996;</p><div><hr></div><h3>&#128221;<strong> Data Bites </strong></h3><p><em>(The leading icon indicates the Data Bite format:</em> &#128196; <em>article</em> . &#127911; <em>audio</em> . &#127909; <em>video)</em></p><ul><li><p><strong>&#128196; <a href="https://stripe.dev/blog/how-stripe-uses-graph-search-and-state-machines-to-auto-remediate-a-global-database-fleet">Stripe modeled its entire MongoDB fleet as a traversable graph</a></strong> and now uses pathfinding algorithms to compute and execute recovery plans automatically, cutting pager volume 30% (~200 pages/year) and eliminating 12 days of unhealthy shard states annually. </p></li><li><p><strong>&#128196; <a href="https://shopify.engineering/building-an-agentic-harness-that-outlasts-the-model">Shopify pointed an agentic security harness at one of the largest Rails monoliths in the world</a></strong> and learned that the bottlenecks are partitioning, test oracles, and cross-model verification but not the models. Six weeks in: 300+ findings, an estimated $400K+ in equivalent bug bounty value. </p></li><li><p><strong>&#127911; <a href="https://www.dataengineeringpodcast.com/episodepage/building-the-context-flywheel-for-ai-data-agents">Building the Context Flywheel for AI Data Agents</a>:</strong> Prukalpa Sankar, co-founder of Atlan, describes that model intelligence alone doesn&#8217;t make an agent useful in production, what actually moves the needle is <em>contextual</em> intelligence. Grab your headphones and immerse yourself in this podcast episode from <a href="https://www.dataengineeringpodcast.com/">Data Engineering Podcast</a> by Tobias Macey. </p></li><li><p><strong>&#128196; <a href="https://blog.dataengineerthings.org/investigating-spark-waste-across-the-stack-188aa622e12a">Roy Daniel and Ohad Raviv make the case that Spark utilization metrics alone may not be sufficient</a>. </strong>From "healthy" 76% memory usage masking orphaned vCores, to a 47-hour KNN pipeline traced to one line generating 13 billion throwaway records. They share four real production cases where fixing the actual bottleneck (not just adding resources) cut runtime 24&#8211;95%.</p></li><li><p><strong>&#128196; <a href="https://www.getdbt.com/blog/why-agentics-projects-fail-and-how-to-fix-them">dbt Labs breaks down why some agentic AI rollouts 10x a team</a></strong> (C.H. Robinson: 5,500 shipping orders/day, automated) <strong>while others become cautionary tales</strong> (Klarna) and the deciding factor is almost always whether the data can be trusted. </p></li><li><p><strong>&#128196; <a href="https://www.dataengineeringweekly.com/p/an-ontology-for-ai-agents-is-a-system">Data Engineering Weekly untangles the ontology vs. semantic layer vs. knowledge graph confusion</a></strong> that&#8217;s been building all year, and makes the case that an &#8220;ontology for agents&#8221; is a two-loop system that has to keep running instead of something that get published once. </p></li></ul><div><hr></div><h3><strong>&#128514; Meme Corner</strong></h3><p>Love a good meme? We do too!</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SCtP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5b9b44f-b932-4ff4-97f4-8bdc132731e9_2000x2300.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SCtP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5b9b44f-b932-4ff4-97f4-8bdc132731e9_2000x2300.png 424w, https://substackcdn.com/image/fetch/$s_!SCtP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5b9b44f-b932-4ff4-97f4-8bdc132731e9_2000x2300.png 848w, https://substackcdn.com/image/fetch/$s_!SCtP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5b9b44f-b932-4ff4-97f4-8bdc132731e9_2000x2300.png 1272w, https://substackcdn.com/image/fetch/$s_!SCtP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5b9b44f-b932-4ff4-97f4-8bdc132731e9_2000x2300.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SCtP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5b9b44f-b932-4ff4-97f4-8bdc132731e9_2000x2300.png" width="432" height="496.68131868131866" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c5b9b44f-b932-4ff4-97f4-8bdc132731e9_2000x2300.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1674,&quot;width&quot;:1456,&quot;resizeWidth&quot;:432,&quot;bytes&quot;:1273794,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/215366470?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5b9b44f-b932-4ff4-97f4-8bdc132731e9_2000x2300.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!SCtP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5b9b44f-b932-4ff4-97f4-8bdc132731e9_2000x2300.png 424w, https://substackcdn.com/image/fetch/$s_!SCtP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5b9b44f-b932-4ff4-97f4-8bdc132731e9_2000x2300.png 848w, https://substackcdn.com/image/fetch/$s_!SCtP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5b9b44f-b932-4ff4-97f4-8bdc132731e9_2000x2300.png 1272w, https://substackcdn.com/image/fetch/$s_!SCtP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5b9b44f-b932-4ff4-97f4-8bdc132731e9_2000x2300.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>That's one of the memes my memory recalls almost everyday in the recent times. I'm guessing it's quite relatable to y'all too.</p><div><hr></div><h3>&#128142; <strong>Open Source Gem </strong></h3><h3><a href="https://ossie.apache.org/">Apache Ossie (Incubating)</a></h3><p>You may know this project by its earlier name, <strong>Open Semantic Interchange (OSI)</strong>. In June 2026 it entered the Apache Incubator as <strong>Apache Ossie</strong>, with its v0.1 spec already live under Apache 2.0 since January. The pitch is simple yet ambitious: a vendor-neutral, YAML-based standard for defining metrics, dimensions, relationships, and joins once so the warehouse, the BI tool, and every AI agent querying data all work from the same definition of &#8220;Monthly Active Users&#8221; instead of five slightly different ones.</p><p>The backing list has grown fast including Databricks, ThoughtSpot, Collibra, AtScale, Atlan, DataHub, and Domo notably pulling in direct competitors and tends to be the real signal that a standard is being taken seriously.</p><p>2 key aspects make this more Data Engineering relevant:</p><ul><li><p>This is the connective tissue behind the theme: <strong>whose definition of a metric does an agent trust?</strong></p></li><li><p><strong>Governance is the actual product here, not the code.</strong> </p></li></ul><p>&#128073; <strong>GitHub:</strong> <a href="https://github.com/apache/ossie">https://github.com/apache/ossie</a></p><div><hr></div><h3><strong>&#128161; DE Tip of the Month </strong></h3><h3>Build a Dry-Run Mode Before You Let Agents Touch Production</h3><p>More teams are preparing to or already handing agents write access to pipelines, warehouses, and orchestration tools, often before there&#8217;s a way to see the blast radius of what the agent is about to do. So, before you do so for your next agent, try this:</p><p><strong>Rule(s) of thumb:</strong></p><ul><li><p><strong>Add a </strong><code>--dry-run</code><strong> / plan mode to any job an agent can trigger</strong>, that shows what would change, like the rows affected, tables touched, estimated cost, etc before it executes.</p></li><li><p><strong>Log the diff, not just the action.</strong> With agents taking over, &#8220;job succeeded&#8221; alerts/logs are no longer enough. So, include &#8220;what would this run add, remove, or overwrite compared to current state&#8221;.</p></li><li><p><strong>Separate &#8220;propose intent&#8221; from &#8220;execute.&#8221;</strong> This mirrors Stripe&#8217;s compute-a-plan-then-execute-it pattern from this month&#8217;s Data Bites, and dbt&#8217;s tiered-autonomy approach: read-only &#8594; drafting &#8594; bounded, narrow write access, with irreversible actions kept out of autonomous reach entirely.</p></li><li><p><strong>Treat the dry-run output as a contract.</strong> No write action should be allowed to run without first producing (and ideally, having someone or something review) its own preview.</p></li></ul><p>We all know, a pipeline that fails loudly is quite annoying but succeeds confidently with a quality issue is far worse. Same way, the agent that succeeds quietly at doing the wrong thing to production data is much worse.</p><div><hr></div><h3>&#128202; Community Poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:1213252}" data-component-name="PollToDOM"></div><p>Until the next one.</p><p><a href="https://www.linkedin.com/in/chozhan-d-m/">Chozhan</a>, <a href="https://www.linkedin.com/in/srivigneshkn/">Sri</a><span> &amp;</span><a href="https://www.linkedin.com/in/anandaganesh/">Ananda</a></p><div><hr></div><h4>&#8505;&#65039; About Data Engineer Things</h4><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Community Spotlight Edition (September 2026)]]></title><description><![CDATA[On changing historical data, safe automation, and why accountability still belongs to people.]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-202</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-202</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 08 Sep 2026 15:00:23 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jy0O!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.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_!jy0O!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jy0O!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!jy0O!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!jy0O!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!jy0O!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jy0O!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:266914,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/209570590?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jy0O!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!jy0O!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!jy0O!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!jy0O!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F310653dc-a374-4272-99b3-d987cd0e33b4_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hi everyone,</p><p><span>For this month&#8217;s Community Spotlight, we&#8217;re talking with Himanshi Manglunia, a Senior Data Engineer at Amazon Web Services (AWS).</span></p><p>Himanshi has spent nearly a decade building data systems across financial services, recruiting analytics, and cloud technology. At AWS, she works on the data and MLOps foundations behind marketing attribution, forecasting, and investment optimization, helping teams turn complex signals into numbers leaders can trust and act on.</p><p>Some of you may recognize Himanshi from Data Engineering Open Forum 2026, where she shared how she built an AI agent that can make ETL changes, run and monitor pipelines, recover from failures, and open a code review. She also joined us as a speaker at the DET Seattle meetup on July 16.</p><p>In this conversation, Himanshi shares how her thinking about data engineering has evolved, from building pipelines to making sure the numbers behind important decisions are actually trustworthy. We also discuss why a green pipeline can still be wrong, how teams should handle changing historical data, and what it takes to use AI agents safely in production.</p><p>Let&#8217;s get into the conversation.</p><p>- Swetha, Shubham, &amp; Sugandhi</p><div><hr></div><h3><span>&#128467; DET Meetups in NYC, Seattle, and Bay Area</span></h3><p>We have three meetup events coming up this month:</p><ul><li><p><strong><span>NYC</span></strong><span> meetup at Capital One on Thu, Sep 17 (</span><strong><a href="https://luma.com/xf3wghdh">RSVP</a></strong><span>)</span></p></li><li><p><strong><span>Seattle</span></strong><span> meetup at AWS on Thu, Sep 24 (</span><strong><a href="https://luma.com/e3bv3lop">RSVP</a></strong><span>)</span></p></li><li><p><strong>Bay Area</strong> meetup at LinkedIn on Thu, Sep 24 (<strong><a href="https://luma.com/det-dr9b?tk=7mLwcF">RSVP</a></strong>)</p></li></ul><p><em><span>(&#127908; Interested in speaking at our meetups or online webinars? Submit talk proposals </span><a href="http://meetup.dataengineerthings.org/cfp">here</a><span>.)</span></em></p><div><hr></div><h3>&#128161; Rows and Columns Summit - San Francisco - Sept 22</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zjuU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19c4799b-fba5-4870-b32c-8aebe0ae5e1e_1440x600.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zjuU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19c4799b-fba5-4870-b32c-8aebe0ae5e1e_1440x600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!zjuU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19c4799b-fba5-4870-b32c-8aebe0ae5e1e_1440x600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!zjuU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19c4799b-fba5-4870-b32c-8aebe0ae5e1e_1440x600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!zjuU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19c4799b-fba5-4870-b32c-8aebe0ae5e1e_1440x600.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zjuU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19c4799b-fba5-4870-b32c-8aebe0ae5e1e_1440x600.jpeg" width="1440" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/19c4799b-fba5-4870-b32c-8aebe0ae5e1e_1440x600.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:1440,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:554563,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/209570590?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19c4799b-fba5-4870-b32c-8aebe0ae5e1e_1440x600.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!zjuU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19c4799b-fba5-4870-b32c-8aebe0ae5e1e_1440x600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!zjuU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19c4799b-fba5-4870-b32c-8aebe0ae5e1e_1440x600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!zjuU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19c4799b-fba5-4870-b32c-8aebe0ae5e1e_1440x600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!zjuU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19c4799b-fba5-4870-b32c-8aebe0ae5e1e_1440x600.jpeg 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Rows &amp; Columns Summit is a practitioner-focused data infrastructure conference taking place September 22 in San Francisco, centered on the evolving relationship between OLTP and OLAP systems. The one-day program brings together engineers, researchers, and technology leaders to discuss real-world architectures and tradeoffs around real-time analytics, CDC, open table formats, and AI-driven data systems. </p><p>Team DET will also be there to host networking sessions! Drop by and say hi! </p><p>&#128073;&#127996; <strong><a href="https://rowsandcolumnssummit.com/">RSVP</a></strong> (Free admission).</p><p><em>(This message is sponsored by ClickHouse.)</em></p><div><hr></div><h3>Spotlight: Himanshi Manglunia</h3><div class="pullquote"><p style="text-align: justify;">&#8220;The agent was the easy 20 percent. The 80 percent that makes it usable in production is the context and the guardrails around it.&#8221;</p></div><blockquote><p><em><span>Please introduce yourself briefly to the Data Engineer Things community and share what initially drew you to data engineering.</span></em></p></blockquote><p><span>I am a data engineer in the Data Science and Engineering organization at AWS Marketing Tech Platform. I own the data layer behind our attribution, forecasting, and investment-optimization products. In practice, that is the data that turns short-term signals into a revenue forecast and shows leaders the return on their marketing spend. Before this, I built the data foundation for a Talent Acquisition analytics org of Amazon global. Earlier in my career, I worked with financial data to build reporting datasets that feed into dashboards.</span></p><p><span>What drew me into this was one realization: I liked being able to see how my work influenced leadership decisions. In my early days, I was in it because I liked organizing messy data with simple SQL. Now I am increasingly drawn to how big decisions get made from data, and to seeing the big picture. In most orgs, the interesting decisions are based on a handful of numbers, and the data engineers own the correctness of those numbers down to the raw event. One grain choice, one metric-definition update, one dataset freshness SLA: each ripples into every dashboard and every model downstream. The work is sometimes unglamorous and demands an eye for detail, but it pays off when you see the impact it has.</span></p><div><hr></div><blockquote><p><em>You have built data systems across financial services, recruiting analytics, and now marketing attribution at AWS. How has moving across these domains changed your understanding of what makes a data platform successful?</em></p></blockquote><p><span>Today, I believe a data platform is only as successful as the trust its consumers place in the data without needing to re-transform it themselves. I did not start with that understanding. Early on, I thought success was a technical achievement: </span><strong><span>the right storage, the right compute, clean orchestration</span></strong><span>.</span></p><p><span>The hard problem turned out to be the same in every domain. In recruiting analytics, each line-of-business team had rebuilt its own pipelines. That meant data duplication and the same metric defined three different ways. In marketing, the same metric produced different totals depending on which team&#8217;s transformation you queried, because 3 different teams maintained their own logic. Different industries, identical problems: no single governed definition of the number.</span></p><p><span>So my definition of success changed. A successful platform is one where a consumer can pick up a number and use it, without asking the data engineer, &#8220;Is this the real one?&#8221; Getting there is mostly about correctness and governance, not compute. Any competent team can stand up the ETL and the pipelines. The hard part is agreeing on one definition of each number and holding every source to it. The tooling underneath is interchangeable. Agreeing on what each number means and getting every team to honor that definition is where the real work lives.</span></p><div><hr></div><blockquote><p><em>In your current role, you build data and MLOps pipelines for multi-touch attribution across online, offline, sales, campaign, and event interactions. What makes attribution particularly difficult as a data engineering problem, even before the modeling begins?</em></p></blockquote><p><span>The modeling in attribution is genuinely hard, and I do not want to understate it. What I want to emphasize here is that the model sits on top of an equally hard data engineering problem, and that problem has to be solved first. The model uses whatever the data layer passes into it as input. The engineering underneath has to be right before the modeling can produce any insights.</span></p><ul><li><p><strong><span>Identity resolution - </span></strong><span>Attribution&#8217;s whole premise is that you can join one person&#8217;s engagements to an outcome which is important to the business. Those engagements arrive across different channels like online, offline, sales, campaign, and event systems. They are logged differently in different systems (sometimes by humans), created at different times, and don&#8217;t share a common identifier. Stitching them all together and getting the identity graph right is difficult and very important.</span></p></li><li><p><strong><span>History does not hold still - </span></strong><span>Attribution numbers legitimately change as time progresses. Late-arriving data, compliance-related mapping deletions, and backfills, all move attribution numbers. So you are not building a pipeline that houses facts. You are building one that recomputes history and can explain why the past moved. The data modeling literature barely mentions this kind of state-management</span>.</p></li></ul><div><hr></div><blockquote><p><em>You mentioned that history does not hold still. Why do you think the industry still underestimates the trust problem created when historical numbers change?</em></p></blockquote><p><span>Historical data is not stable, and almost nobody owns communicating when it moves. We talk about pipeline reliability, schema evolution, and cost. We barely talk about a fact that is normal in real systems: the number you reported last month is legitimately different today. Late-arriving data, backfills, and reprocessing all rewrite the past, and they are supposed to. That is correct behavior. It also quietly destroys trust. A stakeholder who saw one number in a review and a different number a month later does not even understand that &#8220;a backfill happened.&#8221; They think the data is broken. Worse, they question the decision they already made based on the older number.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!htNi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbbe46f4-f0f0-4307-b5c0-97423e94f351_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!htNi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbbe46f4-f0f0-4307-b5c0-97423e94f351_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!htNi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbbe46f4-f0f0-4307-b5c0-97423e94f351_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!htNi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbbe46f4-f0f0-4307-b5c0-97423e94f351_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!htNi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbbe46f4-f0f0-4307-b5c0-97423e94f351_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!htNi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbbe46f4-f0f0-4307-b5c0-97423e94f351_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fbbe46f4-f0f0-4307-b5c0-97423e94f351_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1390739,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/209570590?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbbe46f4-f0f0-4307-b5c0-97423e94f351_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!htNi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbbe46f4-f0f0-4307-b5c0-97423e94f351_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!htNi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbbe46f4-f0f0-4307-b5c0-97423e94f351_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!htNi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbbe46f4-f0f0-4307-b5c0-97423e94f351_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!htNi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbbe46f4-f0f0-4307-b5c0-97423e94f351_1536x1024.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">When History Moves</figcaption></figure></div><p><span>The industry treats this as an edge case. In any system that recomputes history, whether that is attribution, forecasting, financial restatements, or a machine-learning feature store, it is the normal case. I built the muscle for it out of necessity: an announcement log for data-change management, an automated impact analysis that runs with every backfill and explains exactly what moved and why, before-and-after comparisons on every change, and a stack of smaller mechanisms like these. None of it is glamorous. But the trust cost of unexplained change is higher than the trust cost of an outage, and we systematically underinvest in making a moving history legible. A related problem, and just as overlooked, is metric-definition drift: the same metric ends up meaning slightly different things across dashboards and teams, until two reports disagree and no one can say which is right. Both problems look technical on the surface, a matter of pipelines and logic. What actually breaks in both is trust</span>.</p><div><hr></div><blockquote><p><em>What&#8217;s a commonly accepted best practice in data engineering that you find yourself disagreeing with more as you&#8217;ve gained experience?</em></p></blockquote><p><span>The practice I have come to distrust the most is success-based pipeline monitoring: alert when a job fails and treat green as done. Green DAG, therefore right. Almost every operational dashboard and alerting setup I have seen encodes that assumption, and it is wrong often enough.</span></p><p><span>I found a configuration bug once during a routine post-run deep dive. Every task in the DAG was green and the orchestration looked healthy. Underneath, a scheduled write was silently failing, so a reporting table kept serving stale numbers, and a leadership review had already gone out on them. Nothing in the &#8220;did it run&#8221; layer could have caught it, because the pipeline did run. </span><strong><span>It produced the wrong result successfully.</span></strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Y80g!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff37b6a27-bf42-4aa8-a324-04ef9c933237_1491x1055.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Y80g!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff37b6a27-bf42-4aa8-a324-04ef9c933237_1491x1055.png 424w, https://substackcdn.com/image/fetch/$s_!Y80g!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff37b6a27-bf42-4aa8-a324-04ef9c933237_1491x1055.png 848w, https://substackcdn.com/image/fetch/$s_!Y80g!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff37b6a27-bf42-4aa8-a324-04ef9c933237_1491x1055.png 1272w, https://substackcdn.com/image/fetch/$s_!Y80g!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff37b6a27-bf42-4aa8-a324-04ef9c933237_1491x1055.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Y80g!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff37b6a27-bf42-4aa8-a324-04ef9c933237_1491x1055.png" width="1456" height="1030" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f37b6a27-bf42-4aa8-a324-04ef9c933237_1491x1055.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1030,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1069996,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/209570590?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff37b6a27-bf42-4aa8-a324-04ef9c933237_1491x1055.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Y80g!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff37b6a27-bf42-4aa8-a324-04ef9c933237_1491x1055.png 424w, https://substackcdn.com/image/fetch/$s_!Y80g!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff37b6a27-bf42-4aa8-a324-04ef9c933237_1491x1055.png 848w, https://substackcdn.com/image/fetch/$s_!Y80g!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff37b6a27-bf42-4aa8-a324-04ef9c933237_1491x1055.png 1272w, https://substackcdn.com/image/fetch/$s_!Y80g!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff37b6a27-bf42-4aa8-a324-04ef9c933237_1491x1055.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">When Green Still Means Wrong</figcaption></figure></div><p><span>Execution health and data correctness are two different questions. The industry conflates them because execution health is cheap to monitor and data correctness is expensive. &#8220;It ran&#8221; tells you the plumbing worked. It tells you nothing about whether the data is correct. The more experience I get over time, the more of my attention goes to validation against an independent expectation, reconciliation against a source of truth, and honest change tracking, and I trust a group of green tasks less. A pipeline that never fails but quietly drifts is worse than one that fails loudly. At least the failing one tells you</span> that something is wrong.</p><div><hr></div><blockquote><p><em>Data engineers are often asked to implement metrics or business logic after the key decisions have already been made. How can they get involved earlier and help determine whether the expected value justifies the engineering and maintenance cost?</em></p></blockquote><p>Bring the cost side of the equation to the table, quantified, before the decision is locked. Metrics usually get designed with no one in the room who can price the implementation. The data engineer is the only person who can say &#8220;this definition costs three weeks and a permanent maintenance tax, and here is the marginal value it buys.&#8221; Surfacing that cost is not blocking the work. It supplies the piece of information that was missing, because you cannot weigh what a metric is worth against what it costs if only the value side is in the room.</p><p>I try to make the tradeoff explicit with a number rather than an opinion. Instead of arguing that something is complex or low-value, I measure it: the days of effort, the maintenance churn, the infrastructure spend, against how much of the problem it actually solves. A single number ends a debate faster than any argument, and it often changes what the team decides to build or stop doing.</p><p>The habit that earns a data engineer the seat at the design table is putting cost and value side by side, early, in the same document the business owner uses to make the decision, not flagging the problem after the decision is made.</p><div><hr></div><blockquote><p><em><span>When there is no clearly correct architecture, how do you balance reliability, speed, cost, scalability, and simplicity? How has working across different domains changed the way you make those tradeoffs?</span></em></p></blockquote><div class="callout-block" data-callout="true"><p><span>I anchor on two questions. What is the blast radius if this number is wrong? How reversible is this choice? Those two answers usually collapse a &#8220;no clear winner&#8221; tradeoff into a clear one.</span></p></div><p><span>When the output feeds a decision whose impact builds over time, like an investment recommendation for a full planning year, I weight reliability and auditability above speed, and I choose the boring, verifiable design over the clever one, every time. When the output is exploratory, I trade some rigor for iteration speed. I only pay for scalability when the growth is real, not speculative. I treat simplicity as a forcing function, not as a fifth competing axis, because complexity is where correctness becomes difficult. Consolidating several divergent copies of a dataset into one governed source, or deleting a step that no longer earns its keep, improves reliability and cost at the same time. Simplicity is often not a tradeoff. It is the thing that resolves the others.</span></p><p><span>Working across domains sharpened this. In recruiting analytics, a wrong number was easy to correct and iteration speed mattered more, so I moved faster and cleaned up afterward. In marketing attribution, the numbers feed leadership investment decisions, so the cost of a wrong number compounds across the year, and correctness and explainability dominate. The data matters more here than the code. The framework did not change. What changed is that I now calibrate it to the consequence of being wrong, and I ask about that consequence first instead of last.</span></p><div><hr></div><h4>&#128161;Editorial Note: </h4><p><em>The next few questions build on Himanshi&#8217;s talk at DEOF 2026, where she shared how she used AI agents to automate parts of the data engineering workflow. We go a little deeper into what it takes to make those systems reliable and safe in production.</em></p><p><em>Watch the full talk here: </em></p><div id="youtube2-xwI6hP67ZAE" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;xwI6hP67ZAE&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/xwI6hP67ZAE?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><div><hr></div><blockquote><p><em><span>You emphasized that the AI model is only a small part of the solution and that the real product is the context layer. What information must that context layer contain for an agent to safely modify a production pipeline?</span></em></p></blockquote><p><span>The model is a commodity, there are a variety of them available now. Drop a capable agent into a data platform with no context, and it will write plausible code that confidently produces a wrong number. </span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SI-B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6fe49f1-b3b6-4634-aa60-a9e29a34af9c_1204x713.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SI-B!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6fe49f1-b3b6-4634-aa60-a9e29a34af9c_1204x713.png 424w, https://substackcdn.com/image/fetch/$s_!SI-B!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6fe49f1-b3b6-4634-aa60-a9e29a34af9c_1204x713.png 848w, https://substackcdn.com/image/fetch/$s_!SI-B!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6fe49f1-b3b6-4634-aa60-a9e29a34af9c_1204x713.png 1272w, https://substackcdn.com/image/fetch/$s_!SI-B!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6fe49f1-b3b6-4634-aa60-a9e29a34af9c_1204x713.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SI-B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6fe49f1-b3b6-4634-aa60-a9e29a34af9c_1204x713.png" width="1204" height="713" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d6fe49f1-b3b6-4634-aa60-a9e29a34af9c_1204x713.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:713,&quot;width&quot;:1204,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:561003,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/209570590?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6fe49f1-b3b6-4634-aa60-a9e29a34af9c_1204x713.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!SI-B!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6fe49f1-b3b6-4634-aa60-a9e29a34af9c_1204x713.png 424w, https://substackcdn.com/image/fetch/$s_!SI-B!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6fe49f1-b3b6-4634-aa60-a9e29a34af9c_1204x713.png 848w, https://substackcdn.com/image/fetch/$s_!SI-B!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6fe49f1-b3b6-4634-aa60-a9e29a34af9c_1204x713.png 1272w, https://substackcdn.com/image/fetch/$s_!SI-B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6fe49f1-b3b6-4634-aa60-a9e29a34af9c_1204x713.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Slide from Himanshi&#8217;s <a href="https://www.youtube.com/watch?v=xwI6hP67ZAE">DEOF 2026 talk</a></figcaption></figure></div><p><span>The context layer is what makes autonomy safe, and it has to carry at least five things.</span></p><ul><li><p><strong><span>Semantics</span></strong><span>. What each table, column, and metric actually means, plus the one canonical definition of each metric. This is why a centralized, version-controlled metric framework in a governed layer, rather than definitions scattered across dashboards, is gaining increasing importance.</span></p></li><li><p><strong><span>Lineage for blast radius.</span></strong><span> What is upstream, what is downstream, and what breaks if something changes. An agent must know that a change to one table will feed into three products and a leadership review before it edits anything.</span></p></li><li><p><strong><span>Validation expectations. </span></strong><span>What &#8220;correct&#8221; looks like, expressed as runnable checks: parity against a prior version, reconciliation targets, row-level expectations. An agent that can run the same validations a data engineer would run is an agent you can start to trust.</span></p></li><li><p><strong><span>Operational context. </span></strong><span>SLAs, backfill semantics, freshness cadence, and, above all, what decision the output feeds. &#8220;This number sets a budget target&#8221; and &#8220;this number is exploratory&#8221; demand different levels of caution, and validation thresholds must be set according to that.</span></p></li><li><p><strong><span>Guardrails. </span></strong><span>An explicit list of what the agent may not change without a human in the loop. Metric definitions and anything feeding a goal directly belong on that list.</span></p></li></ul><p><span>I built a working agent that reads a requirement, makes the ETL change, triggers the run, monitors it, self-heals on failure, and opens a code review. The agent was the easy 20 percent. The 80 percent that makes it usable in production is the context and the guardrails around it.</span></p><div><hr></div><blockquote><p><em><span>If AI agents begin handling routine enhancements, deployments, and first-level debugging, which parts of data engineering will become less valuable, and which skills will become more important for engineers who want to have an outsized impact</span>?</em></p></blockquote><p><strong><span>What becomes less valuable is the work already being automated:</span></strong></p><p><strong><span>&#8226; Routine build work. </span></strong><span>Column additions, boilerplate ETL, mechanical deployments. I took one class of routine change from about a day of work to a couple of hours, and I do not miss it.</span></p><p><strong><span>&#8226; First-level triage and validation.</span></strong><span> The repetitive &#8220;run it, read the error, retry&#8221; loop. Anyone whose value is mostly typing that kind of code is already feeling the ground shifting.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!v14B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cd6a63d-d376-4fd9-96a6-3b7a19884bc2_1386x1135.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!v14B!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cd6a63d-d376-4fd9-96a6-3b7a19884bc2_1386x1135.png 424w, https://substackcdn.com/image/fetch/$s_!v14B!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cd6a63d-d376-4fd9-96a6-3b7a19884bc2_1386x1135.png 848w, https://substackcdn.com/image/fetch/$s_!v14B!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cd6a63d-d376-4fd9-96a6-3b7a19884bc2_1386x1135.png 1272w, https://substackcdn.com/image/fetch/$s_!v14B!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cd6a63d-d376-4fd9-96a6-3b7a19884bc2_1386x1135.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!v14B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cd6a63d-d376-4fd9-96a6-3b7a19884bc2_1386x1135.png" width="1386" height="1135" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1cd6a63d-d376-4fd9-96a6-3b7a19884bc2_1386x1135.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1135,&quot;width&quot;:1386,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1240340,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/209570590?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cd6a63d-d376-4fd9-96a6-3b7a19884bc2_1386x1135.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!v14B!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cd6a63d-d376-4fd9-96a6-3b7a19884bc2_1386x1135.png 424w, https://substackcdn.com/image/fetch/$s_!v14B!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cd6a63d-d376-4fd9-96a6-3b7a19884bc2_1386x1135.png 848w, https://substackcdn.com/image/fetch/$s_!v14B!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cd6a63d-d376-4fd9-96a6-3b7a19884bc2_1386x1135.png 1272w, https://substackcdn.com/image/fetch/$s_!v14B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cd6a63d-d376-4fd9-96a6-3b7a19884bc2_1386x1135.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Manual vs Agentic Flows (<a href="https://www.youtube.com/watch?v=xwI6hP67ZAE">Source</a>)</figcaption></figure></div><p><strong><span>What becomes more valuable is judgment about correctness and problem definition:</span></strong></p><p><strong><span>&#8226; Translating an ambiguous business ask into a data model.</span></strong><span> Agents are good at building from a specification and bad at writing one. The skill of turning &#8220;we need to make these decisions&#8221; into defined, prioritized, deliverables at the right grain only grows in value.</span></p><p><strong><span>&#8226; Knowing what &#8220;right&#8221; means and producing that dataset continuously. </span></strong><span>When a metric swings between quarters, the useful move is to decompose the number into its parts, isolate which part broke, and prove it. Agents can accelerate that deep dive, but they still need a driver, because they have no sense of what right looks like.</span></p><p><strong><span>&#8226; Owning the data contracts and the context layer.</span></strong><span> Someone has to define the semantics, the lineage, the validation, and the guardrails that agents run inside. That work matters more every year, as leaders increasingly want to make decisions from data: what works, what does not, and how to steer toward a target.</span></p><p><span>The job moves from writing code to specifying requirements, verifying the agent&#8217;s work, and steering it in the right direction. The engineers with outsized impact will define what &#8220;correct&#8221; means and build the guardrails that keep agents producing it.</span></p><div><hr></div><blockquote><p><em><span>As pipelines become more autonomous, how should teams think about accountability when an agent-generated change produces technically valid output but leads to an incorrect business decision? Which decisions do you believe should remain firmly under human control, even if they could technically be automated?</span></em></p></blockquote><p><span>I have lived the non-agent version of this failure. A pipeline can be green, a model can retrain successfully, and every pre-defined check can pass, while the number is still wrong for the decision it feeds. Technically valid is not the same as correct enough to support a decision. An agent hits that gap faster and more confidently than a human, because it has no instinct that some parts of a metric feel off.</span></p><p><span>My view on accountability is that the human who owns the metric owns the outcome. Agents take actions, but they do not hold accountability. Every number an agent produces and puts into use still needs one specific person who is answerable for whether it is right. If you look at an agent-generated number and no name is attached, that absence is the warning sign. Automation does not remove the need for that owner. A green, hands-off pipeline can quietly feed into a number nobody watches. So autonomy does not dilute ownership. It concentrates it, because now one person answers for a system moving faster than they can check line by line.</span></p><p><span>Some decisions should remain human. Decisions that are difficult to reverse, what we call one-way doors at Amazon, need a person behind them. That includes setting or changing a goal, shifting investment from one channel to another, changing a metric definition, and deciding whether a number is trustworthy enough to publish to leadership. These are judgments about consequences, not mechanical steps. </span>We should automate the mechanical work freely, but we should not automate the call on whether the output is safe to act on. The moment an agent&#8217;s output crosses from internal artifact to input for an irreversible decision, a human seal is necessary.</p><div><hr></div><h3>Key Takeaways</h3><ul><li><p><strong>Trust, not infrastructure, defines a successful data platform. </strong>Consumers should be able to use a number without questioning which definition or dataset is correct.</p></li><li><p><strong>A green pipeline does not guarantee correct data. </strong>Teams must validate outputs independently and explain when backfills, late-arriving data, or reprocessing change historical numbers.</p></li><li><p><strong>The model is only a small part of safe AI automation. </strong>Agents need semantics, lineage, validation rules, operational context, and explicit guardrails before they can modify production systems reliably.</p></li><li><p><strong>Automation does not remove human accountability.</strong> A named person must remain responsible when agent-generated outputs influence goals, investments, metric definitions, or leadership decisions.</p></li></ul><div><hr></div><h3>Community poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:912181}" data-component-name="PollToDOM"></div><div><hr></div><h3>&#128172; How to stay connected</h3><ul><li><p><a href="https://www.linkedin.com/in/himanshi-manglunia/">LinkedIn</a></p></li></ul><div><hr></div><h3>&#8505;&#65039; About Data Engineer Things</h3><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Data Pulse Edition (August 2026)]]></title><description><![CDATA[Airflow&#8217;s AI-powered pipeline resilience, Uber&#8217;s data abstraction layer, Netflix&#8217;s in-house LLM serving, AI governance, and Spotify&#8217;s Random Access Parquet for faster data lake lookups]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-8c8</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-8c8</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 18 Aug 2026 15:03:36 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!3RrL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.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_!3RrL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3RrL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!3RrL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!3RrL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!3RrL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3RrL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:168565,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/208130764?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3RrL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!3RrL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!3RrL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!3RrL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f66b3f-ede8-40f4-b607-8af564f09bed_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p style="text-align: justify;">Hello Everyone,</p><p style="text-align: justify;">Hope everyone is doing well!</p><p>One of my favourite things about the data engineering community is how much we learn from each other. Most of us may be working with different companies, different stacks and very different scales, but the problems often sound surprisingly familiar.</p><p>A pipeline that behaves perfectly until it reaches production. A platform nobody uses quite the way we expected. A technology everyone suddenly wants to adopt. Or that one issue which takes several hours to debug and turns out to have a painfully simple explanation. &#128578;</p><p>That&#8217;s also what we try to capture with Data Pulse every month not just what is new, but what we think is genuinely worth a data engineer spending some time on.</p><p>For August, we found some interesting engineering stories from Airflow, Netflix, Uber and Spotify, covering everything from pipeline reliability and data platform architecture to AI infrastructure, governance and some clever thinking around how we access data in the lake.</p><p>Grab a coffee and have a read. Hopefully a few of these are useful in something you&#8217;re building right now.</p><p>&#8211; Sri</p><div><hr></div><h3><strong>&#128218;</strong> Data Pulse</h3><h3><a href="https://blog.dataengineerthings.org/how-airflow-is-using-ai-to-make-data-engineering-more-resilient-not-more-complex-36ff44fd8df7">How Airflow is using AI to make data engineering more resilient, not more complex</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Data Orchestration<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p><strong>Summary:</strong> Most data engineers have dealt with the familiar 2 AM pipeline failure: open the logs, figure out whether it is a network issue, bad data, expired credentials or an upstream schema change, and then decide whether retrying will actually help.</p><p>Vikram Koka, CSO at Astronomer and an Apache Airflow PMC member, walks through three capabilities that try to make some of this operational work smarter.</p><p><code>LLMSchemaCompareOperator</code> uses an LLM to compare schemas semantically rather than relying only on exact type matches. A Task State Store allows a task to retain information across retries, which is useful when Airflow is orchestrating long-running jobs in systems such as Spark or Databricks. And <code>LLMRetryPolicy</code> can use the team&#8217;s own runbook to classify a failure and decide whether it should retry, fail immediately or escalate.</p><p>What I like about this approach is that the AI is being applied <strong>inside a very normal data engineering problem</strong>. We are not rebuilding the pipeline around an agent; we are using AI where rigid rules start becoming difficult to maintain.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!pgyc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a862449-7d96-4f05-812f-15fe15e3cb72_1394x792.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pgyc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a862449-7d96-4f05-812f-15fe15e3cb72_1394x792.webp 424w, https://substackcdn.com/image/fetch/$s_!pgyc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a862449-7d96-4f05-812f-15fe15e3cb72_1394x792.webp 848w, https://substackcdn.com/image/fetch/$s_!pgyc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a862449-7d96-4f05-812f-15fe15e3cb72_1394x792.webp 1272w, https://substackcdn.com/image/fetch/$s_!pgyc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a862449-7d96-4f05-812f-15fe15e3cb72_1394x792.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pgyc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a862449-7d96-4f05-812f-15fe15e3cb72_1394x792.webp" width="1394" height="792" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1a862449-7d96-4f05-812f-15fe15e3cb72_1394x792.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:792,&quot;width&quot;:1394,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:48096,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/207541267?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a862449-7d96-4f05-812f-15fe15e3cb72_1394x792.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!pgyc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a862449-7d96-4f05-812f-15fe15e3cb72_1394x792.webp 424w, https://substackcdn.com/image/fetch/$s_!pgyc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a862449-7d96-4f05-812f-15fe15e3cb72_1394x792.webp 848w, https://substackcdn.com/image/fetch/$s_!pgyc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a862449-7d96-4f05-812f-15fe15e3cb72_1394x792.webp 1272w, https://substackcdn.com/image/fetch/$s_!pgyc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a862449-7d96-4f05-812f-15fe15e3cb72_1394x792.webp 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://blog.dataengineerthings.org/how-airflow-is-using-ai-to-make-data-engineering-more-resilient-not-more-complex-36ff44fd8df7">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>It is a practical use of AI rather than AI for the sake of AI.</strong> Scheduling, dependencies and execution remain deterministic. The LLM is used only where interpretation can add value understanding schema differences or classifying an unfamiliar failure.</p></li><li><p><strong>Retry logic deserves more thought than we usually give it.</strong> <code>retries=3</code> is easy to configure, but an expired credential will still be expired after the third attempt. A rate limit, on the other hand, may genuinely benefit from retrying.</p></li><li><p><strong>Persistent task state solves a very real operational problem.</strong> If an external Spark or Databricks job has already started, retrying the Airflow task should ideally reconnect to it rather than submit another expensive job.</p></li><li><p>More broadly, this is a good example of <strong>AI augmenting data engineers rather than replacing the engineering around them</strong>. The team still defines the runbook and the expected behaviour; AI helps execute some of that knowledge consistently.</p></li></ul><h3><a href="https://www.uber.com/us/en/blog/data-abstraction-layer/">Simplifying Data and Product Integrations with a Data Abstraction Layer</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Data Platform Architecture &amp; Data Modeling<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p><strong>Summary:</strong></p><p>Anyone who has worked with a mature data platform has probably heard some version of this:</p><p><em>&#8220;Use </em><code>table_v2</code><em> for newer data, </em><code>table_v1</code><em> for older dates, and remember that one of the metrics has a different name between the two.&#8221;</em></p><p>Uber built a Data Abstraction Layer (DAL) to stop pushing that complexity onto every consumer. Instead of applications querying physical tables directly, consumers request a logical table, the fields they need, a time range and filters. The DAL then figures out where that data physically lives, generates the required queries, runs them across the appropriate systems and assembles the final response.</p><p>One of the more interesting parts is the table resolution logic. Recent data might be available in a real-time OLAP table while historical data sits in a daily Hive table. Consumers still make one request; the DAL decides which datasets should serve each part of it.</p><p>Uber reports that this approach reduced the turnaround time for new advertiser reports from several weeks to under two days, and the DAL has since expanded beyond its original advertising use case.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Gq2k!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb9aae95-5cc4-4a99-ab8c-e13fcc658b3a_1913x1125.heic" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Gq2k!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb9aae95-5cc4-4a99-ab8c-e13fcc658b3a_1913x1125.heic 424w, https://substackcdn.com/image/fetch/$s_!Gq2k!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb9aae95-5cc4-4a99-ab8c-e13fcc658b3a_1913x1125.heic 848w, https://substackcdn.com/image/fetch/$s_!Gq2k!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb9aae95-5cc4-4a99-ab8c-e13fcc658b3a_1913x1125.heic 1272w, https://substackcdn.com/image/fetch/$s_!Gq2k!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb9aae95-5cc4-4a99-ab8c-e13fcc658b3a_1913x1125.heic 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Gq2k!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb9aae95-5cc4-4a99-ab8c-e13fcc658b3a_1913x1125.heic" width="1456" height="856" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/db9aae95-5cc4-4a99-ab8c-e13fcc658b3a_1913x1125.heic&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:856,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:55780,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/heic&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/208130764?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb9aae95-5cc4-4a99-ab8c-e13fcc658b3a_1913x1125.heic&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Gq2k!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb9aae95-5cc4-4a99-ab8c-e13fcc658b3a_1913x1125.heic 424w, https://substackcdn.com/image/fetch/$s_!Gq2k!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb9aae95-5cc4-4a99-ab8c-e13fcc658b3a_1913x1125.heic 848w, https://substackcdn.com/image/fetch/$s_!Gq2k!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb9aae95-5cc4-4a99-ab8c-e13fcc658b3a_1913x1125.heic 1272w, https://substackcdn.com/image/fetch/$s_!Gq2k!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb9aae95-5cc4-4a99-ab8c-e13fcc658b3a_1913x1125.heic 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://www.uber.com/us/en/blog/data-abstraction-layer/">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Consumers becoming tightly coupled to physical tables is a common source of platform fragility.</strong> Once dozens of dashboards, services and pipelines know your exact table names and schemas, even a simple migration can become painful.</p></li><li><p><strong>The logical-to-physical separation is the most useful idea here.</strong> Consumers describe <em>what</em> they need while the platform owns <em>where</em> and <em>how</em> that data is retrieved.</p></li><li><p><strong>The table-resolution pattern is especially interesting.</strong> Many of us have written <code>UNION</code> queries that combine recent real-time data with older batch data. Uber moves that complexity into platform metadata instead of repeating it in every consumer.</p></li><li><p>This is also a good example of what useful platform abstraction looks like: <strong>not hiding everything, but hiding implementation details that consumers should never have needed to understand in the first place.</strong></p></li></ul><div><hr></div><h3>&#11088;&#65039; From Sponsor: Take the Airflow AI Crash Course</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LO6X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ab7e579-f69a-4e32-a396-14c4ec25239c_1200x630.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LO6X!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ab7e579-f69a-4e32-a396-14c4ec25239c_1200x630.png 424w, https://substackcdn.com/image/fetch/$s_!LO6X!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ab7e579-f69a-4e32-a396-14c4ec25239c_1200x630.png 848w, https://substackcdn.com/image/fetch/$s_!LO6X!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ab7e579-f69a-4e32-a396-14c4ec25239c_1200x630.png 1272w, https://substackcdn.com/image/fetch/$s_!LO6X!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ab7e579-f69a-4e32-a396-14c4ec25239c_1200x630.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LO6X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ab7e579-f69a-4e32-a396-14c4ec25239c_1200x630.png" width="501" height="263.025" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5ab7e579-f69a-4e32-a396-14c4ec25239c_1200x630.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:630,&quot;width&quot;:1200,&quot;resizeWidth&quot;:501,&quot;bytes&quot;:561306,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/208130764?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ab7e579-f69a-4e32-a396-14c4ec25239c_1200x630.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LO6X!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ab7e579-f69a-4e32-a396-14c4ec25239c_1200x630.png 424w, https://substackcdn.com/image/fetch/$s_!LO6X!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ab7e579-f69a-4e32-a396-14c4ec25239c_1200x630.png 848w, https://substackcdn.com/image/fetch/$s_!LO6X!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ab7e579-f69a-4e32-a396-14c4ec25239c_1200x630.png 1272w, https://substackcdn.com/image/fetch/$s_!LO6X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ab7e579-f69a-4e32-a396-14c4ec25239c_1200x630.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p><span>Data engineering is evolving, and Orchestrate Everything on September 16 is bringing together industry leaders to explore what&#8217;s next:</span></p><ul><li><p>Hear from the data teams at Lyft, Wix, Ramp, and more</p></li><li><p>Learn practical MLOps, AI inference, and context engineering patterns</p></li><li><p><span>Prep for the AI Orchestration certification and take the exam for free (</span>$150 value<span>)</span></p></li></ul><p><strong><span>&#128073;&#127996; Register </span><a href="https://www.astronomer.io/events/orchestrate-everything/workshop/?utm_campaign=20260916-virtual-conference-orchestrate-everything&amp;utm_medium=paidmedia&amp;utm_source=data-engineering-things"><span>HERE</span></a><span>.</span></strong></p><p><em><span>(This message is sponsored by Astronomer.)</span></em></p><div><hr></div><h3><a href="https://netflixtechblog.com/in-house-llm-serving-at-netflix-a5a8e799ea2c">In-House LLM Serving at Netflix</a></h3><blockquote><p><strong>&#128214; Topic</strong>: AI and Data Engineering<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p><strong>Summary:</strong> Once an organization starts running enough LLM workloads, model serving begins to look less like an ML experiment and more like another distributed platform that needs APIs, deployment strategies, caching, version management and observability.</p><p>Netflix describes how it incorporated LLM serving into its existing Model Scoring Service rather than creating an entirely separate AI platform. The team uses NVIDIA Triton as part of its serving stack and selected vLLM as the primary LLM serving engine after benchmarking alternatives. An OpenAI-compatible HTTP interface sits in front of the platform, which gives application teams a familiar API and makes moving workloads between hosted and internally served models less disruptive.</p><p>The post also gets into the things that tend to appear only after going to production: model startup time, shared model storage, Triton/vLLM version compatibility, red-black versus versioned deployments, merged operational metrics, and CPU bottlenecks introduced by constrained decoding even while GPU inference itself is efficiently batched.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AFJf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2270b7d3-a8d1-4423-970b-91a1b9e064f5_710x422.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AFJf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2270b7d3-a8d1-4423-970b-91a1b9e064f5_710x422.png 424w, https://substackcdn.com/image/fetch/$s_!AFJf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2270b7d3-a8d1-4423-970b-91a1b9e064f5_710x422.png 848w, https://substackcdn.com/image/fetch/$s_!AFJf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2270b7d3-a8d1-4423-970b-91a1b9e064f5_710x422.png 1272w, https://substackcdn.com/image/fetch/$s_!AFJf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2270b7d3-a8d1-4423-970b-91a1b9e064f5_710x422.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AFJf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2270b7d3-a8d1-4423-970b-91a1b9e064f5_710x422.png" width="710" height="422" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2270b7d3-a8d1-4423-970b-91a1b9e064f5_710x422.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:422,&quot;width&quot;:710,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:148660,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/208130764?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2270b7d3-a8d1-4423-970b-91a1b9e064f5_710x422.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!AFJf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2270b7d3-a8d1-4423-970b-91a1b9e064f5_710x422.png 424w, https://substackcdn.com/image/fetch/$s_!AFJf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2270b7d3-a8d1-4423-970b-91a1b9e064f5_710x422.png 848w, https://substackcdn.com/image/fetch/$s_!AFJf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2270b7d3-a8d1-4423-970b-91a1b9e064f5_710x422.png 1272w, https://substackcdn.com/image/fetch/$s_!AFJf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2270b7d3-a8d1-4423-970b-91a1b9e064f5_710x422.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://netflixtechblog.com/in-house-llm-serving-at-netflix-a5a8e799ea2c">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>The API abstraction is a pattern we already know from data platforms.</strong> Consumers talk to a stable interface while the platform team retains the freedom to change the implementation underneath. Today that implementation might be a hosted model; tomorrow it could be a self-hosted model running through vLLM.</p></li><li><p><strong>Self-hosting an LLM is not primarily a &#8220;download model and attach GPUs&#8221; problem.</strong> Artifact distribution, cold starts, rollout strategy, capacity, monitoring and version compatibility quickly become the bigger engineering concerns.</p></li><li><p><strong>The constrained-decoding example is particularly useful.</strong> Netflix found that per-request CPU-side work could become a bottleneck even when GPU inference was well optimized. It is a familiar distributed-systems lesson: after optimizing one part of the pipeline, the bottleneck simply moves somewhere else.</p></li><li><p>As DE teams increasingly own AI infrastructure alongside batch, streaming and analytics platforms, <strong>model serving is becoming another workload whose data movement, observability and reliability we need to understand.</strong></p></li></ul><h3><a href="https://leaddev.com/ai/ai-governance-is-now-an-engineering-problem">AI governance is now an engineering problem</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Data and AI Governance<br>&#129504; <strong>Level</strong>: Beginner</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> AI governance often sounds like something that belongs in policy documents, review boards and compliance meetings.</p><p>This article makes a much more practical argument: once AI starts influencing production decisions, governance becomes an engineering problem.</p><p>The examples are familiar even outside AI, a production change gets approved but nobody can reconstruct exactly why it was made; an automated tool makes several changes during an incident but there is no useful decision log afterward; or a multi-step workflow fails halfway through and nobody has designed how to reverse the steps that have already completed.</p><p>The author boils this down to three questions: <strong>Who owns the outcome? Can we reconstruct what happened? Can we safely undo it?</strong></p><p>Those questions apply just as well to AI-assisted data pipelines as they do to software delivery.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mDgL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7535f5-df17-429b-8270-bcaadba61d7e_571x245.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mDgL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7535f5-df17-429b-8270-bcaadba61d7e_571x245.png 424w, https://substackcdn.com/image/fetch/$s_!mDgL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7535f5-df17-429b-8270-bcaadba61d7e_571x245.png 848w, https://substackcdn.com/image/fetch/$s_!mDgL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7535f5-df17-429b-8270-bcaadba61d7e_571x245.png 1272w, https://substackcdn.com/image/fetch/$s_!mDgL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7535f5-df17-429b-8270-bcaadba61d7e_571x245.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mDgL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7535f5-df17-429b-8270-bcaadba61d7e_571x245.png" width="571" height="245" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7e7535f5-df17-429b-8270-bcaadba61d7e_571x245.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:245,&quot;width&quot;:571,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:34789,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/208130764?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7535f5-df17-429b-8270-bcaadba61d7e_571x245.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mDgL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7535f5-df17-429b-8270-bcaadba61d7e_571x245.png 424w, https://substackcdn.com/image/fetch/$s_!mDgL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7535f5-df17-429b-8270-bcaadba61d7e_571x245.png 848w, https://substackcdn.com/image/fetch/$s_!mDgL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7535f5-df17-429b-8270-bcaadba61d7e_571x245.png 1272w, https://substackcdn.com/image/fetch/$s_!mDgL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7535f5-df17-429b-8270-bcaadba61d7e_571x245.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://leaddev.com/ai/ai-governance-is-now-an-engineering-problem">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Data engineers already work in highly governed environments.</strong> Access controls, lineage, approvals, auditability and data retention are normal parts of our platforms. AI introduces new decisions that need the same level of traceability.</p></li><li><p><strong>Logging the final output is not always enough.</strong> If AI recommends a schema change, transformation or production action, being able to understand what was recommended, what context influenced it and who approved it can become important during an incident.</p></li><li><p><strong>Rollback should be designed before automation is given more authority.</strong> A workflow that performs five actions successfully before failing at step six is very different from a transaction that simply rolls back everything.</p></li><li><p>The larger lesson is useful beyond AI: <strong>governance works best when it is part of the engineering workflow</strong>, not something engineers are expected to remember to do after the work is complete.</p></li></ul><h3><a href="https://engineering.atspotify.com/2026/7/indexing-the-data-lake-for-online-point-queries">Indexing the Data Lake for Online Point Queries: Random Access Parquet (RAP)</a></h3><blockquote><p><strong>&#128214; Topic</strong><span>: Data Lake Architecture &amp; Parquet</span><br><span>&#129504; </span><strong>Level</strong><span>: Intermediate</span></p></blockquote><p><strong>Summary:</strong></p><p>We normally think of Parquet and data lakes as being great for analytical workloads, while low-latency point lookups belong in systems such as key-value stores or serving databases. Spotify&#8217;s <strong>Random Access Parquet (RAP)</strong> work challenges that assumption.</p><p>The idea is fairly simple: maintain an external index that tells the system where a particular key lives in the data lake. Once the relevant Parquet file and location are known, the reader can use Parquet metadata to narrow things down further and fetch only the small portion of the file it actually needs from object storage.</p><p>That changes the access pattern significantly. Instead of starting a distributed query and searching through a large dataset to find one record, the system already knows where to look before it touches the file.</p><p>What makes this particularly interesting is that the underlying dataset remains regular Parquet. Analytical workloads can continue using the same files, while selected access patterns can be optimized for much faster point lookups.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fbuo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc09e0a48-6d43-49b9-a907-67dc2eef316c_1505x1205.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fbuo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc09e0a48-6d43-49b9-a907-67dc2eef316c_1505x1205.png 424w, https://substackcdn.com/image/fetch/$s_!fbuo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc09e0a48-6d43-49b9-a907-67dc2eef316c_1505x1205.png 848w, https://substackcdn.com/image/fetch/$s_!fbuo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc09e0a48-6d43-49b9-a907-67dc2eef316c_1505x1205.png 1272w, https://substackcdn.com/image/fetch/$s_!fbuo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc09e0a48-6d43-49b9-a907-67dc2eef316c_1505x1205.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fbuo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc09e0a48-6d43-49b9-a907-67dc2eef316c_1505x1205.png" width="1456" height="1166" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c09e0a48-6d43-49b9-a907-67dc2eef316c_1505x1205.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1166,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Interleaving Columns&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Interleaving Columns" title="Interleaving Columns" srcset="https://substackcdn.com/image/fetch/$s_!fbuo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc09e0a48-6d43-49b9-a907-67dc2eef316c_1505x1205.png 424w, https://substackcdn.com/image/fetch/$s_!fbuo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc09e0a48-6d43-49b9-a907-67dc2eef316c_1505x1205.png 848w, https://substackcdn.com/image/fetch/$s_!fbuo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc09e0a48-6d43-49b9-a907-67dc2eef316c_1505x1205.png 1272w, https://substackcdn.com/image/fetch/$s_!fbuo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc09e0a48-6d43-49b9-a907-67dc2eef316c_1505x1205.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://engineering.atspotify.com/2026/7/indexing-the-data-lake-for-online-point-queries">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>It challenges a common architecture decision.</strong> When an application needs low-latency access to data in the lake, our first instinct is often to copy that data into Redis, Cassandra, DynamoDB or another serving database. RAP shows that, for the right workload, indexing the existing data may be another option.</p></li><li><p><strong>Access patterns should influence architecture.</strong> Analytical scans, range queries and point lookups have very different requirements. RAP is a good example of optimizing specifically for how the data will actually be accessed instead of expecting one query pattern to handle everything efficiently.</p></li><li><p><strong>The Parquet fundamentals matter.</strong> File layout, row groups, metadata and minimizing unnecessary reads can have a significant impact on performance. RAP takes these ideas further by using an external index to get directly to the relevant data.</p></li><li><p><strong>There is a cost angle too.</strong> If an application needs one record, launching a distributed query engine and reading significantly more data than required may be unnecessary overhead. Reducing the lookup to a small number of targeted object-store reads can make the serving path much more efficient.</p></li></ul><p>The broader takeaway is simple: <strong>before introducing another datastore, first ask whether the data you already have can be accessed differently.</strong></p><h3><a href="https://www.infoq.com/articles/adoption-curve-twenty/?topicPageSponsorship=e89f6e78-251c-4f92-97fb-78653a88ccc2">The Technology Adoption Curve, Twenty Years On</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Career Development<br>&#129504; <strong>Level</strong>: Beginner</p></blockquote><p><strong>Summary:</strong> Data engineering has no shortage of new technologies to learn. The difficult skill is figuring out <strong>which ones actually deserve our attention</strong>.</p><p>Looking back at twenty years of technology adoption, InfoQ traces how ideas such as Agile, cloud, DevOps, Kubernetes, microservices and machine learning moved from early experimentation into mainstream engineering. Some became foundational. Others were over-applied before teams eventually found more sensible boundaries around when to use them.</p><p>The article places AI engineering and agentic systems near the early-adopter end of that same curve today. The useful takeaway is less about predicting which technology will win and more about developing the judgment to separate an interesting experiment from something your production platform genuinely needs.</p><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>We work in one of the most trend-heavy areas of engineering.</strong> Hadoop, Spark, data lakes, lakehouses, data mesh, streaming, semantic layers and now agents have all arrived with claims that they would reshape the stack. Understanding adoption maturity helps us avoid designing around hype.</p></li><li><p><strong>Being an early adopter and being an early majority user require different thinking.</strong> An early adopter may accept operational pain in exchange for learning or competitive advantage. A production platform team usually needs a much stronger reason.</p></li><li><p><strong>The underlying problem usually survives the technology.</strong> SOA became microservices; DevOps evolved into platform engineering; ML infrastructure is becoming AI infrastructure. Learning the underlying engineering problem tends to age better than memorizing whichever tool currently solves it.</p></li><li><p><strong>Technology judgment becomes more important as you become senior.</strong> A senior DE or architect is increasingly expected not only to know what is new, but to explain whether the organization should adopt it now, experiment with it, or simply wait.</p></li></ul><div><hr></div><h3><strong>&#128142; Open Source Gem</strong></h3><h3><a href="https://risingwave.com/">RisingWave: Event Streaming for Agentic AI</a></h3><p style="text-align: justify;"><strong>What&#8217;s new / why now:</strong></p><p>RisingWave has been around for a while as a streaming database, but the <strong>3.0 release line is a meaningful expansion of what the project is trying to be</strong>. RisingWave now positions itself as an event-streaming platform for agentic AI, combining CDC and event ingestion, incremental SQL computation, low-latency serving and an open Iceberg-based storage path. RisingWave 3.0 also adds capabilities around vector search and deeper Iceberg integration, while the project exposes familiar PostgreSQL interfaces and tooling for AI/agent access.</p><p>This is interesting because the &#8220;real-time context for agents&#8221; problem is starting to look very similar to a problem data engineers already know well: <strong>continuously ingest changing data, maintain derived state, and serve the latest result with low latency.</strong></p><p><strong>&#128161; Why is this useful for DEs?</strong></p><ul><li><p><strong>The programming model is SQL-first.</strong> Teams that do not want to build every streaming transformation as application code can maintain continuously updated results using materialized views and familiar relational concepts.</p></li><li><p><strong>It potentially collapses a few layers of the streaming stack.</strong> CDC/event ingestion, incremental computation and serving can happen in one system. That does not mean every Kafka + Flink architecture should suddenly be replaced, but it is worth evaluating for new workloads where the operational overhead of multiple systems is hard to justify.</p></li><li><p><strong>The Iceberg integration matters.</strong> Fresh operational state and durable analytical history do not have to become two completely disconnected architectures.</p></li><li><p>Agentic AI may be the current positioning, but the underlying engineering problem is broader: <strong>keeping derived data continuously fresh and immediately queryable</strong>. That has plenty of non-AI applications as well.</p></li></ul><p>&#128073; <strong>GitHub</strong>: <a href="https://github.com/risingwavelabs/risingwave">https://github.com/risingwavelabs/risingwave</a></p><div><hr></div><h3><strong>&#128161; DE Tip of the Month </strong></h3><h3>Row Counts Are Not Data Quality</h3><p>A pipeline loads 10 million rows yesterday and 10 million rows today. Everything looks healthy.</p><p>Except today&#8217;s <code>customer_id</code> is null.</p><p>Row count checks are useful, but they mainly tell us that <strong>something arrived</strong>. They don&#8217;t tell us whether the data still makes sense.</p><p>For important datasets, combine volume checks with a few checks that actually understand the data:</p><ul><li><p><strong>Null percentage on critical columns</strong> : especially identifiers, dates and fields used in downstream joins.</p></li><li><p><strong>Duplicate rates on expected keys</strong> : row counts may look perfectly normal even when the same records were loaded twice.</p></li><li><p><strong>Min/max dates and timestamps</strong> : one of the quickest ways to detect stale data, bad filters or an upstream feed that stopped refreshing.</p></li><li><p><strong>Distribution changes</strong> : a sudden shift in an important category or measure may reveal a problem that schema validation will never catch.</p></li><li><p><strong>Referential integrity</strong> : if two datasets are expected to relate to each other, make sure that relationship still holds.</p></li><li><p><strong>Source-to-target reconciliation</strong> : for business-critical measures, compare what entered the pipeline with what eventually came out.</p></li></ul><p>You don&#8217;t need hundreds of checks.</p><p>Five checks that actually understand the dataset can often tell you more than fifty generic checks applied everywhere.</p><p>Another lesson from production: <strong>catch the problem as close to the source as possible.</strong> Discovering bad data after it has gone through three transformations, two aggregations and seven dashboards makes troubleshooting much harder.</p><p>A successful job run only tells us that the code executed.</p><p><strong>Data quality asks a different question: Can someone safely use what the pipeline produced?</strong></p><div><hr></div><h3>&#128202; Community Poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:1016306}" data-component-name="PollToDOM"></div><p>Until the next one.</p><p><a href="https://www.linkedin.com/in/srivigneshkn/">Sri</a><span>, </span><a href="https://www.linkedin.com/in/anandaganesh/">Ananda</a>, &amp; <a href="https://www.linkedin.com/in/sukanyawadawadagi/">Sukanya</a></p><div><hr></div><h4>&#8505;&#65039; About Data Engineer Things</h4><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Community Spotlight Edition (August 2026)]]></title><description><![CDATA[Near-Infinite Velocity: On Agents, Standards, and What Never Changes]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-c36</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-c36</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 04 Aug 2026 15:02:01 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!WLAY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.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_!WLAY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WLAY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!WLAY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!WLAY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!WLAY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WLAY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:243421,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/209572437?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!WLAY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!WLAY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!WLAY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!WLAY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74547110-ba81-40e5-abc0-c3b4822aa455_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hello, fellow Data Engineering enthusiasts!</p><p>For this issue of Community Spotlight, we chatted with <strong>Bryan Brandow</strong>, who&#8217;s a leader, mentor, data enthusiast, problem solver, and currently a <strong>Data Engineer at OpenAI</strong>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading! Subscribe for free to receive new posts and support my work.</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>Bryan spoke at the most recent DET Bay Area Meetup on July 23. He delivered an insightful talk on Data Engineering in the AI Era, in which he explained how maintaining data standards is crucial for building durable and maintainable systems and advocated for "harness engineering," where team standards are baked directly into the system using a structured knowledge store.</p><p><span>This interview explores why the </span><strong><span>fundamentals of data engineering matter more than ever</span></strong><span> in the agent era. Bryan walks through harness engineering at OpenAI, and explains why </span><strong><span>near-infinite velocity makes good design decisions the new bottleneck</span></strong><span>.</span><br><br>Hope you enjoy reading this as much as we did putting it together!</p><p>- Eddy, Shubham &amp; Sugandhi</p><div><hr></div><h3>Spotlight: Bryan Brandow</h3><div class="pullquote"><p style="text-align: justify;">&#8220;Now we have near infinite velocity and the bottleneck is only being able to decide what we want to build. The price of building the wrong thing is higher than ever because a bad design decision can propagate so quickly.&#8221;</p></div><blockquote><p><em>For those in the DET community that may not know you yet, could you briefly introduce yourself?</em></p></blockquote><p>My name is Bryan Brandow and I&#8217;m a Data Engineer at OpenAI. I&#8217;ve spent my entire career in Data Engineering, perhaps most notably for 11 years at Facebook/Meta. I&#8217;ve worked through the entire stack from logging, core tables, aggregate layers, and dashboards. I spent a good portion of my career specializing in data visualization with tools such as MicroStrategy and Tableau. I have strong opinions (weakly held) about all things data, but enjoy the debate and discussion.</p><div><hr></div><blockquote><p><em>Your first data work involved hand-building pipelines with the tooling that came bundled with SQL Server, in an era with no cloud warehouse, no orchestration frameworks as we know them now, and no version-controlled transformation layer. You're now shipping agents that do that work for you. Across all of that, what has actually stayed the same about doing this job well?</em></p></blockquote><p>Yeah, my early days are pretty funny to think about now! My first task at my very first job was loading CSVs that got FTP&#8217;d to us from third party data providers. Data quality and the handling of exceptions (skip or fail) is probably the most consistent thing that never changes. I remember having to manually fix bad characters in the CSV and retry the job until it worked. The biggest difference is just the scale of data. The first data warehouse I worked with was only about 10gb of data, and the main ETL jobs were only a few steps. As complexity grew, the need for better tooling and platforms increased with it.</p><div><hr></div><h4>&#128161; Editorial Note: FTP</h4><p><em>FTP stands for File Transfer Protocol. It's an old but simple way to move files between two computers over a network. One computer acts as the server holding the files, and you connect to it from your computer to upload or download stuff. It was hugely popular for things like publishing websites (uploading your HTML files to a web host) and sharing large files before cloud storage existed. </em></p><p><em>One caveat: plain FTP sends everything unencrypted, including your password, so, today, people use secure versions like SFTP or FTPS instead.</em></p><div><hr></div><blockquote><p><em>You've moved between management and hands-on IC work more than once, going from leading a large org to individual contributor work on harder technical problems, and later from an engineering director role into building directly again. What draws you back to the work itself, and how do you advise people thinking about that move?</em></p></blockquote><p><span>I&#8217;ve always just asked how I can best help the team, whatever that role may be. I&#8217;ve never asked to be a manager, but have asked to be an IC. I personally enjoy IC more because the engineer in me loves solving problems. The feeling of satisfaction I get from fixing or enabling something for someone is really amazing. I like having direct control of the outcomes and it enables me to form strong opinions on tooling or processes that I can then turn into changes that can help everyone.</span></p><p><span>I think it&#8217;s natural for people to think that becoming a manager is taking an important step up in the career ladder, and in a lot of companies, that&#8217;s probably true. But at companies like Facebook and OpenAI, this wasn&#8217;t the case. </span><strong><span>Anyone can have influence in a company where ideas win on merit and not authority</span></strong><span>. And frankly, those are the kind of companies I want to work at anyway.</span></p><p><span>I do think everyone should try it if they have the opportunity. The experiences definitely made me a better IC because of the development of soft and organizational skills that are necessary. It also strengthened my ability to multi-task and ramp up on context quickly since as a manager, you are constantly doing that as you run from meeting to meeting.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!j9cK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe55b19d3-a7cd-474a-b22d-c1bd5261bf17_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!j9cK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe55b19d3-a7cd-474a-b22d-c1bd5261bf17_2816x1536.png 424w, https://substackcdn.com/image/fetch/$s_!j9cK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe55b19d3-a7cd-474a-b22d-c1bd5261bf17_2816x1536.png 848w, https://substackcdn.com/image/fetch/$s_!j9cK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe55b19d3-a7cd-474a-b22d-c1bd5261bf17_2816x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!j9cK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe55b19d3-a7cd-474a-b22d-c1bd5261bf17_2816x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!j9cK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe55b19d3-a7cd-474a-b22d-c1bd5261bf17_2816x1536.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e55b19d3-a7cd-474a-b22d-c1bd5261bf17_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4865948,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/209572437?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe55b19d3-a7cd-474a-b22d-c1bd5261bf17_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!j9cK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe55b19d3-a7cd-474a-b22d-c1bd5261bf17_2816x1536.png 424w, https://substackcdn.com/image/fetch/$s_!j9cK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe55b19d3-a7cd-474a-b22d-c1bd5261bf17_2816x1536.png 848w, https://substackcdn.com/image/fetch/$s_!j9cK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe55b19d3-a7cd-474a-b22d-c1bd5261bf17_2816x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!j9cK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe55b19d3-a7cd-474a-b22d-c1bd5261bf17_2816x1536.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Focus: Individual Contributor vs. Manager</figcaption></figure></div><p><span>My advice to people is to </span><strong><span>recognize that management and IC are different roles with very different skillsets</span></strong><span>. It can be hard for a first time manager to let go of the details and work through others. And it can be hard to have difficult conversations and do performance management. Being a great manager has a lot of overlap with being a great therapist. Some people enjoy it and are really good at it, but it&#8217;s not for everyone.</span></p><div><hr></div><blockquote><p><em>As Pillar Lead, you helped set Facebook's overall data engineering vision, culture, and recruiting standards alongside the Growth and Ads leads. What did you learn about what makes a DE org healthy at scale, and what translates to smaller teams?</em></p></blockquote><p><span>I&#8217;m a very big proponent of standards and their importance (see my </span><a href="https://www.youtube.com/watch?v=UARF0e_gPwM"><span>July DET Meetup talk!</span></a><span>). I saw first hand how one person&#8217;s personal preferences would directly lead to how entire orgs of data engineers would operate in the future. I could look at Instagram, Facebook, Messenger, Growth and track all of those lineages back to a single individual that made key design decisions back when the team was small. In some ways, those differences were in support of the product or functional requirements of those business groups. But the downside was that when we needed to work across those teams, data integration was unnecessarily challenging. It&#8217;s the reason </span><strong><span>I harp on the importance of standards, even when they seem trivial. They just have such a powerful multiplicative effect over the long run</span></strong><span>.</span></p><p><span>I think a healthy organization has strong communication and debate. It&#8217;s not that any of those standards are sacred, and even though I have my own strong opinions, I don&#8217;t believe there is a correct answer. Discussion and evolution over many iterations is key. An organization that can continuously improve together, not in silos, is in a really strong position.</span></p><div><hr></div><h4>&#128161;Editorial Note: </h4><p><em>In his talk at the July 2026 DET meetup</em>, <em>Bryan Brandow explains why foundational data engineering standards remain critical for system longevity in the age of AI.</em></p><p><em>Watch the full talk here: </em></p><div id="youtube2-UARF0e_gPwM" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;UARF0e_gPwM&quot;,&quot;startTime&quot;:&quot;52s&quot;,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/UARF0e_gPwM?start=52s&amp;rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><div><hr></div><blockquote><p><em><span>Your writing has gone from technical deep dives read by humans to standards precise enough for an agent to follow. Does public technical writing still pay off for someone starting out, now that so much content is generated?</span></em></p></blockquote><p><span>One thing that has always helped me out tremendously is to actively monitor support channels/forums and try to reply to everything. If I don&#8217;t know the answer, I figure it out. For one, </span><strong><span>I&#8217;ve always believed in &#8220;help others the way you want to be helped&#8221;</span></strong><span>, and I greatly appreciate it when someone goes through that much effort for me. But it&#8217;s also an incredibly efficient way to learn. You&#8217;re researching the exact problems your partners are facing and building a strong reputation and relationships.</span></p><p><span>After doing this for a while on the MicroStrategy forums around 2010, I decided to start a blog so I could have some artifact to link to people when the same problems would come up. I got really into it, posting multiple technical articles per week, and eventually just put up an email address for people to directly ask me questions. I learned so much from researching and refining topics and engaging in the comments. I met so many incredible people through the community at meetups and conferences.</span></p><p><span>I do think it is still incredibly valuable. I was never worried about whether or not anyone would read it, because I was doing it for myself. It was a great personal resource for me to search and go back to. And even if you get zero traffic, it&#8217;s a fantastic artifact on a resume. My eventual hiring manager at Facebook told me that my blog was the deciding factor for them to hire me because they could easily see long form, deep dive, technical explanations and articles that would never be feasible to assess in an interview.</span></p><div><hr></div><blockquote><p><em>Early in your career you built your own object migration approach in MicroStrategy and presented it at MicroStrategy World. That idea ended up making its way into the product. Walk us through how that unfolded and what you took away from it.</em></p></blockquote><p><span>I&#8217;ve always had a knack for pushing vendor software past its limits by thinking creatively. I play a lot of video games, and when I get stuck in a game, </span><strong><span>I ask myself, &#8220;What are the variables? What is my goal and what&#8217;s stopping me?&#8221; and work backwards</span></strong><span>. That same approach works very often when working with vendor software. They add so many features to meet such a wide range of needs that you can often use those features via interactions they didn&#8217;t intend, to unlock more potential.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!iwKq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c84cdc6-d5fc-41f3-a960-fb6289dca375_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!iwKq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c84cdc6-d5fc-41f3-a960-fb6289dca375_2816x1536.png 424w, https://substackcdn.com/image/fetch/$s_!iwKq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c84cdc6-d5fc-41f3-a960-fb6289dca375_2816x1536.png 848w, https://substackcdn.com/image/fetch/$s_!iwKq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c84cdc6-d5fc-41f3-a960-fb6289dca375_2816x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!iwKq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c84cdc6-d5fc-41f3-a960-fb6289dca375_2816x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!iwKq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c84cdc6-d5fc-41f3-a960-fb6289dca375_2816x1536.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5c84cdc6-d5fc-41f3-a960-fb6289dca375_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:5097564,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/209572437?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c84cdc6-d5fc-41f3-a960-fb6289dca375_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!iwKq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c84cdc6-d5fc-41f3-a960-fb6289dca375_2816x1536.png 424w, https://substackcdn.com/image/fetch/$s_!iwKq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c84cdc6-d5fc-41f3-a960-fb6289dca375_2816x1536.png 848w, https://substackcdn.com/image/fetch/$s_!iwKq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c84cdc6-d5fc-41f3-a960-fb6289dca375_2816x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!iwKq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c84cdc6-d5fc-41f3-a960-fb6289dca375_2816x1536.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Hacking the Game, Hacking the Software</figcaption></figure></div><p><span>In this particular case, when migrating objects from Dev to Prod, you would have to copy them in a particular order and piece by piece. It was laborious and error prone. It would automatically copy dependencies and I noticed that sometimes I&#8217;d get lucky and have a large nested change that did most of the work. Then I thought, &#8220;the best migration is to copy one object that takes everything with it,&#8221; and it occurred to me that there was this type of prompt that let the user pick any arbitrary object. The feature was intended to support things like &#8220;pick a filter&#8221; or &#8220;pick a metric&#8221;, but instead, I just put everything I needed to migrate in it, like a &#8220;package&#8221;. Then I could just drag that one item and it would take everything with it. It also gave the migration an artifact that could be tracked and audited to ensure only what you intended to migrate got migrated. It ended up solving a real pain point for us and I got a lot of great feedback when I shared the blog post and presented it at their annual conference. A year or so later they introduced the same feature as a first class, standalone product.</span></p><div><hr></div><blockquote><p><em>Before joining OpenAI, you were leading teams integrating LLMs into existing data workflows, back when that was still uncharted territory. What did that early work teach you, that shaped how you approach agents today?</em></p></blockquote><p><span>LLMs had just burst onto the scene, and my company was understandably cautious. We worked in the financial space, so had to be very careful around new technologies, but the benefits of LLMs were obvious from the start. To unblock the project and instil confidence with our security team, we created a chat wrapper around the OpenAI API and basically re-created an internal version of ChatGPT. This gave us the ability to monitor and filter prompts to make sure an employee wasn&#8217;t sending sensitive data to a third party.</span></p><p><span>Of course today, OpenAI has excellent support for sensitive data, including Enterprise ZDR (zero data retention) and administrative reports and tools. Shortly after I left that company (to join OpenAI!), they deprecated the homegrown system and adopted the ChatGPT Enterprise tools directly.</span></p><p><span>In that project, I did learn a lot about RAG (Retrieval Augmented Generation) and how we could improve answers by giving the models context. That stuff largely happens behind the scenes now via Plugins and as the models have significantly increased their context windows and capabilities. It showed me </span><strong><span>the difference in the quality of outputs that you get when providing the model access to company information to get more relevant results.</span></strong></p><div><hr></div><blockquote><p><em><span>At the DET Bay Area meetup, you argued that the core tenets of good data engineering matter more than ever in the AI era, and walked the audience through harness engineering: AGENTS.md files, data modeling contracts, and a cleanup agent called TIE-D. For readers who missed it, what is the harness, and why start an agent on cleanup work rather than net-new pipelines?</span></em></p></blockquote><p><strong><span>A harness is the software layer around an AI model that gives it the context, tools, rules and execution loop needed to do useful work.</span></strong><span> The model itself can reason and generate outputs, but the harness turns that capability into an agent that can operate on a real system. So when I talked about OpenAI&#8217;s blog post, &#8220;</span><a href="https://openai.com/index/harness-engineering/"><span>Harness engineering: leveraging Codex in an agent-first world</span></a><span>&#8221;, I&#8217;m referring to how you build up support for the model to operate in that layer in an efficient way. I focused on how to structure context and skills for the model, but it can also include the development of tools.</span></p><p><span>As for net-new vs cleanup, I think that was more of a &#8220;low hanging fruit&#8221; situation. Where things need to be cleaned up is pretty straightforward. We know what needs to be done, and the Agent can figure out how to do it. Cleanup work is also important because in addition to your AGENTS guidance, models are also going to pull from nearby examples. So legacy approaches or non-standard implementations can propagate like weeds. But </span><strong><span>when you&#8217;re creating something new, you need to be more involved in the decisions</span></strong><span>. I wouldn&#8217;t hand over the full architecture, schema, and design choices to an Agent (yet), but I would hand over the implementation. I think Codex is in a really good place right now such that I can engage on the designs and let it implement the details.</span></p><p><span>When I do want to run longer form net-new development, right now I&#8217;m leaning heavily on </span><strong><span>ExecPlans</span></strong><span>. Here are a few posts that talk about them:</span><a href="https://developers.openai.com/cookbook/articles/codex_exec_plans"><span> Using PLANS.md for multi-hour problem solving</span></a><span> and</span><a href="https://developers.openai.com/cookbook/examples/codex/code_modernization"><span> Modernizing your Codebase with Codex</span></a><span>. Think of it as a materialized version of Plan mode in Codex. </span><strong><span>We can talk through all of the design decisions and then I can entrust Codex to go to work on the full end to end implementation.</span></strong><span> It can build the tables, write and test the code and validate the data. I can check in along the way, review the PRs and after they merge, it can then handle the backfills. While it&#8217;s working, I can be designing and getting the next one ready and they can work in parallel. The amount of productivity increase is really incredible! It also leaves behind a durable lot of not just what it completed, but a documentation trail for why the decisions were made.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Vmc9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb49f49eb-46a0-4bec-a642-c5735ad2de39_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Vmc9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb49f49eb-46a0-4bec-a642-c5735ad2de39_2816x1536.png 424w, https://substackcdn.com/image/fetch/$s_!Vmc9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb49f49eb-46a0-4bec-a642-c5735ad2de39_2816x1536.png 848w, https://substackcdn.com/image/fetch/$s_!Vmc9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb49f49eb-46a0-4bec-a642-c5735ad2de39_2816x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!Vmc9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb49f49eb-46a0-4bec-a642-c5735ad2de39_2816x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Vmc9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb49f49eb-46a0-4bec-a642-c5735ad2de39_2816x1536.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b49f49eb-46a0-4bec-a642-c5735ad2de39_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6291772,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/209572437?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb49f49eb-46a0-4bec-a642-c5735ad2de39_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Vmc9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb49f49eb-46a0-4bec-a642-c5735ad2de39_2816x1536.png 424w, https://substackcdn.com/image/fetch/$s_!Vmc9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb49f49eb-46a0-4bec-a642-c5735ad2de39_2816x1536.png 848w, https://substackcdn.com/image/fetch/$s_!Vmc9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb49f49eb-46a0-4bec-a642-c5735ad2de39_2816x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!Vmc9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb49f49eb-46a0-4bec-a642-c5735ad2de39_2816x1536.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">AI Adoption Strategy Roadmap</figcaption></figure></div><div><hr></div><blockquote><p><em><span>Most teams reading this don&#8217;t have OpenAI&#8217;s headcount or infrastructure. If a small data team wanted to point an agent at their own pipelines, starting with cleanup work like you described, what is the first thing they need to write down, and what can wait?</span></em></p></blockquote><p><span>I think it starts with instructing the model on how it should build a pipeline. Most likely, you&#8217;ve already got some kind of framework or template that you use, so document that. We had a wiki page with instructions on how to use our internal ETL framework, so I started out by having Codex turn that into an `.md` file.</span></p><p><span>Then, as you use it, you iterate on what it got wrong. Anytime it doesn&#8217;t one-shot a pipeline and you have to correct it, add that instruction into the `.md` files. You can start out with just a single AGENTS.md and as it starts to get large, break it up into the </span><strong><span>Knowledge Store volumes</span></strong><span> I described </span><a href="https://www.youtube.com/watch?v=UARF0e_gPwM"><span>in my talk</span></a><span>. I think it&#8217;s best to discuss these standards with your team first and give everyone the opportunity to provide input. </span><strong><span>This will become the canonical way you build your data pipelines.</span></strong><span> Once you have that, then you can build an agent like TIE-D that can apply those standards broadly as they evolve over time.</span></p><p><span>Also consider if an ExecPlan would be a better fit than a running Agent. For example, I&#8217;ve found deprecating a table and all of its downstreams to be way more efficient for an ExecPlan than for TIE-D, because the ExecPlan can scope the entire amount of work, break it into phases, and burn it down, whereas TIE-D doesn&#8217;t have that high order planning routine and chips away at lots of smaller tasks with more loops and hence more resources.</span></p><div><hr></div><h4>&#128161; Editorial Note: TIE-D</h4><p><em>TIE-D is an autonomous Data Engineering (DE) agent utilized at OpenAI to handle maintenance tasks and cleanup. </em></p><p><em><strong>Key features of Tidy include:</strong></em></p><ul><li><p><em><strong>Purpose:</strong> It automates menial but essential &#8220;cleanup&#8221; work that is often too time-consuming for engineers to do manually, preventing the accumulation of technical debt and &#8220;crust&#8221; in the system.</em></p></li><li><p><em><strong>Evergreen Tasks:</strong> Tidy operates on the concept of &#8220;evergreen tasks,&#8221; which are high-level goals. Instead of being pointed at every individual issue, the agent actively searches for work, such as deprecating old tables, standardizing sensors, or removing redundant data quality (DQ) checks, and handles them independently.</em></p></li></ul><p><em>You can learn more about how TIE-D functions as a tireless maintenance assistant by watching <a href="https://www.youtube.com/watch?v=UARF0e_gPwM">Bryan&#8217;s talk at the July 2026 DET Bay Area Meetup</a>.</em> </p><div><hr></div><blockquote><p><em>You've been growing OpenAI's Data Engineering and Analytics Engineering team. Given everything agents now handle, what do you screen for in candidates, and what makes someone stand out?</em></p></blockquote><p><span>We focus a lot on design and architecture. I think the fundamentals of Data Warehousing will always be a critical skill. For a while, our industry favored software engineering skills more because that was the difference in being able to produce data or not. Frameworks were commonly celebrated because of the velocity that they enabled. </span><strong><span>But now we have near infinite velocity and the bottleneck is only being able to decide what we want to build.</span></strong><span> The price of building the wrong thing is higher than ever because a bad design decision can propagate so quickly. So I think </span><strong><span>you can never go wrong with mastering good data modeling foundations.</span></strong></p><div><hr></div><h3>Key Takeaways</h3><ul><li><p>AI agents make writing pipeline code nearly instantaneous, shifting the core bottleneck to system design. Sound data warehousing and modeling fundamentals are more critical than ever, as poor design choices now propagate at agentic speed.</p></li><li><p>Turning LLMs into reliable data agents requires a &#8220;harness&#8221;, which is a structured execution environment provided with explicit rules and contexts. Translating tribal knowledge into documented standards prevents model errors and eliminates long-term integration debt across teams.</p></li><li><p>Start agents on cleanup and deprecation tasks to remove legacy patterns before they contaminate model context. For complex net-new features, engineers should direct high-level architecture while assigning end-to-end execution (coding, testing, backfilling) to structured execution plans.</p></li><li><p>Despite shifts from manual CSV uploads to automated agents, data quality, exception handling, and creative problem-solving remain unchanged. Master these foundations, document technical insights publicly, and treat the IC and management tracks as complementary skill sets for overall growth.</p></li></ul><div><hr></div><h3>Community poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:913323}" data-component-name="PollToDOM"></div><p></p><div><hr></div><h3>&#128172; How to stay connected</h3><ul><li><p><a href="https://www.linkedin.com/in/bryanbrandow/">Bryan&#8217;s LinkedIn</a></p></li></ul><div><hr></div><h3>&#8505;&#65039; About Data Engineer Things</h3><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a><span> (DET) is a global community built by data engineers for data engineers. Subscribe to the </span><a href="https://dataengineerthings.substack.com/">newsletter</a><span> and follow us on </span><a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a><span> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</span></p><p>Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support our work.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Data Pulse Edition (July 2026)]]></title><description><![CDATA[Netflix's multimodal AI for video search, Context layer behind Spotify&#8217;s data assistant, Harness engineering for coding agent users, Reddit data tech stack (120M+ DAU)]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-fc3</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-fc3</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 21 Jul 2026 15:02:28 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!D1_B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.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_!D1_B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!D1_B!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!D1_B!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!D1_B!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!D1_B!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!D1_B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:174806,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/203261082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!D1_B!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!D1_B!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!D1_B!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!D1_B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F828b60eb-d690-4b6e-84bb-410c8142aee5_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p style="text-align: justify;">Hello Everyone,</p><p style="text-align: justify;">This is Ananda again, writing from Philly. Every few years, data engineering gets a new &#8220;hard part.&#8221; First, it was scale. Then it was real-time. Now it's context and the harnesses we build around it, the scaffolding that lets an AI system, or an agent acting on its behalf, actually reason about a warehouse full of tables instead of just querying it blindly.</p><p style="text-align: justify;">That raises a common question this edition keeps circling from different angles: what does it actually take to make a data system trustworthy enough for a person, a model, or an agent to rely on it?</p><p style="text-align: justify;">For some teams, that means deliberately building context, curating the business knowledge an AI system needs rather than assuming raw schemas will speak for themselves. For others, it means treating schema change as a coordination problem that spans systems, not a single isolated edit, or reconciling outputs from models that interpret the same data in entirely different ways and on entirely different timelines. And for teams building on coding agents, it means designing the feedback loops that let an agent's output be trusted before it ships.</p><p style="text-align: justify;">This edition spans a wide range, from large-scale data infrastructure choices to the less visible work of context, schema, and harnesses that make AI-assisted systems reliable.</p><p>&#8211; Ananda</p><div><hr></div><h3><strong>&#128218;</strong> Data Pulse</h3><h3><a href="https://engineering.atspotify.com/2026/6/encoding-your-domain-expert-the-context-layer-behind-spotifys-data-assistant">The Context Layer Behind Spotify&#8217;s Data Assistant</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Data and Context Engineering<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> Spotify built an AI data assistant (Vedder) to help teams query its 70,000+ dataset warehouse in plain English, recognizing that raw schemas alone can't capture the business context an LLM needs to write reliable SQL. The core innovation is the "cluster" model: domain-owned bundles of relevant tables, vetted question-SQL example pairs, and supplementary documentation, all curated by the data experts who actually understand that slice of the business.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cQuC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff3fb2b-7d88-4a6f-824c-c36f30451a34_780x313.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cQuC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff3fb2b-7d88-4a6f-824c-c36f30451a34_780x313.png 424w, https://substackcdn.com/image/fetch/$s_!cQuC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff3fb2b-7d88-4a6f-824c-c36f30451a34_780x313.png 848w, https://substackcdn.com/image/fetch/$s_!cQuC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff3fb2b-7d88-4a6f-824c-c36f30451a34_780x313.png 1272w, https://substackcdn.com/image/fetch/$s_!cQuC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff3fb2b-7d88-4a6f-824c-c36f30451a34_780x313.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cQuC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff3fb2b-7d88-4a6f-824c-c36f30451a34_780x313.png" width="780" height="313" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4ff3fb2b-7d88-4a6f-824c-c36f30451a34_780x313.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:313,&quot;width&quot;:780,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:112538,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/203261082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff3fb2b-7d88-4a6f-824c-c36f30451a34_780x313.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!cQuC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff3fb2b-7d88-4a6f-824c-c36f30451a34_780x313.png 424w, https://substackcdn.com/image/fetch/$s_!cQuC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff3fb2b-7d88-4a6f-824c-c36f30451a34_780x313.png 848w, https://substackcdn.com/image/fetch/$s_!cQuC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff3fb2b-7d88-4a6f-824c-c36f30451a34_780x313.png 1272w, https://substackcdn.com/image/fetch/$s_!cQuC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ff3fb2b-7d88-4a6f-824c-c36f30451a34_780x313.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://engineering.atspotify.com/2026/6/encoding-your-domain-expert-the-context-layer-behind-spotifys-data-assistant">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Semantic/context layer as infrastructure</strong>: This reframes the "semantic layer" problem data engineers already wrestle with (documenting tables, defining metrics, capturing knowledge) as a first-class system component, structured, versioned, health-monitored context (datasets + vetted query pairs + docs) that directly feeds a production AI system.</p></li><li><p><strong>Curation over automation validates governance investment</strong>: The finding that only 12.5% of auto-mined query history was usable as training examples is a strong data point for engineers arguing against "just scrape the logs" approaches to documentation/metadata. It shows human domain review remains the bottleneck worth investing in, not a step to skip.</p></li></ul><h3><a href="https://medium.com/pinterest-engineering/automated-schema-evolution-in-pinterests-next-generation-db-ingestion-framework-36c5c07070de">Automated Schema Evolution: Pinterest&#8217;s Next-Gen DB Ingestion Framework</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Databases and Data Engineering <br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> Pinterest built an automated schema evolution framework for its CDC-based ingestion pipeline (Kafka, Flink, Spark, Iceberg), treating schema changes as a cross-system contract rather than an atomic operation, since a single upstream change requires coordinated updates to generated code, storage schemas, and bootstrap logic across every stage. The system deliberately restricts automation to additive, backward-compatible changes (new columns, numeric precision widening) and pushes riskier changes like type narrowing or primary key edits into manual migration paths, using both push-based (DDL-triggered) and pull-based (daily diff) detection to catch drift.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UeDx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faacf3d22-eca9-401c-bf28-1a996bd89102_753x313.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UeDx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faacf3d22-eca9-401c-bf28-1a996bd89102_753x313.png 424w, https://substackcdn.com/image/fetch/$s_!UeDx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faacf3d22-eca9-401c-bf28-1a996bd89102_753x313.png 848w, https://substackcdn.com/image/fetch/$s_!UeDx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faacf3d22-eca9-401c-bf28-1a996bd89102_753x313.png 1272w, https://substackcdn.com/image/fetch/$s_!UeDx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faacf3d22-eca9-401c-bf28-1a996bd89102_753x313.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UeDx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faacf3d22-eca9-401c-bf28-1a996bd89102_753x313.png" width="753" height="313" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aacf3d22-eca9-401c-bf28-1a996bd89102_753x313.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:313,&quot;width&quot;:753,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:110230,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/203261082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faacf3d22-eca9-401c-bf28-1a996bd89102_753x313.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!UeDx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faacf3d22-eca9-401c-bf28-1a996bd89102_753x313.png 424w, https://substackcdn.com/image/fetch/$s_!UeDx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faacf3d22-eca9-401c-bf28-1a996bd89102_753x313.png 848w, https://substackcdn.com/image/fetch/$s_!UeDx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faacf3d22-eca9-401c-bf28-1a996bd89102_753x313.png 1272w, https://substackcdn.com/image/fetch/$s_!UeDx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faacf3d22-eca9-401c-bf28-1a996bd89102_753x313.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://medium.com/pinterest-engineering/automated-schema-evolution-in-pinterests-next-generation-db-ingestion-framework-36c5c07070de">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong><span>Reusable pattern for a universally painful problem</span></strong>: Schema drift breaking downstream pipelines is one of the most common CDC/ELT failure modes; the staged convergence model (schema &#8594; code &#8594; data) and the &#8220;additive-only&#8221; safety boundary are directly adaptable design patterns for anyone running Debezium/Kafka/Flink-style ingestion, not just Pinterest-scale teams.</p></li><li><p><strong><span>Concrete answer to &#8220;when is eventual consistency okay?&#8221;</span></strong>: The SLA-based approach tolerating temporary nulls in Iceberg while Flink/Spark catch up is a well-reasoned tradeoff data engineers can cite when deciding whether their own pipelines need atomic schema changes or can accept a bounded convergence window, which has real cost/complexity implications.</p></li><li><p><strong><span>Practical techniques for ambiguous DDL</span></strong>: The binlog-based audit trail for resolving ambiguous create table diffs (rename vs. drop-and-add) addresses a specific, recurring headache in schema-diffing tooling and is a useful reference for data engineers building or evaluating similar catalog/DDL-tracking systems.</p></li></ul><h3><a href="https://blog.bytebytego.com/p/how-netflix-is-using-multimodal-ai">How Netflix is Using Multimodal AI to Power Video Search</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Data Engineering and Multimodal AI <br>&#129504; <strong>Level</strong>: Advanced</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> Netflix built a multi-modal search system to let editorial teams find specific moments across 2,000+ hours of raw footage per season, running an ensemble of specialized AI models (character recognition, scene classification, dialogue transcription) rather than one generalist model, since each excels at its specific task but produces incompatible output formats and misaligned time intervals. The core engineering challenge was fusion: a three-stage pipeline first persists raw model outputs to Cassandra with zero transformation, then an offline job normalizes everything into one-second temporal buckets and merges overlapping annotations into unified records via upsert operations, and finally indexes those fused buckets into Elasticsearch as nested documents for querying.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RSuI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67bace0a-f82c-4bae-be3e-ef14824917d7_729x677.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RSuI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67bace0a-f82c-4bae-be3e-ef14824917d7_729x677.png 424w, https://substackcdn.com/image/fetch/$s_!RSuI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67bace0a-f82c-4bae-be3e-ef14824917d7_729x677.png 848w, https://substackcdn.com/image/fetch/$s_!RSuI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67bace0a-f82c-4bae-be3e-ef14824917d7_729x677.png 1272w, https://substackcdn.com/image/fetch/$s_!RSuI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67bace0a-f82c-4bae-be3e-ef14824917d7_729x677.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RSuI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67bace0a-f82c-4bae-be3e-ef14824917d7_729x677.png" width="729" height="677" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/67bace0a-f82c-4bae-be3e-ef14824917d7_729x677.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:677,&quot;width&quot;:729,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:234971,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/203261082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67bace0a-f82c-4bae-be3e-ef14824917d7_729x677.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!RSuI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67bace0a-f82c-4bae-be3e-ef14824917d7_729x677.png 424w, https://substackcdn.com/image/fetch/$s_!RSuI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67bace0a-f82c-4bae-be3e-ef14824917d7_729x677.png 848w, https://substackcdn.com/image/fetch/$s_!RSuI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67bace0a-f82c-4bae-be3e-ef14824917d7_729x677.png 1272w, https://substackcdn.com/image/fetch/$s_!RSuI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67bace0a-f82c-4bae-be3e-ef14824917d7_729x677.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://blog.bytebytego.com/p/how-netflix-is-using-multimodal-ai">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong><span>Data architecture for heterogeneous data sources</span></strong>: The decoupled three-stage pipeline (raw persistence &#8594; offline fusion &#8594; serving index) is a directly transferable architecture for any data engineer dealing with heterogeneous data sources on misaligned timelines or schemas, not just video, but IoT sensor streams, log correlation, or any scenario where multiple producers write disparate formats about the same entity.</p></li><li><p><strong><span>Concrete tradeoff reasoning</span></strong>: The explicit choice of throughput-over-freshness (offline batch fusion vs. real-time) and the upsert-with-composite-key approach to idempotent, incremental enrichment are patterns data engineers can reuse directly when designing their own late-arriving-data or multi-model-output merge jobs, plus a clear worked example of why bucket/grain size (1-second buckets) is a real design decision with volume tradeoffs (7.2M buckets from one archive).</p></li><li><p><strong><span>Data persistence justified by workload</span></strong>: Using Cassandra for high-throughput write-heavy ingestion and Elasticsearch for hybrid keyword+vector query serving each database used for what it&#8217;s actually good at is a clean case study for data engineers evaluating when to split storage layers by access pattern.</p></li></ul><h3><a href="https://www.junaideffendi.com/p/reddit-data-tech-stack">Reddit Data Tech Stack</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Data Infrastructure &amp; Engineering<br>&#129504; <strong>Level</strong>: Beginner</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> Reddit runs its massive data platform (120M+ daily active users, billions of comments, 500+ Kafka brokers processing tens of millions of messages/second) primarily on AWS, with GCP added via a commercial partnership that brought in BigQuery and Vertex AI. Kafka serves as the central event backbone, fanning data out to Flink (branded &#8220;Snooron,&#8221; built for real-time content safety rules) for stream processing and to Spark for batch reporting pipelines that feed Druid for real-time analytics; Debezium handles database change-data-capture into Kafka. Data is orchestrated with Airflow, stored raw in S3, and warehoused in BigQuery after migrating from Redshift.</p><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Real-world reference architecture at extreme scale: </strong>shows a concrete, battle-tested pattern (Kafka &#8594; Flink/Spark &#8594; Druid/BigQuery, with Debezium for CDC) that DEs can benchmark their own designs against, especially for systems that need real-time processing alongside batch analytics.</p></li><li><p><strong>Illustrates pragmatic multi-cloud trade-offs: </strong>Reddit&#8217;s AWS-for-core-infra and GCP-for-BigQuery/Vertex-AI split is a useful case study for DEs evaluating when cloud choices are technical vs. business-driven and how to run hybrid-cloud data platforms in practice.</p></li><li><p><strong>Concrete tool-selection rationale:</strong> explains why specific tools were chosen for specific jobs (Flink for low-latency safety rules, Spark for batch reporting, Druid for fast aggregated queries, Airflow for orchestration), giving DEs a framework for matching tools to workload characteristics rather than defaulting to one-size-fits-all.</p></li></ul><h3><a href="https://martinfowler.com/articles/harness-engineering.html">Harness engineering for coding agent users</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Agentic Engineering<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> The author proposes a mental model for "harness engineering"  everything around a coding agent besides the model itself built on two control types: feedforward "guides" that steer the agent before it acts, and feedback "sensors" that let it self-correct after, each of which can be computational (fast, deterministic tools like linters and tests) or inferential (slower, probabilistic LLM-based judgment).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ljCO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2322e71-32f4-4a0d-82c4-4ee77d70ef41_803x450.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ljCO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2322e71-32f4-4a0d-82c4-4ee77d70ef41_803x450.png 424w, https://substackcdn.com/image/fetch/$s_!ljCO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2322e71-32f4-4a0d-82c4-4ee77d70ef41_803x450.png 848w, https://substackcdn.com/image/fetch/$s_!ljCO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2322e71-32f4-4a0d-82c4-4ee77d70ef41_803x450.png 1272w, https://substackcdn.com/image/fetch/$s_!ljCO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2322e71-32f4-4a0d-82c4-4ee77d70ef41_803x450.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ljCO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2322e71-32f4-4a0d-82c4-4ee77d70ef41_803x450.png" width="803" height="450" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b2322e71-32f4-4a0d-82c4-4ee77d70ef41_803x450.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:450,&quot;width&quot;:803,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:101043,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/203261082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2322e71-32f4-4a0d-82c4-4ee77d70ef41_803x450.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ljCO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2322e71-32f4-4a0d-82c4-4ee77d70ef41_803x450.png 424w, https://substackcdn.com/image/fetch/$s_!ljCO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2322e71-32f4-4a0d-82c4-4ee77d70ef41_803x450.png 848w, https://substackcdn.com/image/fetch/$s_!ljCO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2322e71-32f4-4a0d-82c4-4ee77d70ef41_803x450.png 1272w, https://substackcdn.com/image/fetch/$s_!ljCO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2322e71-32f4-4a0d-82c4-4ee77d70ef41_803x450.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://martinfowler.com/articles/harness-engineering.html">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong><span>Data pipelines already have sensors: </span></strong>Schema validations, data quality checks, and lineage tools map directly onto the feedback controls, meaning data engineers can bolt on harnesses to AI-assisted pipeline code fairly cheaply compared to teams without that tooling.</p></li><li><p><strong><span>&#8220;Continuous drift&#8221; is a core data engineering problem:</span></strong> schema drift, stale data, degrading freshness SLAs, and upstream dependency changes are exactly the kinds of ambient, out-of-lifecycle issues that need dedicated sensors. The framework provides a language for building agent-monitored drift detection into data pipelines.</p></li><li><p><strong><span>The &#8220;behavior harness&#8221; gap is evident for data transformations:</span></strong> verifying that a data transformation is semantically correct is hard when the tests themselves may be AI-generated, which matters a lot in data engineering, where silent logic errors in transformations can corrupt downstream data without ever throwing an error.</p></li></ul><h3><a href="https://pipeline2insights.substack.com/p/the-human-layer-of-technical-work">The Human Layer of Technical Work</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Career Development<br>&#129504; <strong>Level</strong>: Beginner</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> &#8220;Human skills&#8221; like communication, empathy, and psychological safety matter as much as technical expertise for data professionals, especially as AI takes on more of the technical work itself, since AI can imitate connection but not genuine human presence. Human skills are as learnable and systematic as technical skills, and they can be developed through small, repeatable practices (pausing before reacting, asking a genuine question before presenting solutions) rather than treating them as innate traits. Most workplace friction technical professionals experience (defensive colleagues, meetings gone wrong, poorly received rollouts) has a human root cause, not a technical one.</p><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong><span>Concrete tactics for cross-functional work:</span></strong> DEs constantly translate technical concepts (schemas, data quality issues, root-cause explanations) for non-technical stakeholders; the advice on simplifying without undermining a colleague and on reframing &#8220;fix the dashboard&#8221; requests as source-data issues is directly applicable to that daily friction.</p></li><li><p><strong><span>Frames soft skills as a learnable, iterative system:</span></strong> appeals to a technical audience by treating communication and psychological safety like any other skill to practice and measure (small repeatable habits: pausing, asking questions, checking in after a tense exchange), making it easier for DEs to actually act on rather than dismiss as vague advice.</p></li></ul><div><hr></div><h3><strong>&#128467; DET Bay Area Meetup on July 23</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MW6X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8d91b2a-ff44-4e44-b6d2-161edf0f4bb5_1600x900.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MW6X!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8d91b2a-ff44-4e44-b6d2-161edf0f4bb5_1600x900.png 424w, https://substackcdn.com/image/fetch/$s_!MW6X!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8d91b2a-ff44-4e44-b6d2-161edf0f4bb5_1600x900.png 848w, https://substackcdn.com/image/fetch/$s_!MW6X!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8d91b2a-ff44-4e44-b6d2-161edf0f4bb5_1600x900.png 1272w, https://substackcdn.com/image/fetch/$s_!MW6X!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8d91b2a-ff44-4e44-b6d2-161edf0f4bb5_1600x900.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MW6X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8d91b2a-ff44-4e44-b6d2-161edf0f4bb5_1600x900.png" width="462" height="259.875" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f8d91b2a-ff44-4e44-b6d2-161edf0f4bb5_1600x900.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:462,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&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_!MW6X!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8d91b2a-ff44-4e44-b6d2-161edf0f4bb5_1600x900.png 424w, https://substackcdn.com/image/fetch/$s_!MW6X!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8d91b2a-ff44-4e44-b6d2-161edf0f4bb5_1600x900.png 848w, https://substackcdn.com/image/fetch/$s_!MW6X!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8d91b2a-ff44-4e44-b6d2-161edf0f4bb5_1600x900.png 1272w, https://substackcdn.com/image/fetch/$s_!MW6X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8d91b2a-ff44-4e44-b6d2-161edf0f4bb5_1600x900.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p><span>Join us at </span>Microsoft's Mountain View office<span> on Thursday, July 23rd</span>,<span> for an evening of technical talks, networking, and good food.</span></p><ul><li><p><strong>When</strong><span>: 5:00 PM to 8:30 PM on Thursday, July 23rd</span></p></li><li><p><strong>Where</strong><span>: Microsoft&#8217;s Mountain View office</span></p></li><li><p><strong><span>&#128073;&#127996; </span><a href="https://luma.com/fti7awlx">RSVP</a></strong></p></li></ul><p><em><span>(&#127908; Interested in speaking at our meetups or online webinars? Submit talk proposals </span><a href="http://meetup.dataengineerthings.org/cfp">here</a><span>.)</span></em></p><div><hr></div><h3><strong>&#128142; Open Source Gem</strong></h3><h3><a href="https://olake.io/docs/">OLake Go: Efficient, quick, and scalable data ingestion for real-time analytics.</a></h3><p style="text-align: justify;">OLake Go is a high-performance platform that replicates data from operational datastores (PostgreSQL, MySQL, MongoDB, Oracle, Kafka, DB2, MSSQL, S3) into open lakehouse storage, writing either Apache Iceberg tables (with catalog support for AWS Glue, Hive Metastore, and REST/JDBC catalogs like Nessie, Polaris, and Unity Catalog) or Parquet files on object storage such as S3, MinIO, and GCS. It supports Full Refresh, Incremental Sync, and Change Data Capture depending on the source, with core capabilities including parallelized chunking for faster large-dataset scans, stateful/resumable syncs that recover from interruptions without full resyncs, and per-job configurable connection limits. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!D4a3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb5b9fd-2dd6-4f69-a101-d9c9f25b2392_840x424.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!D4a3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb5b9fd-2dd6-4f69-a101-d9c9f25b2392_840x424.png 424w, https://substackcdn.com/image/fetch/$s_!D4a3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb5b9fd-2dd6-4f69-a101-d9c9f25b2392_840x424.png 848w, https://substackcdn.com/image/fetch/$s_!D4a3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb5b9fd-2dd6-4f69-a101-d9c9f25b2392_840x424.png 1272w, https://substackcdn.com/image/fetch/$s_!D4a3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb5b9fd-2dd6-4f69-a101-d9c9f25b2392_840x424.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!D4a3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb5b9fd-2dd6-4f69-a101-d9c9f25b2392_840x424.png" width="840" height="424" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9fb5b9fd-2dd6-4f69-a101-d9c9f25b2392_840x424.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:424,&quot;width&quot;:840,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:285095,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/203261082?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb5b9fd-2dd6-4f69-a101-d9c9f25b2392_840x424.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!D4a3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb5b9fd-2dd6-4f69-a101-d9c9f25b2392_840x424.png 424w, https://substackcdn.com/image/fetch/$s_!D4a3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb5b9fd-2dd6-4f69-a101-d9c9f25b2392_840x424.png 848w, https://substackcdn.com/image/fetch/$s_!D4a3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb5b9fd-2dd6-4f69-a101-d9c9f25b2392_840x424.png 1272w, https://substackcdn.com/image/fetch/$s_!D4a3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb5b9fd-2dd6-4f69-a101-d9c9f25b2392_840x424.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://github.com/datazip-inc/olake">source</a></figcaption></figure></div><p><strong>&#128161; Why is this useful for DEs?</strong></p><ul><li><p><strong><span>Faster, more reliable data pipelines:</span></strong> parallelized chunking speeds up large full-table scans, while stateful/resumable syncs mean a crash or network blip doesn&#8217;t force a costly resync from scratch, cutting both processing time and manual intervention.</p></li><li><p><strong><span>Cleaner data with less pipeline engineering:</span></strong> automatic primary-key deduplication, schema evolution, and JSON normalization (flattening nested fields into columns) handle work DEs would otherwise hand-code, while two-phase commits prevent duplicate writes or inconsistent state on the Iceberg side.</p></li><li><p><strong><span>Flexibility to fit existing lakehouse architecture:</span></strong> support for multiple Iceberg catalogs (Glue, Hive Metastore, REST catalogs like Nessie/Polaris/Unity) and both Iceberg and plain Parquet outputs means DEs can plug it into whatever stack they already run, rather than being locked into one catalog or storage layout.</p></li></ul><p>&#128073; <strong>GitHub</strong>: <a href="https://github.com/datazip-inc/olake">https://github.com/datazip-inc/olake</a></p><div><hr></div><h3><strong>&#128161; DE Tip of the Month </strong></h3><p style="text-align: justify;"><strong>Read Replica vs. CDC: Choosing how to offload reads from your source database</strong></p><p style="text-align: justify;">Read replicas answer "how do I stop hammering my primary with more of the same kind of query?" CDC answers "how do I ask fundamentally different questions of this data, cheaply, with history?" They're not mutually exclusive; increasingly, teams run both from the same source, routing each consumer to whichever pattern fits its query shape.</p><p><strong>&#128210; Rules of thumb</strong></p><p style="text-align: justify;"><strong>When to choose a Read Replica</strong></p><ul><li><p><strong>Same-engine fit:</strong> Consumers need identical SQL dialects, indexes/transactional guarantees to the source (OLTP-shaped tools, point lookups) with near-zero freshness lag.</p></li></ul><ul><li><p><strong>Low complexity, moderate scale:</strong> Minimal new tooling/schema to maintain beyond monitoring replication lag, cost-effective only while scale stays moderate, since replica compute tracks primary engine pricing.</p></li></ul><p style="text-align: justify;"><strong>When to choose CDC into a cheaper store</strong></p><ul><li><p><strong>Analytical fit, decoupled cost:</strong> Workload is analytical (aggregations, joins, trend analysis) where OLTP engines underperform, CDC lets you pay scan-optimized storage/compute rates instead of OLTP-tuned pricing.</p></li><li><p><strong>History and fan-out, less source pressure:</strong> CDC&#8217;s append-only change stream gives you history/time-travel and can feed multiple consumers (warehouse, search, cache, ML) from one pipeline, without adding replication load on the source as consumer count grows.</p></li></ul><div><hr></div><h3>&#128202; Community Poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:781426}" data-component-name="PollToDOM"></div><p>Until the next one.</p><p><a href="https://www.linkedin.com/in/anandaganesh/">Ananda</a>, <a href="https://www.linkedin.com/in/sukanyawadawadagi/">Sukanya</a>, &amp; <a href="https://www.linkedin.com/in/chozhan-d-m/">Chozhan</a></p><div><hr></div><h4>&#8505;&#65039; About Data Engineer Things</h4><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Community Spotlight Edition (July 2026)]]></title><description><![CDATA[Lessons from Airflow, open source, and AI workflows on building data platforms that can adapt as systems, tools, and semantics drift.]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-095</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-095</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 07 Jul 2026 15:02:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!SUU4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.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_!SUU4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SUU4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!SUU4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!SUU4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!SUU4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SUU4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:244894,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193526589?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!SUU4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!SUU4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!SUU4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!SUU4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6f32f64-3773-415b-b075-6d92cdb496c6_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hi everyone,</p><p><span>In our next community spotlight, we are chatting with </span><strong>Vikram Koka</strong><span>, Chief Strategy Officer at Astronomer and Apache Airflow PMC (Project Management Committee) member.</span></p><p>Vikram has been part of Airflow&#8217;s modern evolution since 2019, contributing to major milestones including Scheduler High Availability in Airflow 2.0, data-driven scheduling, dynamic tasks, setup and teardown, and the program management of Airflow 3. Many of you may also recognize him from <strong><a href="https://www.dataengineeringopenforum.com/#agenda">Data Engineering Open Forum 2026</a></strong>, where he joined the closing panel, <strong>Frontiers of Data: The Future of Data Engineering in an AI World</strong>, alongside leaders from Netflix and OpenAI.</p><p>In this interview, we discuss Vikram&#8217;s journey across three decades of data engineering, Airflow&#8217;s evolution, why data drift remains a constant challenge, and how AI is expanding the role of data engineers from moving data to understanding context and building reliable workflows.</p><p>Let&#8217;s dive in and walk through Vikram&#8217;s journey.</p><p>- Shubham &amp; Eddy</p><div><hr></div><h3>&#128467; DET Meetups in Toronto and Seattle</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YUZM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f44623b-7195-4428-8d11-855abc29328d_1920x1080.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YUZM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f44623b-7195-4428-8d11-855abc29328d_1920x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!YUZM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f44623b-7195-4428-8d11-855abc29328d_1920x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!YUZM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f44623b-7195-4428-8d11-855abc29328d_1920x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!YUZM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f44623b-7195-4428-8d11-855abc29328d_1920x1080.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YUZM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f44623b-7195-4428-8d11-855abc29328d_1920x1080.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2f44623b-7195-4428-8d11-855abc29328d_1920x1080.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:222719,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193526589?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f44623b-7195-4428-8d11-855abc29328d_1920x1080.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!YUZM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f44623b-7195-4428-8d11-855abc29328d_1920x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!YUZM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f44623b-7195-4428-8d11-855abc29328d_1920x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!YUZM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f44623b-7195-4428-8d11-855abc29328d_1920x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!YUZM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f44623b-7195-4428-8d11-855abc29328d_1920x1080.jpeg 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>We have two meetup events coming up this month:</p><ul><li><p>Seattle meetup at Downtown Seattle on Thu, July 16 (<strong><a href="https://luma.com/sbonpt98">RSVP</a></strong>)</p></li><li><p>Toronto meetup at Downtown Toronto on Thu, July 16 <span>(</span><strong><a href="https://luma.com/r77rtu0u">RSVP</a></strong><span>)</span></p></li></ul><p><em><span>(&#127908; Interested in speaking at our meetups or online webinars? Submit talk proposals </span><a href="http://meetup.dataengineerthings.org/cfp">here</a><span>.)</span></em></p><div><hr></div><h3>Spotlight: Vikram Koka</h3><div class="pullquote"><p style="text-align: justify;">&#8220;Before you solve a problem, you look at it and think, &#8216;Oh man, this is incredibly complicated. How are we ever going to pull this off?&#8217; But the moment you crack it, you look back and say, &#8216;Huh, that actually wasn&#8217;t all that difficult after all.&#8217;&#8221;</p></div><blockquote><p><em><span>For people who may not know your journey, how would you describe the path that brought you here?</span></em></p></blockquote><p><span>My journey really kicked off during my master&#8217;s program at UC Santa Barbara, where I worked on the GNU Debugger (GDB), which is now distributed as part of Linux. That was my early introduction to open source quite a long time ago.</span></p><p><span>From there, I moved to Silicon Valley and got into manufacturing automation for semiconductors. My first project was in user interfaces, but my second project shifted into the data space where I was gathering data from manufacturing systems to provide process analysis. That organically evolved into building a full-fledged data warehouse pulling from manufacturing, supply chain, and financial systems to build dashboards and star schemas. I technically wrote my first data pipeline about three decades ago without ever knowing that &#8220;data pipeline&#8221; would become the actual term for it!</span></p><p><span>Since then, I&#8217;ve been through a variety of Silicon Valley companies. My last gig before Astronomer was in IoT, where I dealt with the massive explosion of data coming from embedded devices. We had to microbatch events over cellular networks purely for financial reasons, because sending data on every single event is just too expensive. That sparked my desire to get back heavily into data. When the opportunity at Astronomer presented itself in 2019, I saw the massive potential of Apache Airflow and the impending data explosion, and I leaped right in.</span></p><div><hr></div><blockquote><p><em>If you were to reflect back on your career, what did you feel was a decision that had the biggest impact on your trajectory?</em></p></blockquote><p>Honestly, the biggest impact was <strong>my willingness to be non-linear</strong>.</p><p>We are often taught straight out of school to look at career trajectories in a very linear fashion. I was completely willing to throw that out the window. My primary focus has always been on what I enjoy most, what needs to change, and a willingness to jump across completely different roles and domains. Whether I was acting as an executive, an individual contributor, working in open source, or working in commercial software, the title didn&#8217;t matter. I just wanted to make a difference.</p><p>As a technologist, your core desire should be deeply understanding <em>why</em> someone wants a problem solved and having the empathy to make their life better through technology. Remaining open to non-linear shifts allowed me to focus on that.</p><div><hr></div><blockquote><p><em>What is the most proud you&#8217;ve been solving a problem? Is there a challenge that stands out?</em></p></blockquote><p>I&#8217;m honestly not sure I can pick just one. I think this is true for most engineers: <strong>before you solve a problem, you look at it and think,</strong> <strong>&#8220;Oh man, this is incredibly complicated. How are we ever going to pull this off?&#8221; But the moment you crack it, you look back and say, &#8220;Huh, that actually wasn&#8217;t all that difficult after all.&#8221; </strong>I used to see this all the time with engineers when filing patent applications; once the problem is solved, they feel the solution is totally obvious.</p><p>Because of that, I don&#8217;t really dwell on past problems. I look forward. I have never been more excited about the scale of problems we can solve right now. We are standing on the shoulders of giants. With the current state of AI, computing infrastructure, and cloud evolution, we can tackle massive problems today that were completely impossible before. It&#8217;s always about the <em>next</em> problem for me.</p><div><hr></div><blockquote><p><em>At the time when you joined Apache Airflow, what did you see were the biggest limitations, and how has the project evolved?</em></p></blockquote><p>I officially got involved in December 2019. At that time, Airflow had roughly 100,000 to 180,000 downloads a month, and the absolute biggest hurdles were <strong>reliability and enterprise scalability</strong>. Essentially, user code was running directly inside the scheduler, causing it to crash frequently because it wasn&#8217;t designed for high availability.</p><p>Recognizing this, I co-authored an <a href="https://cwiki.apache.org/confluence/spaces/AIRFLOW/pages/103092651/AIP-15+Support+Multiple-Schedulers+for+HA+Better+Scheduling+Performance">Airflow Improvement Proposal (AIP)</a> to build a highly available, active-active scheduler. <a href="https://www.astronomer.io/blog/airflow-2-scheduler/">We released it as part of Airflow 2 in December 2020</a>. That completely catapulted the project&#8217;s growth because enterprises could finally deploy it reliably at massive scale. Today, Airflow sees tens of millions of downloads a month and is utilized by an estimated 80,000 to 90,000 enterprises globally.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_QCT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67447b06-2a52-47d1-b649-5f4389e7cd02_2098x1172.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_QCT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67447b06-2a52-47d1-b649-5f4389e7cd02_2098x1172.png 424w, https://substackcdn.com/image/fetch/$s_!_QCT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67447b06-2a52-47d1-b649-5f4389e7cd02_2098x1172.png 848w, https://substackcdn.com/image/fetch/$s_!_QCT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67447b06-2a52-47d1-b649-5f4389e7cd02_2098x1172.png 1272w, https://substackcdn.com/image/fetch/$s_!_QCT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67447b06-2a52-47d1-b649-5f4389e7cd02_2098x1172.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_QCT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67447b06-2a52-47d1-b649-5f4389e7cd02_2098x1172.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/67447b06-2a52-47d1-b649-5f4389e7cd02_2098x1172.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Airflow 3.x architecture diagram showing the decoupled Execution API Server and worker subprocesses&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Airflow 3.x architecture diagram showing the decoupled Execution API Server and worker subprocesses" title="Airflow 3.x architecture diagram showing the decoupled Execution API Server and worker subprocesses" srcset="https://substackcdn.com/image/fetch/$s_!_QCT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67447b06-2a52-47d1-b649-5f4389e7cd02_2098x1172.png 424w, https://substackcdn.com/image/fetch/$s_!_QCT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67447b06-2a52-47d1-b649-5f4389e7cd02_2098x1172.png 848w, https://substackcdn.com/image/fetch/$s_!_QCT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67447b06-2a52-47d1-b649-5f4389e7cd02_2098x1172.png 1272w, https://substackcdn.com/image/fetch/$s_!_QCT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67447b06-2a52-47d1-b649-5f4389e7cd02_2098x1172.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Airflow 3 Architecture (<a href="https://airflow.apache.org/docs/apache-airflow/stable/installation/upgrading_to_airflow3.html">Source</a>)</figcaption></figure></div><p>Looking at <a href="https://airflow.apache.org/blog/airflow-three-point-oh-is-here/">Airflow 3</a>, the project has taken another massive leap forward based on three pillars:</p><ul><li><p><strong>Run tasks anywhere:</strong> You are no longer restricted to a single cluster or data center; you can dynamically run tasks across local CPUs, remote GPUs, etc.</p></li><li><p><strong>Run tasks in any language:</strong> While Airflow is natively Python-based, we have expanded support to execute tasks written in Java, Go, and soon TypeScript.</p></li><li><p><strong>Run tasks at any time:</strong> Moving past strictly batch schedules to support API triggers and message queues, making it perfectly suited to handle heavy AI training and inference workloads.</p></li></ul><div><hr></div><blockquote><p><em>What are some lessons from Airflow&#8217;s evolution that data engineers can apply when building their own internal platforms?</em></p></blockquote><p>The number one lesson is: <strong>Don&#8217;t get locked in. Prioritize optionality.</strong></p><p>The biggest consistency in data engineering from my very first pipeline 30 years ago to today is <strong>data drift</strong>. Data formats change constantly, and the semantic meaning of data shifts over time, which regularly throws software engineers for a loop. Because change is inevitable, your tools and frameworks must remain highly adaptable.</p><p>What made Airflow incredibly successful is that we intentionally chose to be <strong>completely unopinionated</strong>. We refused to pick winners among databases, file systems, or cloud providers. We joke internally that <em>we are very opinionated about being unopinionated.</em> For instance, with AI workloads today, people are heavily reliant on commercial vendor models like OpenAI or Anthropic. But we built Airflow with the optionality to easily support self-hosted, open-source models tomorrow because security, privacy, and architecture needs will inevitably change. Build your internal platforms with that exact same flexibility.</p><div><hr></div><blockquote><p><em>What do you think is the role of data engineering with AI these days?</em></p></blockquote><p>The role of data engineers has dramatically expanded, and engineers need to embrace that. The technical elements like knowing how to construct a pipeline remain fundamentally important. However, the <strong>semantic understanding</strong> of data is now paramount. This means understanding what the data actually represents from a strict business context standpoint.</p><p>In the context of AI, the objective isn&#8217;t just to dump a massive haystack of data on an LLM and assume it will find the needle. If you do that, it will hallucinate heavily and cost you a fortune. </p><div class="callout-block" data-callout="true"><p>The true role of a data engineer today is to curate and feed the AI agent the smallest possible amount of the right, highly relevant data at the exact right time. </p></div><p>To do that successfully, you have to deeply understand the business imperatives and context. It is a non-trivial, holistic challenge, but a massive opportunity for the field.</p><div><hr></div><blockquote><p><em>What did you learn by automating your own work process?</em></p></blockquote><p><strong>&#128161;Editorial Note: </strong><em>As a PMC member of Apache Airflow, Vikram tracks many Airflow Improvement Proposals (AIPs) across Confluence specs, GitHub PRs, and the repository file tree. Every week, he was spending hours cross-referencing these sources to understand what had shipped, what was still open, and where things actually stood. So he decided to build an AI skill to do that work for him. </em></p><p><span>&#128073; Read Vikram&#8217;s full write-up </span><strong><a href="https://medium.com/apache-airflow/skills-vs-pipeline-two-ways-to-build-the-same-ai-workflow-b5dd7088e122">HERE</a></strong><span>.</span></p><p><em><span>With that context, here is Vikram&#8217;s answer:</span></em></p><p>When I set out to automate my own daily job of tracking all the proposals, Confluence specs, and GitHub PRs happening across the open-source Airflow community, it turned into an absolute voyage of discovery.</p><p>The biggest thing I learned is that if you just give an AI agent a prompt and let it autonomously call tools to gather data, the potential for drift and hallucination skyrockets. For instance, if you ask an agent to figure out if a project is &#8220;70% complete,&#8221; it really struggles. As humans, we know one PR might be massive while another is tiny, but a stochastic model tries to guess and make assumptions, which drives you nuts.</p><p>To solve it, I had to break the process down into a 12-step structured pipeline:</p><ul><li><p><strong>Use APIs for Data Collection:</strong> I stopped letting the agent collect the data. Instead, I used standard, deterministic APIs to pull the raw text from Confluence and GitHub.</p></li><li><p><strong>Isolate the Agent for Reasoning:</strong> I fed that specific data to the agent and restricted its job <em>strictly</em> to reasoning over what was provided.</p></li><li><p><strong>Layer standard code on top of AI:</strong> I introduced an evaluation model to check the reasoning, but I used a traditional, deterministic Python process to actually apply the final corrections.</p></li></ul><p>By separating what an agent is actually good at (reasoning) from what deterministic code is good at (data collection and structured execution), I finally got a reliable, repeatable report.</p><p>But the most surprising lesson of all was that this pipeline approach was actually <strong>cheaper and faster</strong>. A pure agentic workflow builds up context with every sequential tool call, causing token usage to explode quadratically  O(n<sup>2</sup>). By orchestrating it as a pipeline where steps are independent, token growth stays linear O(n).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Od5R!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45615822-745d-4dba-b347-d155fa063635_641x286.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Od5R!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45615822-745d-4dba-b347-d155fa063635_641x286.webp 424w, https://substackcdn.com/image/fetch/$s_!Od5R!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45615822-745d-4dba-b347-d155fa063635_641x286.webp 848w, https://substackcdn.com/image/fetch/$s_!Od5R!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45615822-745d-4dba-b347-d155fa063635_641x286.webp 1272w, https://substackcdn.com/image/fetch/$s_!Od5R!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45615822-745d-4dba-b347-d155fa063635_641x286.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Od5R!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45615822-745d-4dba-b347-d155fa063635_641x286.webp" width="641" height="286" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/45615822-745d-4dba-b347-d155fa063635_641x286.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:286,&quot;width&quot;:641,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6916,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193526589?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45615822-745d-4dba-b347-d155fa063635_641x286.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Od5R!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45615822-745d-4dba-b347-d155fa063635_641x286.webp 424w, https://substackcdn.com/image/fetch/$s_!Od5R!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45615822-745d-4dba-b347-d155fa063635_641x286.webp 848w, https://substackcdn.com/image/fetch/$s_!Od5R!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45615822-745d-4dba-b347-d155fa063635_641x286.webp 1272w, https://substackcdn.com/image/fetch/$s_!Od5R!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45615822-745d-4dba-b347-d155fa063635_641x286.webp 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Token Use Comparison (<a href="https://medium.com/apache-airflow/skills-vs-pipeline-two-ways-to-build-the-same-ai-workflow-b5dd7088e122">Source</a>)</figcaption></figure></div><p>Ultimately, it taught me a fundamental truth about modern orchestration: the best way to get predictable, deterministic outcomes out of AI agents is to wrap them inside a structured data pipeline.</p><div><hr></div><blockquote><p><em>When you&#8217;re hiring data engineers today, what are some qualities or signals that tell you someone is likely to have an outsized impact?</em></p></blockquote><p>There are three key signals I look for:</p><ul><li><p><strong>Technical Competence:</strong> This is the baseline requirement. You need enough technical depth to apply solid system-level thinking to complex architectures.</p></li><li><p><strong>Curiosity:</strong> I value intense curiosity because it drives an engineer to learn the semantic nature of data and understand its broader impact on the organization.</p></li><li><p><strong>Business Correlation:</strong> The best engineers can step outside of the technical box and connect their code directly to business imperatives. They don&#8217;t just build a pipeline because they were told to; they ask <em>why</em> someone needs this to happen and map the technical tools directly to that business outcome.</p></li></ul><div><hr></div><blockquote><p><em>What lessons from managing commercial products translate well to open-source projects, and what doesn&#8217;t apply?</em></p></blockquote><p><strong>What translates perfectly:</strong> You must always ask yourself, <em>&#8220;Why does a user or customer actually care to use my product?&#8221;</em> Whether it&#8217;s a paid commercial enterprise system or a free open-source project, the core human element is identical. You have to listen to your users, understand their pain points, and focus intensely on solving their specific problems.</p><p><strong>What is completely different:</strong> The dynamics of <strong>alignment and community</strong> in open source. In a commercial setting, you have organizational authority. In a project like Airflow, you are dealing with a massive community, currently around 3,800 total contributors, with 300 to 500 actively writing code every single month. These people are contributing out of pure passion on their weekends, late nights, and days off.</p><p>Managing this is a delicate balancing act. You have to encourage them, value their time, and review their PRs quickly, or they will walk away. However, you also have to maintain strict alignment with the long-term architectural goals, code maintainability, and security implications of the project. Saying &#8220;no&#8221; to a passionate volunteer because their contribution doesn&#8217;t fit the long-term roadmap is infinitely harder than managing product alignment in a commercial business.</p><div><hr></div><blockquote><p><em>Who should we spotlight next in the Data Engineer Things Community Newsletter, and why?</em></p></blockquote><p><span>I would say Laura Pruitt from Netflix or Paul Ellwood from Open AI.</span></p><p><span>I was very impressed by the conversation we had at the </span><a href="https://www.dataengineeringopenforum.com"><span>Data Engineering Open Forum</span></a><span> earlier this year. From a business impact perspective and the quality of thinking about how data engineering is evolving, I think Laura would be a great conversation for the DET community.<br><br>We discussed Data Drift as a key consistent challenge in Data Engineering since I wrote my first data pipeline three decades ago.</span></p><p><span>Paul touched on AI drift as part of the Forum panel discussion. I think that would be a great topic to have Paul expand on.</span></p><p><span>&#128161; </span><strong>Editorial Note:</strong><span> </span><em><span>The discussion Vikram references came from the DEOF 2026 closing panel, </span><strong>Frontiers of Data: The Future of Data Engineering in an AI World</strong><span>. The panel covered many of the same themes from this spotlight, including data drift, AI drift, semantic context, and the evolving role of data engineers.</span></em></p><p><em><span>Watch the full panel here:</span></em></p><div id="youtube2-k8-UZNSvQF0" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;k8-UZNSvQF0&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/k8-UZNSvQF0?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><div><hr></div><h3>Key Takeaways</h3><ul><li><p><strong>Semantic understanding is now part of data engineering:</strong> Data engineers need to understand business context, not just move data, so they can provide AI systems with the right context.</p></li><li><p><strong>Optionality is a core platform principle:</strong> Airflow&#8217;s success comes from staying flexible across databases, clouds, runtimes, and model providers.</p></li><li><p><strong>Data drift remains the constant challenge:</strong> The interview connects long-standing data drift with newer challenges like semantic drift and AI drift.</p></li><li><p><strong>High-impact data engineers connect tech to business:</strong> The strongest engineers combine technical depth, curiosity, and the ability to map their work to business outcomes.</p></li></ul><div><hr></div><h3>Community poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:491255}" data-component-name="PollToDOM"></div><div><hr></div><h3>&#128172; How to stay connected</h3><ul><li><p><a href="https://www.linkedin.com/in/vikramkoka/">LinkedIn</a></p></li><li><p><a href="https://www.astronomer.io">Astronomer</a></p></li></ul><div><hr></div><h3>&#8505;&#65039; About Data Engineer Things</h3><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Data Pulse Edition (June 2026)]]></title><description><![CDATA[How Airbnb created a multi-product compatible data architecture, the 8 engineering metrics AI has broken, why more LLM reasoning effort isn't always better, making Semantic Layer work for AI Agents]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-2b0</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-2b0</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 23 Jun 2026 15:02:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!MGqW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.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_!MGqW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MGqW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.png 424w, https://substackcdn.com/image/fetch/$s_!MGqW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.png 848w, https://substackcdn.com/image/fetch/$s_!MGqW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.png 1272w, https://substackcdn.com/image/fetch/$s_!MGqW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MGqW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.png" width="1456" height="1047" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1047,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:295094,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/199647237?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MGqW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.png 424w, https://substackcdn.com/image/fetch/$s_!MGqW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.png 848w, https://substackcdn.com/image/fetch/$s_!MGqW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.png 1272w, https://substackcdn.com/image/fetch/$s_!MGqW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce05c3fa-cd39-46fb-a9ad-634f45f376fb_1568x1128.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p style="text-align: justify;">Hello Folks,</p><p style="text-align: justify;">As data platforms evolve, the hardest problems are no longer purely technical; they&#8217;re structural.</p><p style="text-align: justify;">How do you maintain consistency as products expand? How do you trust AI-generated outputs without sacrificing governance? How do you measure engineering impact when traditional metrics are being reshaped by automation? And how do you keep increasingly complex systems observable and reliable?</p><p style="text-align: justify;">This edition explores how leading teams are tackling these challenges&#8212;from data modeling and semantic layers to engineering metrics, observability, and platform design.</p><p>&#8211; Sukanya</p><div><hr></div><h3><strong>&#128218;</strong> Data Pulse</h3><h3><a href="https://medium.com/airbnb-engineering/scaling-beyond-one-how-airbnb-evolved-its-data-architecture-for-a-multi-product-world-6125645d470c">Scaling Beyond One: How Airbnb Evolved Its Data Architecture for a Multi-Product World</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Data Modeling &amp; Analytics Engineering <br>&#129504; <strong>Level</strong>: Beginner</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> Airbnb began as a single product - home-sharing. As the company expanded into Experiences and Services, the original modeling approach wasn&#8217;t enough as the definitions drifted between product lines, the same concepts were modelled differently across teams, and analytics engineers spent increasing time reconciling inconsistencies rather than producing insights. This post describes how Airbnb&#8217;s data and analytics engineering teams designed a consistent, flexible data modeling framework capable of spanning multiple product verticals without collapsing into a single rigid schema. And that involves 3 key principles:</p><ol><li><p>No hybrid data models</p></li><li><p>Consistent identifier naming</p></li><li><p>Clear namespace organization</p></li></ol><p>And then the modelling guidelines as a framework for every domain team to use in analyzing their specific situation</p><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>The single-product-to-multi-product transition is a forcing function for data modeling discipline.</strong> Teams that got away with informal modeling conventions in the early days often hit this wall when the business expands. This post is a useful reference for how to think about the transition before it becomes a crisis.</p></li><li><p><strong>The consistency-vs-flexibility tension is the core data modeling challenge.</strong> Airbnb&#8217;s frames it shared definitions at the core, product-specific extensions at the edges. It is a pattern that generalises well beyond their specific domain. It&#8217;s a practical answer to the question of how much standardisation is too much.</p></li><li><p><strong>Analytics engineers and data engineers will both find value here.</strong> The post covers both the modeling decisions (which sit closer to analytics engineering) and the platform choices that make those decisions enforceable at scale (which sit closer to data engineering). It&#8217;s one of the better cross-functional treatments of the topic.</p></li></ul><h3><a href="https://leaddev.com/ai/the-8-software-engineering-metrics-ai-broke">The 8 Software Engineering Metrics AI Broke</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Engineering Metrics &amp; Measurement in the AI Era <br>&#129504; <strong>Level</strong>: Beginner</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> LeadDev&#8217;s June 2026 article makes a simple but uncomfortable argument: most of the metrics engineering teams rely on like deployment frequency, cycle time, PR volume, test coverage, lines of code were built on the assumption that human effort and output move roughly in proportion. AI coding tools have broken that assumption. A developer with an agent can ship multiple PRs in a day without any improvement in engineering maturity; cycle time compresses while technical debt accumulates; test coverage written by the same model that wrote the code means something different than it used to. The article walks through eight specific metrics that have been distorted or invalidated, and identifies three that still hold up with a clear explanation of why.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!pF1u!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00572dd0-a84a-455c-ac60-d28c0fa635f3_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pF1u!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00572dd0-a84a-455c-ac60-d28c0fa635f3_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!pF1u!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00572dd0-a84a-455c-ac60-d28c0fa635f3_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!pF1u!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00572dd0-a84a-455c-ac60-d28c0fa635f3_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!pF1u!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00572dd0-a84a-455c-ac60-d28c0fa635f3_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pF1u!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00572dd0-a84a-455c-ac60-d28c0fa635f3_1536x1024.png" width="622" height="414.8090659340659" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/00572dd0-a84a-455c-ac60-d28c0fa635f3_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:622,&quot;bytes&quot;:1822799,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/199647237?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00572dd0-a84a-455c-ac60-d28c0fa635f3_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!pF1u!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00572dd0-a84a-455c-ac60-d28c0fa635f3_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!pF1u!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00572dd0-a84a-455c-ac60-d28c0fa635f3_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!pF1u!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00572dd0-a84a-455c-ac60-d28c0fa635f3_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!pF1u!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00572dd0-a84a-455c-ac60-d28c0fa635f3_1536x1024.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Generated based on the <a href="https://leaddev.com/ai/the-8-software-engineering-metrics-ai-broke">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Data engineering teams use these same metrics.</strong> Pipeline deployment frequency, time-to-merge for data model changes, test coverage on dbt models all of these are subject to exactly the same distortions the article describes. If your team is measuring AI productivity using pre-AI proxies, the numbers are probably misleading you.</p></li><li><p><strong>Goodhart&#8217;s Law has always applied; AI makes it effortless.</strong> Gaming metrics used to require deliberate effort. With AI coding tools, inflating deployment frequency or PR volume is a side effect of normal use, not a sign of bad intent. That changes how you need to think about metric design entirely.</p></li><li><p><strong>The three metrics that still hold up are worth identifying for your own stack.</strong> The article&#8217;s affirmative case of what to measure instead is the most actionable part and gives you a starting point for rebuilding dashboards that remain meaningful in an AI-assisted engineering environment.</p></li></ul><h3><a href="https://thenewaiorder.substack.com/p/how-to-make-semantic-layer-work-for">How to Make Semantic Layer Work for Analytics Agents</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Semantic Layers &amp; AI Analytics<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> This piece explores why semantic layers are becoming foundational infrastructure for AI agents interacting with business data. Instead of letting LLMs generate raw SQL directly against warehouses (which often leads to inconsistent metrics, hallucinated joins, and governance issues), the article argues for exposing curated business logic through a semantic layer. It walks through how metrics definitions, entity relationships, dimensions, and governance rules can be standardized so AI agents operate on trusted abstractions rather than raw tables. The post also explains how semantic layers improve discoverability, consistency, and interoperability across modern analytics stacks while enabling more reliable natural-language querying.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1K-H!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcf5b790-f163-408f-9ff1-80a42e1bf7e2_2048x1125.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1K-H!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcf5b790-f163-408f-9ff1-80a42e1bf7e2_2048x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!1K-H!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcf5b790-f163-408f-9ff1-80a42e1bf7e2_2048x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!1K-H!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcf5b790-f163-408f-9ff1-80a42e1bf7e2_2048x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!1K-H!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcf5b790-f163-408f-9ff1-80a42e1bf7e2_2048x1125.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1K-H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcf5b790-f163-408f-9ff1-80a42e1bf7e2_2048x1125.jpeg" width="1456" height="800" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bcf5b790-f163-408f-9ff1-80a42e1bf7e2_2048x1125.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:800,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;chart, bar chart&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="chart, bar chart" title="chart, bar chart" srcset="https://substackcdn.com/image/fetch/$s_!1K-H!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcf5b790-f163-408f-9ff1-80a42e1bf7e2_2048x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!1K-H!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcf5b790-f163-408f-9ff1-80a42e1bf7e2_2048x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!1K-H!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcf5b790-f163-408f-9ff1-80a42e1bf7e2_2048x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!1K-H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcf5b790-f163-408f-9ff1-80a42e1bf7e2_2048x1125.jpeg 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://thenewaiorder.substack.com/p/how-to-make-semantic-layer-work-for">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p>This is one of the clearest explanations of why semantic layers matter again in the AI era. For years, semantic layers were treated as a BI concern. Now they&#8217;re becoming the control plane between LLMs and enterprise data systems. If your company is experimenting with AI-powered analytics, this architectural shift is worth understanding early.</p></li><li><p>The article highlights a practical reality many teams are already facing: AI-generated SQL is only as reliable as the metadata and governance underneath it. Centralized metrics definitions, entity modeling, and governed dimensions are what prevent agents from producing contradictory answers across dashboards and chat interfaces.</p></li><li><p>The interoperability angle is especially important. As more organizations adopt tools like dbt, MetricFlow, Cube, AtScale, or Looker semantic models, the semantic layer increasingly acts as a shared contract between analytics engineers, BI tools, and AI systems. Understanding this pattern will likely become a core skill for modern data engineers and analytics engineers alike.</p></li></ul><p>And <a href="https://www.linkedin.com/posts/isin-pesch-32b489163_everyone-is-selling-the-semantic-layer-as-share-7459869331242532864-pEjP">this LinkedIn thread</a> is worth a read.</p><h3><a href="https://netflixtechblog.medium.com/the-evolution-of-cassandra-data-movement-at-netflix-6e13329c80a1">The Evolution of Cassandra Data Movement at Netflix</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Operational Data Movement &amp; Lakehouse Ingestion <br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> Apache Cassandra powers mission-critical systems at Netflix: Member, Billing, Recommendations, Subscriptions. Moving that data into Apache Iceberg for analytics has always been a core need, handled for years by an in-house connector called Casspactor. But as Netflix built higher-level abstractions on top of Cassandra - Key Value, Time Series, and Graph, the movement requirements grew more complex: transformations became necessary, schemas became non-trivial to map, and a single connector was no longer sufficient. This post walks through how Netflix evolved their Cassandra-to-Iceberg data movement architecture from a basic export connector to a more capable, abstraction-aware system that handles the full range of Cassandra-based data models and how it all sits within their broader Data Bridge platform.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!w0Dq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23501be1-d4b7-4aab-b8d0-04b4595730c4_1400x514.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!w0Dq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23501be1-d4b7-4aab-b8d0-04b4595730c4_1400x514.png 424w, https://substackcdn.com/image/fetch/$s_!w0Dq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23501be1-d4b7-4aab-b8d0-04b4595730c4_1400x514.png 848w, https://substackcdn.com/image/fetch/$s_!w0Dq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23501be1-d4b7-4aab-b8d0-04b4595730c4_1400x514.png 1272w, https://substackcdn.com/image/fetch/$s_!w0Dq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23501be1-d4b7-4aab-b8d0-04b4595730c4_1400x514.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!w0Dq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23501be1-d4b7-4aab-b8d0-04b4595730c4_1400x514.png" width="1400" height="514" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/23501be1-d4b7-4aab-b8d0-04b4595730c4_1400x514.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:514,&quot;width&quot;:1400,&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;:true,&quot;topImage&quot;:false,&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_!w0Dq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23501be1-d4b7-4aab-b8d0-04b4595730c4_1400x514.png 424w, https://substackcdn.com/image/fetch/$s_!w0Dq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23501be1-d4b7-4aab-b8d0-04b4595730c4_1400x514.png 848w, https://substackcdn.com/image/fetch/$s_!w0Dq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23501be1-d4b7-4aab-b8d0-04b4595730c4_1400x514.png 1272w, https://substackcdn.com/image/fetch/$s_!w0Dq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23501be1-d4b7-4aab-b8d0-04b4595730c4_1400x514.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://medium.com/netflix-techblog/the-evolution-of-cassandra-data-movement-at-netflix-6e13329c80a1">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>The operational-to-analytical bridge is a problem every production data team faces.</strong> Cassandra is widely used for transactional workloads; Iceberg is increasingly the standard for analytical storage. How you move data between them reliably, at scale, with schema fidelity matters a great deal. Netflix&#8217;s approach is one of the more detailed public accounts of how to do it.</p></li><li><p><strong>The evolution story is the valuable part.</strong> The post doesn&#8217;t present a finished system it shows how a connector built for one abstraction layer had to be redesigned as new abstractions emerged above it. That pattern of &#8220;the infrastructure you built for today&#8217;s complexity doesn&#8217;t survive tomorrow&#8217;s&#8221; is something worth understanding structurally than just technically.</p></li></ul><h3><a href="https://parsiya.net/blog/llm-thonking/">Brain the Size of a Planet: Are LLMs Thonking Too Hard?</a></h3><blockquote><p><strong>&#128214; Topic</strong>: LLM Reasoning Effort &amp; Practical Model Selection <br>&#129504; <strong>Level</strong>: Advanced</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> Security researcher Parsia Hakimian ran a rigorous empirical experiment across 26 combinations of Claude 4.6/4.7 and GPT-5.4/5.5 models varying reasoning effort levels (low, medium, high, xhigh) and context window sizes to test how well LLMs triage real security vulnerabilities. The results challenge a widely held assumption: higher reasoning effort is not always better, and later models don&#8217;t uniformly outperform earlier ones. GPT-5.5-medium outperformed high and xhigh on several tasks; full solve rates were nearly zero (1.9%) across all models; and a four-LLM triage council with majority voting: 86.2% unanimous agreement performed far more reliably than any single model. Total experiment cost: roughly $9,200. The methodology is detailed, reproducible, and the data is publicly available on GitHub.</p><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>The &#8220;more reasoning = better results&#8221; assumption needs questioning in data contexts too.</strong> If you&#8217;re building LLM-powered pipeline generation, metadata enrichment, or data quality classification, the implication is important: defaulting to maximum reasoning effort increases cost and latency without a guaranteed quality improvement. The right effort level depends on the task structure, not a general rule.</p></li><li><p><strong>The council/ensemble approach is a practical architecture pattern.</strong> Rather than trusting a single model call, running the same task across multiple models with majority-vote reconciliation is a concrete technique for improving reliability in agentic data workflows particularly for high-stakes decisions like anomaly classification or schema change validation.</p></li><li><p><strong>Function-level context significantly outperformed file-level context.</strong> Giving the model exactly the code or data schema it needs rather than dumping an entire file produced dramatically better results. This maps directly to how data engineers should be structuring prompts when using LLMs to reason about pipeline logic or data contracts: smaller, precise context wins.</p></li></ul><div><hr></div><h3><strong>&#128142; Open Source Gem</strong></h3><h3><a href="https://github.com/airbnb/viaduct">Viaduct 1.0 &#8212; Airbnb&#8217;s Production Data Mesh, Now Open Source</a></h3><p style="text-align: justify;">Viaduct is Airbnb&#8217;s data mesh platform: a system for registering, discovering, and governing data products across a distributed, domain-owned data organisation. It handles the hard parts of data mesh: how do domains publish data products in a way that others can discover and trust? how does the platform enforce quality standards without centralising ownership?  Without prescribing a fixed architecture for every team. The 1.0 release (May 2026) marks the transition from an internal Airbnb tool to a publicly maintained open-source project.</p><div class="captioned-image-container"><figure><div class="image-link image2" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Fk_c!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7e8913-aef9-48d0-b596-f468064bf741_2320x1288.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Fk_c!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7e8913-aef9-48d0-b596-f468064bf741_2320x1288.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Fk_c!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7e8913-aef9-48d0-b596-f468064bf741_2320x1288.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Fk_c!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7e8913-aef9-48d0-b596-f468064bf741_2320x1288.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Fk_c!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7e8913-aef9-48d0-b596-f468064bf741_2320x1288.jpeg" width="284" height="157.6043956043956" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7e7e8913-aef9-48d0-b596-f468064bf741_2320x1288.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:808,&quot;width&quot;:1456,&quot;resizeWidth&quot;:284,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Viaduct logo&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Viaduct logo" title="Viaduct logo" srcset="https://substackcdn.com/image/fetch/$s_!Fk_c!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7e8913-aef9-48d0-b596-f468064bf741_2320x1288.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Fk_c!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7e8913-aef9-48d0-b596-f468064bf741_2320x1288.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Fk_c!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7e8913-aef9-48d0-b596-f468064bf741_2320x1288.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Fk_c!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e7e8913-aef9-48d0-b596-f468064bf741_2320x1288.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></div></figure></div><p><strong>&#128240; What&#8217;s in 1.0</strong></p><p style="text-align: justify;">The initial open-source release includes the core data product registry, a quality enforcement layer that runs checks at registration and on a configurable schedule, a discoverability API and UI for finding data products across domains, and an access governance model that delegates ownership decisions to domain teams while maintaining platform-level audit trails. The CLI supports YAML-based product definitions (as above) as well as programmatic registration via Python and Go clients. Airbnb&#8217;s own internal deployment manages several hundred registered data products across dozens of domains.</p><p><strong>&#128161; Why is this useful for DEs?</strong></p><ul><li><p><strong>It&#8217;s the first serious open-source reference implementation of data mesh at production scale.</strong> OpenMetadata and DataHub handle catalog and discovery well; Viaduct handles the harder problem of how data products are <em>governed and owned</em> across a distributed organisation, not just catalogued.</p></li><li><p><strong>The YAML-first product definition is approachable for small teams.</strong> You don&#8217;t need to adopt the full data mesh paradigm to get value from Viaduct&#8217;s quality and ownership primitives. Teams can start with a single domain and a handful of registered products and scale from there.</p></li><li><p><strong>Quality enforcement at registration time changes the dynamic.</strong> Rather than discovering data quality issues downstream when a consumer&#8217;s pipeline breaks, Viaduct&#8217;s check-at-registration model means problems surface when the producer publishes &#8212; which is the right place to catch them.</p></li></ul><p>&#128073; <strong>GitHub</strong>: <a href="https://github.com/airbnb/viaduct">https://github.com/airbnb/viaduct</a></p><div><hr></div><h3><strong>&#128161; DE Tip of the Month </strong></h3><p style="text-align: justify;"><strong>Improving Data Observability in AI-Assisted and Agent-Driven Pipelines (Snowflake, Databricks, BigQuery)</strong></p><p style="text-align: justify;">As data platforms become more dynamic, with dbt transformations, LLM-generated queries, and agent-driven workflows, traditional pipeline monitoring is no longer enough. In <strong>Snowflake, Databricks, and BigQuery</strong>, failures often don&#8217;t show up as broken jobs but as silent data quality drift or unexplained downstream inconsistencies.</p><p><strong>&#128210; Rules of thumb</strong></p><ul><li><p style="text-align: justify;"><strong>Instrument data at the query and job level, not just pipeline level.</strong><br>In <strong>Snowflake</strong>, use the information schema and QUERY_HISTORY to trace execution patterns. In <strong>Databricks</strong>, rely on system tables and job run metadata. In <strong>BigQuery</strong>, use job history and audit logs. Observability starts at execution granularity, not DAG-level success/failure.</p></li><li><p style="text-align: justify;"><strong>Track data lineage across transformations, especially in automated workflows.</strong><br>In <strong>Snowflake Dynamic Tables</strong>, <strong>dbt models</strong>, and <strong>Databricks Delta Live Tables</strong>, ensure lineage is explicitly captured so AI-generated or scheduled transformations don&#8217;t create &#8220;orphan&#8221; datasets.</p></li><li><p style="text-align: justify;"><strong>Monitor data drift, not just pipeline failures.</strong><br>In modern systems, pipelines can succeed while outputs become incorrect. Add checks for schema drift, distribution shifts, and freshness anomalies across all three platforms.</p></li><li><p style="text-align: justify;"><strong>Separate human-authored vs. agent-generated transformations.</strong><br>AI-assisted SQL and automated transformations should be tagged and tracked separately to understand where unintended changes originate.</p></li><li><p style="text-align: justify;"><strong>Centralize observability signals outside the warehouse.</strong><br>Don&#8217;t rely solely on Snowflake/Databricks/BigQuery logs. Push metadata into a unified observability layer so lineage, freshness, and quality signals can be correlated across systems.</p></li></ul><div><hr></div><h3>&#128202; Community Poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:520390}" data-component-name="PollToDOM"></div><p>Until the next one.</p><p><a href="https://www.linkedin.com/in/sukanyawadawadagi/">Sukanya</a>, <a href="https://www.linkedin.com/in/chozhan-d-m/">Chozhan</a> &amp; <a href="https://www.linkedin.com/in/srivigneshkn/">Sri</a></p><div><hr></div><h4>&#8505;&#65039; About Data Engineer Things</h4><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Community Spotlight Edition (June 2026)]]></title><description><![CDATA[The craft is no longer in the code. It&#8217;s in how you define context, questions and evaluations]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-0f6</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-0f6</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 09 Jun 2026 15:01:29 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jhsE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.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_!jhsE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jhsE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!jhsE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!jhsE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!jhsE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jhsE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/df164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:207663,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193087622?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jhsE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!jhsE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!jhsE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!jhsE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf164671-3aa9-4d3f-a2f8-a4ec0f5da595_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hi everyone,</p><p>In our next iteration of the community spotlight, we are chatting with <strong>Shridhar Iyer, Director of Data Engineering at Meta</strong>.</p><p>Shri has spent over a decade navigating and shaping the major shifts in data engineering. Today, he is at the forefront of transitioning traditional data systems into AI-native architectures. In this spotlight, we dive into his journey from software engineering to unifying Meta&#8217;s massive data foundations, explore how AI is rewriting the development workflow for data engineers and how to position yourself for success. </p><p>Let&#8217;s dive in and walk through Shri&#8217;s journey.</p><p>- Eddy Zulkifly &amp; Swetha Sekhar</p><div><hr></div><h3>Spotlight: Shridhar Iyer</h3><div class="pullquote"><p>&#8220;Building a shared identity around the work scales impact far beyond what any single team could achieve.&#8221;</p></div><blockquote><p><em>For people who may not know your journey, how would you describe the path that brought you here?</em></p></blockquote><p>I started my career in software engineering working on supply chain, logistics and enterprise systems. Early on, I learned that <strong>leverage wasn&#8217;t in building the systems, but rather understanding the business deeply enough to influence it</strong>. At a retail analytics startup, I got my first taste of what it meant to scale analytics across Fortune 500 companies and found myself drawn to systematizing and unifying the chaos of different datasets and process. The work entails schematizing workflows and building tools that made fragmented processes legible. That impulse followed me to Meta.</p><p>At Meta, I started by building the analytical foundations that helped measure how people used Facebook. I curated datasets that became central to how the company understood itself and developed frameworks that standardized how growth and engagement were measured across the entire product. Later on, I moved into the Search team and worked on real-time streaming, sessionization and bridging business logic between batch and real time. Each experience exposed me to a new layer of fragmentation and each time, my instinct was to unify it.</p><p>That drive toward unification made me realize that making data accessible to more people across a complex platform required more than pipelines and dashboards. It required data to be understandable at all points of development and doing so securely.</p><div><hr></div><blockquote><p><em>What has changed most dramatically in data engineering during your time at Meta?</em></p></blockquote><p>Having lived through every major shift in data engineering over the past decade, AI has been a dramatic shift in terms of data engineering work. Distributed compute, new storage formats, streaming and CI/CD changed how the work was done, but left the fundamental contract intact. A data engineer expressed logic in SQL or Python, wrapped it in pipelines, and governed it through pull requests. The interface between human and machine stayed the same.</p><p>AI breaks that contract entirely.</p><p>The nature of the work changes, from physical to conceptual, from writing logic to specifying intent and from governing code to governing knowledge. <strong>The craft is no longer in the code. It&#8217;s in the quality of the question, the rigour of the eval and the integrity of the context you feed it</strong>. Writing good evals is a hard problem. Designing agentic workflows with the right guardrails is a hard problem. Knowing what knowledge actually matters to an AI agent, and governing it well, is a hard problem. Even measuring the output from AI reliably has been harder than expected. The work is no longer about using AI as a tool but rather becoming AI-native. It&#8217;s about rebuilding how you think, design, and measure from the ground up.</p><p>Existing codebases have to be made AI-ready with appropriate tradeoffs. The development lifecycle itself is up for reinvention as spec-driven development and agentic loops are replacing what were once manual workflows. What constitutes good work is shifting from optimizing the science to encoding the art. Turning repeatable expertise into skills, expressing domain knowledge as governed context and designing for a machine that reasons differently than we do.</p><div><hr></div><blockquote><p><em>You&#8217;ve <a href="https://www.linkedin.com/posts/shridhar-iyer_the-future-of-the-data-engineerpart-i-activity-7049047300110745600-ohXX">written</a> about unifying semantic context across data systems. What does that look like in practice?</em></p></blockquote><p>A while back I<a href="https://www.linkedin.com/posts/shridhar-iyer_the-bi-triangle-this-is-an-old-but-very-activity-7285875525691088897-zCo5?utm_source=share&amp;utm_medium=member_desktop&amp;rcm=ACoAAAom0HYBRlAF2by4szS4okHvR7G97UPDCes"> wrote about the intelligence pyramid</a>: Data &#8594; Information &#8594; Knowledge &#8594; Wisdom, and more recently<a href="https://www.linkedin.com/feed/update/urn:li:activity:7460690393433534464/"> revisited it through an AI lens</a>. It&#8217;s a practical blueprint for how semantic context for data can be built, evolved, and directed towards AI Agents. Each layer builds on top of the other.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mjyO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde72a527-e1a8-46a6-aacc-07cd99ffa491_800x428.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mjyO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde72a527-e1a8-46a6-aacc-07cd99ffa491_800x428.png 424w, https://substackcdn.com/image/fetch/$s_!mjyO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde72a527-e1a8-46a6-aacc-07cd99ffa491_800x428.png 848w, https://substackcdn.com/image/fetch/$s_!mjyO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde72a527-e1a8-46a6-aacc-07cd99ffa491_800x428.png 1272w, https://substackcdn.com/image/fetch/$s_!mjyO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde72a527-e1a8-46a6-aacc-07cd99ffa491_800x428.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mjyO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde72a527-e1a8-46a6-aacc-07cd99ffa491_800x428.png" width="800" height="428" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/de72a527-e1a8-46a6-aacc-07cd99ffa491_800x428.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:428,&quot;width&quot;:800,&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;:true,&quot;topImage&quot;:false,&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_!mjyO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde72a527-e1a8-46a6-aacc-07cd99ffa491_800x428.png 424w, https://substackcdn.com/image/fetch/$s_!mjyO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde72a527-e1a8-46a6-aacc-07cd99ffa491_800x428.png 848w, https://substackcdn.com/image/fetch/$s_!mjyO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde72a527-e1a8-46a6-aacc-07cd99ffa491_800x428.png 1272w, https://substackcdn.com/image/fetch/$s_!mjyO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde72a527-e1a8-46a6-aacc-07cd99ffa491_800x428.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">AI Knowledge Evolution Framework (<a href="https://www.linkedin.com/feed/update/urn:li:activity:7460690393433534464/">Source</a>)</figcaption></figure></div><p><strong>Historically, the ROI for semantically modeling data for analytics alone was hard to justify at scale. AI changes this by making human workflows drastically cheaper but it requires structured knowledge to become effective.</strong></p><p>The raw schema &amp; data layer is where most warehouses live today. Physical tables with primitive column types that don&#8217;t convey meaning or purpose. Making this layer semantically understood required introducing richer schema annotations, a type system that encodes meaning at the column and table level, and a unified taxonomy governed at source in online systems that flows into the offline warehouse. This also required unifying the metadata and asset catalog, covering tables, columns, sub-columns, dashboards, and all asset classes, along with column-level lineage and the SQL language itself through a compiler. That effort was primarily driven by privacy and security, but it built the foundational layer of semantic understanding that everything above depends on.</p><p>The semantic layer encodes what the data means in a business context. Assets include a domain glossary, metric and dimension definitions, verified queries, and table selection guidance. This is the tribal and institutional knowledge that makes data of a domain genuinely useful but rarely governed or structured well enough to scale.</p><p>The knowledge layer encodes the analytical skills and methodologies that experts use to produce insights. The business process of growth accounting, retention, root cause analysis, opportunity sizing. Encoding them as governed primitives is what democratizes the craft. It allows non-SMEs the same analytical capability that previously required years of domain experience.</p><p>At the top, the data agent consumes all three layers to reason over enterprise data in real time, composing governed domain knowledge into trustworthy answers.</p><p>What we are formalizing is the long-term memory of the enterprise and the skills of its subject matter experts into a governed, composable system. All of this required the same design instinct at every layer: unify the representation, govern it at source, catalog it canonically, change-manage it at scale, and make it consumable, whether by a privacy enforcement system or an AI data agent.</p><blockquote><p><em>How do you measure whether AI initiatives are truly successful in data engineering teams?</em></p></blockquote><p>Measuring AI success in data engineering starts with recognizing that the work falls into two distinct but deeply interdependent buckets which are AI readiness and AI-native workflows.</p><p>AI readiness is about making your data systems legible to AI. Well documented schemas, semantic context, code and lineage that an agent can reason over. AI-native workflows are about reimagining the development and consumption lifecycle itself, both the inner loop of discovery, authoring, testing, review, and deployment, and the outer loop of scheduling, anomaly detection, quality enforcement, backfills, and privacy compliance, and the consumption side of visualization, reporting, analysis, and security enforcement.</p><p>The most common measure in practice has been adoption which can be measured by committed diffs, tool usage, active users. While adoption is a real signal, adoption alone masks the harder question, which is quality. Some productivity lift is nearly always present when using AI tools. The challenge is assessing if the output is trustworthy enough to act on. For example, instead of vaguely measuring "time saved," leaders must look at cycle-time reduction for specific, repeatable tickets, like tracking the average hours it takes to onboard a new data source or generate a new dbt model with an AI assistant versus without one.</p><p>That&#8217;s where evals become the more rigorous measure. Evaluating whether an AI agent produced the correct query or insight is genuinely difficult, especially for open-ended analytical tasks where there isn&#8217;t always a single correct answer. In data engineering, this means moving beyond simple code-syntax validation to behavioural evals. For instance, an inner-loop eval might test whether an AI agent can refactor a legacy SQL script into clean, optimized dbt code without altering the underlying data output. An outer-loop eval might test whether an AI agent can accurately root-cause a pipeline anomaly alert and point to the exact upstream schema change that caused it.</p><p>It also helps to think about measurement through these two distinct groups, namely  builders and domain experts. Builders or engineers have taken to AI most naturally and construct the agentic workflows. Domain experts or the people who hold the institutional knowledge, are finding it harder to translate that expertise into AI leverage. The gap between these two groups is itself a measure of how much work remains.</p><p>The north star measure, autonomous agents planning, reasoning, and executing full analytical workflows with minimal human input, is still ahead of us. We are not yet there outside of the most obviously repeatable task patterns. What leadership can measure today are these metrics:</p><ul><li><p><strong>Readiness Coverage:</strong> The percentage of production data models that possess verified, LLM-legible semantic tags and up-to-date lineage maps.</p></li><li><p><strong>Adoption Depth:</strong> The frequency and consistency of AI tool usage across both builders and domain experts.</p></li><li><p><strong>Eval-driven Quality Scores:</strong> The pass rate of AI-generated assets against rigorous regression test suites.</p></li><li><p><strong>Workflow Completion vs. Step Acceleration:</strong> The degree to which AI is autonomously finishing end-to-end workflows rather than just accelerating isolated steps within them.</p></li></ul><p><strong>Workflow completion, is perhaps the most honest indicator of where any team truly stands.</strong></p><blockquote><p><em>What is the biggest leadership shift from managing teams to operating at the Director level?</em></p></blockquote><p>I should be honest about something upfront, I was never a traditional org manager in the strict sense. I have led teams both informally and formally as a tech lead manager, but my formal expectation has always been that of a tech lead, meaning I have always been held to an IC bar even at the director level. For the past few years I have been operating as a pure IC. So I think of this less as a shift from manager to director and more as a shift in how you operate and what you optimize for at a higher level of ambition.</p><p>The first shift is cognitive. As an IC, you are in the details. As a director, you are defining which problems are worth solving and setting the principles that guide multiple teams toward coherent solutions. The craft moves from execution to framing. Framing well requires the ability to see how the systems interact interact, where they conflict and articulating the problem concisely to a large group of people across different functions, roles, and levels. That is harder than it sounds.</p><p>The second shift is organizational, and for me it has always come back to the same instinct of unification. The biggest risk at this level is fragmentation where teams are building good things independently that don&#8217;t compose. Most of my largest initiatives have been cross-functional, spanning different orgs, roles, and levels, held together not by authority but by a shared conviction about what&#8217;s possible.</p><p>That conviction has to be earned. It starts with thinking like the exec in your reporting chain. What would a VP want to know about your product area? What does the future look like, not just for your product but for the function it serves? If you can&#8217;t answer that crisply, you are not ready to drive adoption of anything. You have to think objectively about what is best for the company, not just your team. <strong>When you frame your initiative around long-term company health rather than local goals, adoption stops being a sales pitch and starts being an obvious move</strong>.</p><p>Then there is clarity. I compensate for not being a natural presenter through writing, especially when it comes to articulating ambiguous problems. Going deep enough to produce a prototype, a proof of concept, or a clear vision is what makes the destination visible. When people can see the destination, they find their way toward it.</p><p>Pre-reads matter, but in front of a senior audience, most of the time is spent on discussion. Think through your questions deeply. What will decision makers push back on? What is the elephant in the room, and can you surface it explicitly? Influence at this level is less about presenting and more about orchestrating the right conversation. And if leadership is wrong, say so, but focus on alignment rather than proving someone wrong.</p><p>Orchestrating conversations this way builds <strong>a shared identity around the work</strong> <strong>scaling impact far beyond what any single team could achieve</strong>.</p><blockquote><p><em>Where do you think AI genuinely helps data engineers today, and where does it create over-usage or overconfidence?</em></p></blockquote><p>AI genuinely helps during the inner and outer development loops. In the inner loop,  agentic workflows deliver the most value during coding and development, triggering autonomously on the right conditions and passing through existing guardrails like test cases, data quality checks, and human review gates. The outer loop follows the same logic, detecting what changed in the logic, handling backfills and failures, auto-healing where appropriate. Beyond these loops, everything depends on rigorous evals to validate and without them, you are only assuming effectiveness.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ny7G!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F120a4108-e3af-4bc6-9ad4-c3e5de3eb282_837x397.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ny7G!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F120a4108-e3af-4bc6-9ad4-c3e5de3eb282_837x397.webp 424w, https://substackcdn.com/image/fetch/$s_!ny7G!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F120a4108-e3af-4bc6-9ad4-c3e5de3eb282_837x397.webp 848w, https://substackcdn.com/image/fetch/$s_!ny7G!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F120a4108-e3af-4bc6-9ad4-c3e5de3eb282_837x397.webp 1272w, https://substackcdn.com/image/fetch/$s_!ny7G!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F120a4108-e3af-4bc6-9ad4-c3e5de3eb282_837x397.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ny7G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F120a4108-e3af-4bc6-9ad4-c3e5de3eb282_837x397.webp" width="837" height="397" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/120a4108-e3af-4bc6-9ad4-c3e5de3eb282_837x397.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:397,&quot;width&quot;:837,&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;:true,&quot;topImage&quot;:false,&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_!ny7G!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F120a4108-e3af-4bc6-9ad4-c3e5de3eb282_837x397.webp 424w, https://substackcdn.com/image/fetch/$s_!ny7G!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F120a4108-e3af-4bc6-9ad4-c3e5de3eb282_837x397.webp 848w, https://substackcdn.com/image/fetch/$s_!ny7G!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F120a4108-e3af-4bc6-9ad4-c3e5de3eb282_837x397.webp 1272w, https://substackcdn.com/image/fetch/$s_!ny7G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F120a4108-e3af-4bc6-9ad4-c3e5de3eb282_837x397.webp 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Inner and Outer Development Loops (<a href="https://www.solo.io/blog/platform-engineering-essential-tools">Source</a>)</figcaption></figure></div><p>Overusage most commonly stems from not designing AI workflows purposefully. Almost every AI workflow is, at its core, an event-driven pipeline. When it is not designed that way, you end up reprocessing large volumes of information in unstructured formats, wasting tokens on work that could have been scoped and triggered more precisely. Another common example is not knowing which model is right for the job, reaching for a more capable and expensive model when a lighter one would suffice. Similarly, running evals on a recurring schedule to test changing context is a source of waste. The right design detects when a change happens and triggers the eval then, not continuously.</p><p>Overconfidence is the more consequential failure mode. Agents are built to find an answer, and they will, even when they should not. A silent infrastructure failure, a discovery service going down for something as straightforward as a daily active user query, will not stop an agent from finding another path and returning something that sounds authoritative. Without proper guardrails, agents take all context at face value, unable to distinguish good from bad. They can conflate similar concepts, confusing  an app with a device, cross-wire descriptions, and confidently produce answers that are precisely wrong. The responsibility for governing that context and building the guardrails that prevent it sits entirely with the builder. That is not a limitation that goes away on its own. It is a design obligation.</p><blockquote><p><em>What should the next generation of data engineers be preparing for now?</em></p></blockquote><p>The next generation of data engineers is entering a world where the baseline job of producing data assets is getting commoditized. The differentiator is no longer who can build those artifacts but rather who can define the right spec in the first place. That is a much harder job, and it is the one worth preparing for.</p><p>In practical terms, that means owning semantics rather than scripts. What does &#8220;active user&#8221; actually mean in your business context? How do these entities relate? What are the golden structures that everything else should align behind? The ability to design a domain model that mirrors how the business actually thinks and operates will matter more than whether you can hand-craft the nth pipeline operator. Think of it as writing the markdown, a structured, precise expression of intent, that an agent then operationalizes. The quality of what the agent produces is a direct function of the quality of that spec. Treat data modelling as an act of meaning-making and not schema decoration.</p><p>The other half is evals. An agent can generate a metric, a dashboard, or a feature, but it cannot tell you on its own whether any of that is truly useful or aligned with the goals of the business. Being good at encoding goals as evals, defining what good looks like, how you would measure it, and what failure modes you are guarding against, will be one of the most important skills in an AI-saturated stack. It is the difference between the model works and the system is actually doing what we intended.</p><p>Underlying both is business fluency. If the last decade rewarded people who were very good at infrastructure and tooling, the next one will reward people who are very good at questions. Learn to think like the people you support. Understand how money flows through your company, what actually matters to your customers, how product and strategy decisions get made. Formal exposure to business thinking helps more than people expect. The goal is not to become a product manager but rather to develop the instinct to look at any dataset and identify levers, tradeoffs, and blind spots.</p><p>Near term, data engineers will be at the thick of things designing AI-ready systems and becoming AI-native themselves.  Data engineers are the ones who understand the data well enough to do both. No other role can step in and own that, not a product manager, not a business analyst or an agent. The people who understand and own the data still matter, because they are also the ones responsible for ensuring that the experience of exploring data through agents is value adding for product leaders and stakeholders. Data democratization has always been the goal and AI is the most powerful lever we have ever had to achieve it, but only if the builders and domain experts collaborate together effectively.</p><p>Practically, lean into agents early. Use them to prototype quickly so you can spend more time on design. Stress-test your own understanding by having them explain or transform models you have built. Explore what-if questions at the edge of your intuition, then pull the promising ones back into rigorous evaluation. The people who will thrive are those who see agents as force multipliers on their judgment, not replacements for their labor.</p><p>If I had to compress it into a single paragraph, get very good at making meaning in messy systems. Learn the tools, but do not anchor your identity to them. Anchor it instead to business understanding, judgment, and the ability to turn fragmentation into something that both humans and machines can reason over with confidence.</p><div><hr></div><blockquote><p><em>Who should we spotlight next in the Data Engineer Things Community Newsletter, and why?</em></p></blockquote><p>I would like to spotlight <a href="https://www.linkedin.com/in/tp-4833125/?skipRedirect=true">Tamar Phillips</a>, my colleague at Meta, and someone whose perspective I think this community would find genuinely valuable.</p><p>Tamar has grown into senior leadership at Meta by building and leading large data engineering teams in the Integrity domain which is a good mix of cultural as it is technical. Dealing with spam, bullying and misinformation, integrity sits downstream of the entire Meta family of apps, which means data modelling is foundational. The privacy requirements are equally serious with sensitive data protection and compliance reporting to governments across multiple regulatory regimes. Getting that right, at scale sharpens your thinking in ways that are hard to replicate elsewhere.</p><p>More recently, Tamar has been driving AI readiness efforts for Integrity at Meta and leading the definition of new roles and archetypes for data engineers in an AI-native era, doing the actual legwork of figuring out what that transition looks like in practice.</p><p>Beyond the work itself, Tamar leads with empathy, domain expertise, and a clear eye on business impact and product value. He is exactly the kind of practitioner whose experience the data engineering community should hear more from.</p><div><hr></div><h3>Key Takeaways</h3><ul><li><p><strong>Own Semantics, Not Scripts:</strong> As AI commoditizes pipeline creation, a data engineer&#8217;s value shifts from hand-crafting code to defining precise business logic. Success now depends on <strong>spec-driven development</strong> which entails structuring the metadata, taxonomies, and semantic models that serve as the foundational context AI agents need to reason over data accurately.</p></li><li><p><strong>Measure Workflow Completion:</strong> Vanity metrics like tool usage or code generated mask the true question of quality. AI maturity can be measured by <strong>Workflow Completion</strong> (e.g., an AI agent autonomously detecting a pipeline failure, diagnosing the schema change, and opening a fixed PR) rather than mere <strong>Step Acceleration</strong> (e.g., using a copilot to write a regex string 30% faster).</p></li><li><p><strong>Master "Evals" to Prevent Silent Failures:</strong> Traditional data quality tests fail when AI agents generate open-ended analytical queries or insights. Data engineers must master the craft of writing behavioral evaluations and regression suites to serve as guardrails, ensuring that agents don't confidently return wrong answers or cross-wire business logic when underlying infrastructure changes.</p></li></ul><div><hr></div><h3>Community poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:489026}" data-component-name="PollToDOM"></div><p></p><div><hr></div><h3>&#128172; How to stay connected</h3><ul><li><p><a href="https://www.linkedin.com/in/shridhar-iyer/">LinkedIn</a></p></li></ul><div><hr></div><h3>&#8505;&#65039; About Data Engineer Things</h3><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Data Pulse Edition (May 2026)]]></title><description><![CDATA[Spotify's coding agents that saved 10 engineering weeks, how Meta encoded tribal knowledge for AI agents, and Pinterest's CDC-to-Iceberg architecture explained]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-0c9</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-0c9</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 19 May 2026 15:03:37 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!a_lj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.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_!a_lj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!a_lj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.png 424w, https://substackcdn.com/image/fetch/$s_!a_lj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.png 848w, https://substackcdn.com/image/fetch/$s_!a_lj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.png 1272w, https://substackcdn.com/image/fetch/$s_!a_lj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!a_lj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.png" width="1010" height="728" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:728,&quot;width&quot;:1010,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:190353,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/196126359?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!a_lj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.png 424w, https://substackcdn.com/image/fetch/$s_!a_lj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.png 848w, https://substackcdn.com/image/fetch/$s_!a_lj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.png 1272w, https://substackcdn.com/image/fetch/$s_!a_lj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6b65bb9-12b4-4ec8-b9a8-4c40a17402dd_1010x728.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p style="text-align: justify;">Hello Folks,</p><p>Still processing. That&#8217;s the honest summary of this past week. I just got back from the <strong>Data Innovation Summit 2026</strong> at Kistam&#228;ssan in Stockholm, and I&#8217;m still untangling what I actually learned from and what I enthusiastically nodded at in a hallway.</p><p>Two moments keep coming back to me. <strong>Dael Williamson</strong> from Databricks put it simply: organisations are no longer just <em>adopting</em> AI tools, they&#8217;re running <strong>fleets of agents</strong> that reshape workflows in real time. Build your data foundations now, or get buried later. Then <strong>Joe Reis&#8217;</strong>s masterclass reframed data modeling as a <strong>strategic capability, not a dogma</strong> and landed two quotes I haven&#8217;t stopped thinking about: </p><blockquote><p><em>&#8220;AI amplifies what you know to do at machine speed. It also amplifies what you don&#8217;t.&#8221;</em></p></blockquote><p>And: </p><blockquote><p><em>&#8220;Disciplined teams will use AI to move faster with quality. Undisciplined teams will use AI to create technical debt faster.&#8221;</em> </p></blockquote><p>That second one hit hard in our governance roundtable.</p><p>I&#8217;m Chozhan, Head of Data Platform and a passionate Data Engineer. This edition picks up right where DIS2026 left off, a real production story from Spotify on agentic dataset migrations, a fresh benchmark from dbt Labs on Semantic Layer vs. text-to-SQL, a tool-agnostic observability guide, and an honest look at what declining DE job postings are indirectly hinting us. Thanks for being here, let&#8217;s dive right in.</p><p>&#8211; Chozhan</p><div><hr></div><h3><strong>&#128218;</strong> Data Pulse</h3><h3><a href="https://medium.com/pinterest-engineering/next-generation-db-ingestion-at-pinterest-66844b7153b7">Next Generation DB Ingestion at Pinterest</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Real-World Streaming &amp; Lakehouse Architecture<br>&#129504; <strong>Level</strong>: Beginner</p></blockquote><p><strong>Summary:</strong> Pinterest&#8217;s Logging Platform team replaced a patchwork of batch-oriented, full-table dump pipelines where data latency exceeded 24 hours, with a unified CDC-based framework built on Debezium, Kafka, Flink, Spark, and Iceberg. The new system delivers changes in <strong>15 minutes to an hour</strong>, processes only changed records (saving significant compute since daily change rates are under 5% for most tables), and natively supports row-level deletes for compliance. The post walks through the architecture clearly and honestly covers the small-files problem and how they solved it with bucket joins for large-table upserts.</p><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>This is a textbook CDC + Iceberg architecture explained plainly.</strong> If you&#8217;re building or evaluating a real-time ingestion layer, Pinterest&#8217;s dual-table design (CDC table as append-only ledger, base table as the upserted mirror) is a pattern worth understanding before you design your own.</p></li><li><p><strong>The small-files and bucket-join optimisations are the practical gold.</strong> Most blog posts stop at the architecture diagram. This one goes into how bucketing by primary key hash, WRITE DISTRIBUTED BY PARTITION, and a bucketed intermediate table for upserts cut compute costs by 40%+, details you can apply directly.</p></li><li><p><strong>The compliance angle is increasingly important.</strong> Row-level deletes for GDPR and similar requirements are a real engineering constraint, not an afterthought. Seeing how Pinterest handled it in Iceberg with Merge-on-Read is directly useful for teams facing the same challenge.</p></li></ul><h3><a href="https://pipeline2insights.substack.com/p/data-observabilty-fundamentals-for-data-engineers">Data Observability Fundamentals for Data Engineers</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Data Quality &amp; Observability<br>&#129504; <strong>Level</strong>: Beginner</p></blockquote><p><strong>Summary:</strong> A practical, tool-agnostic guide to detecting silent pipeline failures. It introduces six concrete detection patterns (Flow Interruption, Skew, Lag, SLA Misses, Dataset Tracker, Fine-Grained Tracker) and draws a sharp distinction between observability, a flashlight that catches surprises and data contracts, a laser that prevents known failures. One of the clearest pieces on this topic I&#8217;ve read this year.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oaPY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa431276f-5e57-4461-89b9-d89d50cb97fe_1920x1080.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oaPY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa431276f-5e57-4461-89b9-d89d50cb97fe_1920x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oaPY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa431276f-5e57-4461-89b9-d89d50cb97fe_1920x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oaPY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa431276f-5e57-4461-89b9-d89d50cb97fe_1920x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oaPY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa431276f-5e57-4461-89b9-d89d50cb97fe_1920x1080.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oaPY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa431276f-5e57-4461-89b9-d89d50cb97fe_1920x1080.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a431276f-5e57-4461-89b9-d89d50cb97fe_1920x1080.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!oaPY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa431276f-5e57-4461-89b9-d89d50cb97fe_1920x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oaPY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa431276f-5e57-4461-89b9-d89d50cb97fe_1920x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oaPY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa431276f-5e57-4461-89b9-d89d50cb97fe_1920x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oaPY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa431276f-5e57-4461-89b9-d89d50cb97fe_1920x1080.jpeg 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://pipeline2insights.substack.com/p/data-observabilty-fundamentals-for-data-engineers">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Observability first, contracts second</strong> that sequencing matters in practice and this post explains why clearly. Most teams get the order wrong and then wonder why their contracts don&#8217;t stick.</p></li><li><p><strong>The six patterns are concrete enough to implement today</strong>, regardless of your stack. Most observability content stays at &#8220;monitor your freshness.&#8221; This goes further without requiring a specific vendor.</p></li><li><p><strong>Silent failures are qualitatively more dangerous when AI is downstream.</strong> A schema drift that once broke a dashboard now corrupts model inputs at inference time. The stakes are different and this piece explains why.</p></li></ul><h3><a href="https://engineering.atspotify.com/2026/4/background-coding-agents-dataset-migrations-honk-part-4">Background Coding Agents: Supercharging Dataset Migrations (Honk, Part 4)</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Real-World Agentic Engineering at Scale<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p><strong>Summary:</strong> Spotify used their internal coding agent <em>Honk</em> to migrate ~1,800 downstream data pipelines off two deprecated datasets &#8212; work estimated at <strong>10 engineering weeks manually</strong>. They generated 240 automated PRs using Backstage lineage, code search, and their Fleet Management tooling. The post is honest about where it worked (standardised dbt and BigQuery Runner pipelines) and where it didn&#8217;t (their less-consistent Scio framework).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DkKB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72d07a3c-57b8-4cf8-9abe-1e0e705f50df_1920x1764.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DkKB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72d07a3c-57b8-4cf8-9abe-1e0e705f50df_1920x1764.png 424w, https://substackcdn.com/image/fetch/$s_!DkKB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72d07a3c-57b8-4cf8-9abe-1e0e705f50df_1920x1764.png 848w, https://substackcdn.com/image/fetch/$s_!DkKB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72d07a3c-57b8-4cf8-9abe-1e0e705f50df_1920x1764.png 1272w, https://substackcdn.com/image/fetch/$s_!DkKB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72d07a3c-57b8-4cf8-9abe-1e0e705f50df_1920x1764.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DkKB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72d07a3c-57b8-4cf8-9abe-1e0e705f50df_1920x1764.png" width="586" height="538.5082417582418" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/72d07a3c-57b8-4cf8-9abe-1e0e705f50df_1920x1764.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1338,&quot;width&quot;:1456,&quot;resizeWidth&quot;:586,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;fleetshift-internal-details-b (1920x).png&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="fleetshift-internal-details-b (1920x).png" title="fleetshift-internal-details-b (1920x).png" srcset="https://substackcdn.com/image/fetch/$s_!DkKB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72d07a3c-57b8-4cf8-9abe-1e0e705f50df_1920x1764.png 424w, https://substackcdn.com/image/fetch/$s_!DkKB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72d07a3c-57b8-4cf8-9abe-1e0e705f50df_1920x1764.png 848w, https://substackcdn.com/image/fetch/$s_!DkKB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72d07a3c-57b8-4cf8-9abe-1e0e705f50df_1920x1764.png 1272w, https://substackcdn.com/image/fetch/$s_!DkKB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72d07a3c-57b8-4cf8-9abe-1e0e705f50df_1920x1764.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://engineering.atspotify.com/2026/4/background-coding-agents-dataset-migrations-honk-part-4">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Context engineering - lineage, code search, test coverage is what made the agent useful</strong>, not prompt cleverness. The surrounding infrastructure determines how far an agent can actually go.</p></li><li><p><strong>Standardisation is now a prerequisite for automation.</strong> Honk succeeded on consistent frameworks and struggled on inconsistent ones. If your pipelines are a patchwork of bespoke patterns, agents will hit the same walls human engineers do, just faster.</p></li><li><p><strong>The migration use case is the most credible near-term application.</strong> Greenfield agentic pipelines are exciting in demos. Real ROI right now is in deprecations, schema migrations, and backfill rewrites; this post gives you a concrete template.</p></li></ul><h3><a href="https://docs.getdbt.com/blog/semantic-layer-vs-text-to-sql-2026">Semantic Layer vs. Text-to-SQL: 2026 Benchmark Update</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Data Modeling in the AI Era<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p><strong>Summary:</strong> dbt Labs re-ran their 2023 benchmark with today&#8217;s LLMs (Claude Opus 4.6, GPT-5.x and more). The gap has narrowed, models are dramatically better at text-to-SQL. But for questions within a well-modeled Semantic Layer, accuracy hits near 100%, because MetricFlow generates SQL deterministically: the LLM picks the metric and dimension; the engine handles the query. The benchmark is open-source and reproducible on your own data.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fAF6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ff1a9e0-8075-4d66-a560-70284efa2dff_1376x768.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fAF6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ff1a9e0-8075-4d66-a560-70284efa2dff_1376x768.png 424w, https://substackcdn.com/image/fetch/$s_!fAF6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ff1a9e0-8075-4d66-a560-70284efa2dff_1376x768.png 848w, https://substackcdn.com/image/fetch/$s_!fAF6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ff1a9e0-8075-4d66-a560-70284efa2dff_1376x768.png 1272w, https://substackcdn.com/image/fetch/$s_!fAF6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ff1a9e0-8075-4d66-a560-70284efa2dff_1376x768.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fAF6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ff1a9e0-8075-4d66-a560-70284efa2dff_1376x768.png" width="1376" height="768" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3ff1a9e0-8075-4d66-a560-70284efa2dff_1376x768.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:768,&quot;width&quot;:1376,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Diagram showing the four benchmark configurations: Text-to-SQL, Minimal Semantic Layer, Modeled Semantic Layer, and Text-to-SQL on modeled data&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Diagram showing the four benchmark configurations: Text-to-SQL, Minimal Semantic Layer, Modeled Semantic Layer, and Text-to-SQL on modeled data" title="Diagram showing the four benchmark configurations: Text-to-SQL, Minimal Semantic Layer, Modeled Semantic Layer, and Text-to-SQL on modeled data" srcset="https://substackcdn.com/image/fetch/$s_!fAF6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ff1a9e0-8075-4d66-a560-70284efa2dff_1376x768.png 424w, https://substackcdn.com/image/fetch/$s_!fAF6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ff1a9e0-8075-4d66-a560-70284efa2dff_1376x768.png 848w, https://substackcdn.com/image/fetch/$s_!fAF6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ff1a9e0-8075-4d66-a560-70284efa2dff_1376x768.png 1272w, https://substackcdn.com/image/fetch/$s_!fAF6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ff1a9e0-8075-4d66-a560-70284efa2dff_1376x768.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://docs.getdbt.com/blog/semantic-layer-vs-text-to-sql-2026?version=1.10">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>The failure modes are what matter.</strong> Text-to-SQL fails unpredictably and silently. The Semantic Layer fails loudly (&#8221;I can&#8217;t answer that&#8221;). For production AI agents querying your data, the deterministic failure mode is far more manageable.</p></li><li><p><strong>This is the empirical case for data modeling in the AI era.</strong> AI doesn&#8217;t make semantic consistency less important &#8212; it makes ambiguous metric definitions actively dangerous at inference scale. If your team is debating whether to invest in MetricFlow, this benchmark is the answer.</p></li></ul><h3><a href="https://joereis.substack.com/p/the-2026-state-of-data-engineering">The 2026 State of Data Engineering Survey (Interactive)</a></h3><blockquote><p><strong>&#128214; Topic</strong>: Agentic AI Adoption &amp; The State of the Profession<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p><strong>Summary:</strong> Joe Reis, the same person who reframed data modeling at DIS2026, surveyed 1,101 data engineers in early 2026 and published the results as a fully interactive explorer: filterable by role, org size, industry, and region, with raw CSV download and a SQL query interface on top of the dataset. The headline findings are striking: 82% of engineers use AI tools daily, but 64% of organisations are still experimenting or using AI for tactical tasks only. The biggest bottlenecks aren&#8217;t technical, legacy systems top the list, but lack of leadership direction and poor requirements are close behind.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mSNB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d328fdf-6dc0-4e61-b42f-9434ff534b65_772x423.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mSNB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d328fdf-6dc0-4e61-b42f-9434ff534b65_772x423.png 424w, https://substackcdn.com/image/fetch/$s_!mSNB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d328fdf-6dc0-4e61-b42f-9434ff534b65_772x423.png 848w, https://substackcdn.com/image/fetch/$s_!mSNB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d328fdf-6dc0-4e61-b42f-9434ff534b65_772x423.png 1272w, https://substackcdn.com/image/fetch/$s_!mSNB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d328fdf-6dc0-4e61-b42f-9434ff534b65_772x423.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mSNB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d328fdf-6dc0-4e61-b42f-9434ff534b65_772x423.png" width="772" height="423" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7d328fdf-6dc0-4e61-b42f-9434ff534b65_772x423.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:423,&quot;width&quot;:772,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:172716,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/196126359?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d328fdf-6dc0-4e61-b42f-9434ff534b65_772x423.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mSNB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d328fdf-6dc0-4e61-b42f-9434ff534b65_772x423.png 424w, https://substackcdn.com/image/fetch/$s_!mSNB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d328fdf-6dc0-4e61-b42f-9434ff534b65_772x423.png 848w, https://substackcdn.com/image/fetch/$s_!mSNB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d328fdf-6dc0-4e61-b42f-9434ff534b65_772x423.png 1272w, https://substackcdn.com/image/fetch/$s_!mSNB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d328fdf-6dc0-4e61-b42f-9434ff534b65_772x423.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://joereis.substack.com/p/the-2026-state-of-data-engineering">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>The gap between individual AI usage and organisational adoption is the most actionable number here.</strong> Most engineers are already using AI heavily; most organisations haven&#8217;t built the workflows, governance, or data foundations to deploy agents at scale. That gap is where data engineers can have the most impact right now: building the infrastructure that closes it.</p></li><li><p><strong>The modeling pain point is validated at scale.</strong> 59% cite &#8220;pressure to move fast&#8221; as their top pain point and only 11% say modeling is going well. If you&#8217;ve felt this tension in your own team, you&#8217;re not alone and the survey gives you real data to bring into conversations about prioritisation and technical debt.</p></li><li><p><strong>The interactive format makes this genuinely useful beyond the headline numbers.</strong> You can cross-tab by org size, region, or industry to find findings specific to your context which is far more valuable than a static report summary. It&#8217;s worth spending 20 minutes in the explorer rather than just reading the takeaways.</p></li></ul><h3><a href="https://engineering.fb.com/2026/04/06/developer-tools/how-meta-used-ai-to-map-tribal-knowledge-in-large-scale-data-pipelines/">How Meta Used AI to Map Tribal Knowledge in Large-Scale Data Pipelines</a></h3><blockquote><p><strong>&#128214; Topic</strong>: AI-Assisted Data Platform Engineering<br>&#129504; <strong>Level</strong>: Advanced</p></blockquote><p><strong>Summary:</strong> Meta&#8217;s engineering team built a pre-compute engine, a swarm of 50+ specialised AI agents, to systematically extract and encode the undocumented tribal knowledge buried across a large-scale data pipeline spanning four repositories, three languages, and 4,100+ files. The result: 59 concise context files covering 100% of code modules (up from 5%), 50+ non-obvious patterns documented for the first time, and ~40% fewer AI agent tool calls per task. The key design principle is &#8220;compass, not encyclopedia&#8221;: each context file is 25&#8211;35 lines, actionable, and auto-refreshed on a schedule so stale context can&#8217;t accumulate.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!F3fe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276236ff-7a8f-4405-9ddb-0ebf5f6cc9c0_1580x1354.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!F3fe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276236ff-7a8f-4405-9ddb-0ebf5f6cc9c0_1580x1354.png 424w, https://substackcdn.com/image/fetch/$s_!F3fe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276236ff-7a8f-4405-9ddb-0ebf5f6cc9c0_1580x1354.png 848w, https://substackcdn.com/image/fetch/$s_!F3fe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276236ff-7a8f-4405-9ddb-0ebf5f6cc9c0_1580x1354.png 1272w, https://substackcdn.com/image/fetch/$s_!F3fe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276236ff-7a8f-4405-9ddb-0ebf5f6cc9c0_1580x1354.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!F3fe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276236ff-7a8f-4405-9ddb-0ebf5f6cc9c0_1580x1354.png" width="1456" height="1248" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/276236ff-7a8f-4405-9ddb-0ebf5f6cc9c0_1580x1354.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1248,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!F3fe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276236ff-7a8f-4405-9ddb-0ebf5f6cc9c0_1580x1354.png 424w, https://substackcdn.com/image/fetch/$s_!F3fe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276236ff-7a8f-4405-9ddb-0ebf5f6cc9c0_1580x1354.png 848w, https://substackcdn.com/image/fetch/$s_!F3fe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276236ff-7a8f-4405-9ddb-0ebf5f6cc9c0_1580x1354.png 1272w, https://substackcdn.com/image/fetch/$s_!F3fe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276236ff-7a8f-4405-9ddb-0ebf5f6cc9c0_1580x1354.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://engineering.fb.com/2026/04/06/developer-tools/how-meta-used-ai-to-map-tribal-knowledge-in-large-scale-data-pipelines/">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Tribal knowledge is the real blocker for AI agents in data platforms.</strong> Generic coding agents fail on proprietary pipelines not because the models are weak, but because they have no map, they don&#8217;t know your naming conventions, cross-module dependencies, or the silent rules that break builds. This post is the clearest description I&#8217;ve seen of how to fix that.</p></li><li><p><strong>The &#8220;five questions&#8221; framework is directly applicable to your codebase today.</strong> For each module: what does it do, how do you modify it, what breaks silently, what depends on it, and what&#8217;s only in someone&#8217;s head? Running that exercise even manually will surface patterns you didn&#8217;t know were undocumented.</p></li><li><p><strong>Self-refreshing context is the part most teams miss.</strong> Meta automated periodic validation and re-generation of context files, because stale context causes more harm than no context. If you&#8217;re building any agent-assisted tooling on your data platform, freshness of the knowledge layer is as important as its accuracy.</p></li></ul><div><hr></div><h3><strong>&#128142; Open Source Gem</strong></h3><h3><a href="https://fluss.apache.org">Apache Fluss (Incubating) &#8212; Streaming Storage for Real-Time Lakehouses</a></h3><p>Apache Fluss is a streaming storage system, now in Apache incubation, that sits as a hot real-time layer in front of your lakehouse. The core idea: instead of choosing between a Kafka-style streaming system and a file-based lakehouse, Fluss gives you both under one table abstraction. It writes sub-second streaming data in Apache Arrow columnar format, then a built-in tiering service continuously compacts that data into standard lakehouse formats: Iceberg, Paimon, or Lance, making it queryable by Spark, StarRocks, Trino, and Flink without any extra pipeline plumbing.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3pCS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23e7d1c4-748a-4376-85c6-89d7ba3df902_2160x978.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3pCS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23e7d1c4-748a-4376-85c6-89d7ba3df902_2160x978.png 424w, https://substackcdn.com/image/fetch/$s_!3pCS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23e7d1c4-748a-4376-85c6-89d7ba3df902_2160x978.png 848w, https://substackcdn.com/image/fetch/$s_!3pCS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23e7d1c4-748a-4376-85c6-89d7ba3df902_2160x978.png 1272w, https://substackcdn.com/image/fetch/$s_!3pCS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23e7d1c4-748a-4376-85c6-89d7ba3df902_2160x978.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3pCS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23e7d1c4-748a-4376-85c6-89d7ba3df902_2160x978.png" width="2160" height="978" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/23e7d1c4-748a-4376-85c6-89d7ba3df902_2160x978.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:978,&quot;width&quot;:2160,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:267384,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&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_!3pCS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23e7d1c4-748a-4376-85c6-89d7ba3df902_2160x978.png 424w, https://substackcdn.com/image/fetch/$s_!3pCS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23e7d1c4-748a-4376-85c6-89d7ba3df902_2160x978.png 848w, https://substackcdn.com/image/fetch/$s_!3pCS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23e7d1c4-748a-4376-85c6-89d7ba3df902_2160x978.png 1272w, https://substackcdn.com/image/fetch/$s_!3pCS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23e7d1c4-748a-4376-85c6-89d7ba3df902_2160x978.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://fluss.apache.org/">source</a></figcaption></figure></div><p><strong>&#128240; What&#8217;s new / why now</strong></p><p>The 0.8 release added full Streaming Lakehouse support for <strong>Apache Iceberg</strong> (continuously tiered, with exactly-once semantics and built-in compaction) and <strong>Lance</strong> (the vector-native format for AI/ML workloads). The headline feature is <strong>Delta Joins with Flink</strong> by externalising join state into Fluss tables, Flink performs joins incrementally on data deltas, cutting CPU/memory by up to 80% and checkpoint durations from 90 seconds to 1 second in early production deployments. It&#8217;s now fully compatible with Flink 2.1.</p><p><strong>&#128161; Why is this useful for DEs?</strong></p><ul><li><p><strong>It solves the oldest problem in streaming lakehouses.</strong> File-based formats like Iceberg have a practical lower latency bound of ~1 minute due to file commit overhead. Fluss breaks that wall by acting as the hot tier, giving you sub-second freshness without abandoning Iceberg for historical analytics.</p></li><li><p><strong>One table, two access patterns.</strong> Flink can union-read both the real-time Fluss data and the compacted Iceberg history in a single query, no separate pipelines, no data duplication, no metadata inconsistency between streaming and batch layers.</p></li><li><p><strong>Delta Joins are a genuine step forward for stateful streaming.</strong> If you&#8217;ve ever dealt with Flink state explosion on large join operations, externalising that state into Fluss is a meaningful architectural improvement, not just a configuration tweak.</p></li></ul><p>&#128073; <strong>GitHub</strong>: <a href="https://github.com/apache/fluss">https://github.com/apache/fluss</a></p><div><hr></div><h3><strong>&#128161; DE Tip of the Month </strong></h3><p><strong>Managing Query Costs in Cloud Data Warehouses Through Tagging and Attribution</strong></p><p>Cloud data warehouses bill by compute consumed, which means a single expensive query from an untracked workload can inflate costs significantly before anyone notices. In many organisations, warehouse spend grows with usage but the breakdown, which pipelines, teams, or jobs are responsible, etc remains unclear until the bill arrives. Building cost attribution into your warehouse setup from the start makes spend visible, accountable, and actionable.</p><p><strong>&#128210; Rules of thumb</strong></p><ul><li><p><strong>Apply query tags or labels at the session or job level.</strong> Most major platforms (Snowflake, BigQuery, Databricks) support attaching metadata to queries like a pipeline name, team identifier, or environment tag. Doing this consistently means your query history becomes a cost ledger you can slice by workload, not just a raw list of executions.</p></li><li><p><strong>Set warehouse or compute cluster size limits relative to the workload type.</strong> Transformation jobs and ad-hoc exploratory queries have very different compute requirements. Routing them to appropriately sized resources rather than a single general-purpose warehouse prevents exploratory queries from consuming resources provisioned for production pipelines.</p></li><li><p><strong>Schedule cost reviews as part of your regular pipeline health checks.</strong> A query that was efficient at last year&#8217;s data volumes may be expensive today. Reviewing the top consumers by compute spend on a regular cadence surfaces regressions early, before they accumulate.</p></li><li><p><strong>Use query result caching deliberately.</strong> Repeated identical queries common in BI dashboard refreshes can often be served from cache at zero compute cost. Verify that caching is enabled for appropriate workloads and that transformations upstream are not inadvertently invalidating it on every run.</p></li></ul><div><hr></div><h3>&#128202; Community Poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:505303}" data-component-name="PollToDOM"></div><p>Until next time, cheers!</p><p><a href="https://www.linkedin.com/in/chozhan-d-m/">Chozhan</a>, <a href="https://www.linkedin.com/in/srivigneshkn/">Sri</a>, &amp; <a href="https://www.linkedin.com/in/anandaganesh/">Ananda</a></p><div><hr></div><h4>&#8505;&#65039; About Data Engineer Things</h4><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Data Engineering Open Forum 2026 Recap]]></title><description><![CDATA[DEOF 2026 Recap: 20+ sessions all pointing the same direction: the data engineer role is expanding, not disappearing. Talk recordings, and a closing keynote that hit different.]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-b85</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-b85</guid><dc:creator><![CDATA[Volker Janz]]></dc:creator><pubDate>Thu, 30 Apr 2026 15:02:53 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!fdqe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.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_!fdqe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fdqe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!fdqe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!fdqe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!fdqe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fdqe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1776983,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/195640189?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!fdqe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!fdqe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!fdqe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!fdqe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c519642-9b9b-45dd-9bbb-616691544e85_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hey everyone,</p><p>On April 16th 2026, hundreds of data engineers gathered at The Contemporary Jewish Museum in San Francisco for the third annual <strong>Data Engineering Open Forum</strong>. DEOF 2026 was a day packed with technical depth, honest conversations, and the kind of energy you only get when a community shows up for each other.</p><p>We want to share what happened, what people took away, and what it all means for <strong>where data engineering is heading</strong>.</p><p>&#8212; <em>Team DET &#128155;</em></p><p><strong>tl;dr:</strong> &#128252; <a href="https://www.youtube.com/playlist?list=PLTDfuxyNWpIxxV_uzLijxZfpLbIvlmm-C">Talk recordings out on YouTube</a></p><div><hr></div><h3><strong>&#128172; What the Community Said</strong></h3><blockquote><p><em>&#8220;DEOF is the professional highlight of my year.&#8221;</em></p></blockquote><p><strong>Yaakov Bressler</strong> (<a href="https://www.linkedin.com/posts/yaakovbressler_deof-is-the-professional-highlight-of-my-ugcPost-7451010787248148480-CQq0/">LinkedIn post</a>)</p><blockquote><p><em>&#8220;I&#8217;ve been to quite a few conferences, and this was one of the best so far. What made it stand out? It was purely community-driven.&#8221;</em></p></blockquote><p><strong>Yang (Eric) Liu</strong> (<a href="https://www.linkedin.com/posts/yang-eric-liu_dataengineering-datacommunity-deof-ugcPost-7451097989508685824-X4l4">LinkedIn post</a>)</p><blockquote><p><em>&#8220;Data engineering is changing, not disappearing. Agents rely on pipelines just as much as business users do, and everything depends on strong, reliable data foundations.&#8221;</em></p></blockquote><p><strong>Michelle Winters</strong> (<a href="https://www.linkedin.com/posts/mufford_deof-ugcPost-7453271119492456449-wxxi">LinkedIn post</a>)</p><blockquote><p><em>&#8220;At petabyte-scale, architecture isn&#8217;t just about what&#8217;s technically great, it&#8217;s about the constraints the business puts on you.&#8221;</em></p></blockquote><p><strong>Narasimha G.</strong> (<a href="https://www.linkedin.com/posts/narasimharaog_deof-dataengineering-genai-ugcPost-7450818289968001024-lzfM">LinkedIn post</a>)</p><blockquote><p><em>&#8220;The role is evolving fast, especially around owning and operating agentic workflows, building in the right guardrails, and making sure observability and alerting are part of the picture from the start.&#8221;</em></p></blockquote><p><strong>Jordan Lewis</strong> (<a href="https://www.linkedin.com/posts/jordanallenlewis_dataengineering-dremio-lakehouse-ugcPost-7451008561230290944-xxvD">LinkedIn post</a>)</p><blockquote><p><em>&#8220;AI doesn&#8217;t replace data engineering. What will change is the scope of the role. It&#8217;s about thinking of data as a product, how it is used, and the impact it has on the business.&#8221;</em></p></blockquote><p><strong>Valentin Marek</strong> (<a href="https://www.linkedin.com/posts/valentin-marek-95055658_deof-analytics-ai-share-7450995535521431552-tBml">LinkedIn post</a>)</p><p>For a truly comprehensive recap, check out <strong>Pawel Mikler&#8217;s</strong> detailed write-up. Pawel holds the unofficial title of the only attendee who crossed the Atlantic from Europe specifically for DEOF, making it three years in a row.</p><p><a href="https://www.linkedin.com/pulse/lessons-from-best-my-recap-data-engineering-open-forum-pawel-mikler-flz1f/">Read Pawel&#8217;s full recap on LinkedIn</a></p><div><hr></div><div class="image-gallery-embed" data-attrs="{&quot;gallery&quot;:{&quot;images&quot;:[{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cb943907-fd1a-469e-aecb-b5c23bde3a2d_1667x2500.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/95a203ad-ab1a-4cfb-9a97-9453e96a4b40_2500x2426.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b23c7a0f-c1d0-40fd-855c-86ab4db2f6f4_1803x2500.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5f3301eb-d857-4132-8e5a-af76741ce7b7_1739x2500.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/609c74c4-d2ae-47af-b7b8-ad3ecbb7c454_4804x3203.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1e64d791-0cf3-41e5-9e62-26128fbc8c2e_6000x4000.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/40c9a9d9-b9a4-4a90-bce6-16365991fa0e_6000x4000.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e06375b0-e9b7-4d18-9ecb-afb27671be7e_6000x4000.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/05e9604e-703f-4005-a6ff-67ae6db24a56_6000x4000.jpeg&quot;}],&quot;caption&quot;:&quot;&quot;,&quot;alt&quot;:&quot;&quot;,&quot;staticGalleryImage&quot;:{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d9728305-03bb-47bb-907e-dbd0bff8e467_1456x1454.png&quot;}},&quot;isEditorNode&quot;:true}"></div><p><em>Pictures by <a href="https://duhonphotography.com/">DuHon Photography</a></em></p><div><hr></div><h3>&#9874;&#65039; Data Engineering Project: Build Real-Time IoT Analytics</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!feOs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675ed08-c1c2-4d11-90f9-638f3a25d276_2048x1028.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!feOs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675ed08-c1c2-4d11-90f9-638f3a25d276_2048x1028.png 424w, https://substackcdn.com/image/fetch/$s_!feOs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675ed08-c1c2-4d11-90f9-638f3a25d276_2048x1028.png 848w, https://substackcdn.com/image/fetch/$s_!feOs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675ed08-c1c2-4d11-90f9-638f3a25d276_2048x1028.png 1272w, https://substackcdn.com/image/fetch/$s_!feOs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675ed08-c1c2-4d11-90f9-638f3a25d276_2048x1028.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!feOs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675ed08-c1c2-4d11-90f9-638f3a25d276_2048x1028.png" width="1456" height="731" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e675ed08-c1c2-4d11-90f9-638f3a25d276_2048x1028.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:731,&quot;width&quot;:1456,&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;:true,&quot;topImage&quot;:false,&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_!feOs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675ed08-c1c2-4d11-90f9-638f3a25d276_2048x1028.png 424w, https://substackcdn.com/image/fetch/$s_!feOs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675ed08-c1c2-4d11-90f9-638f3a25d276_2048x1028.png 848w, https://substackcdn.com/image/fetch/$s_!feOs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675ed08-c1c2-4d11-90f9-638f3a25d276_2048x1028.png 1272w, https://substackcdn.com/image/fetch/$s_!feOs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe675ed08-c1c2-4d11-90f9-638f3a25d276_2048x1028.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>This data engineering tutorial teaches you to build real-time IoT analytics using time-series datasets with relational metadata. You will learn to:</p><ul><li><p>Optimize PostgreSQL tables into time-series hypertables.</p></li><li><p>Use compression to achieve 10x storage reduction and faster queries.</p></li><li><p>Enable lightning-fast analytics with pre-compute aggregation.</p></li></ul><p>&#128073; Get started with the project here: <a href="https://fandf.co/4tJJK87">Github</a>.</p><p><em>(This post is sponsored by TigerData)</em></p><div><hr></div><h3>&#128155; From the DET Crew</h3><p>Our DET volunteers were embedded throughout the day, facilitating conversations, running the community booth, and soaking it all in. Here is what stood out to them.</p><p><strong>Sanchit</strong> was struck by Dinesh Thangaraju&#8217;s talk on federated knowledge infrastructure:</p><blockquote><p><em>&#8220;It reinforced fundamentals we&#8217;ve heard before, getting references right, avoiding multiple competing definitions for something as basic as &#8216;revenue&#8217;, but raised the stakes dramatically. In the AI age, a single wrong reference can cascade into serious output errors.&#8221;</em></p></blockquote><p>His unexpected takeaway? AI adoption is rising from the bottom up, not the top down:</p><blockquote><p><em>&#8220;I discovered use cases from talks that I hadn&#8217;t even considered, things that could be replicated at my organization immediately. We need a demo/showcase culture to surface this bottom-up innovation.&#8221;</em></p></blockquote><p><strong>Yaakov</strong> noticed data engineering branching into two diverging paths:</p><blockquote><p><em>&#8220;People building coding agents, self-healing bots, context layers, to speed up DE execution. This role becomes a builder role and starts looking more like PM. Data Infrastructure, deeper technical capabilities. Building infrastructure for agents to execute on and with. This role starts evolving into a new kind of software/data builder.&#8221;</em></p></blockquote><p>His conclusion? DE is changing fast, and the best way to keep up is to show up.</p><div class="pullquote"><p>&#8220;Meet people. Hear what they are building. That is exactly what DEOF is for.&#8221;</p><div class="image-gallery-embed" data-attrs="{&quot;gallery&quot;:{&quot;images&quot;:[{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d82f426-9d26-474a-9e39-792ede8633ef_2500x1813.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c6df6653-958c-4df7-acc0-b3c21f3da26b_2500x1667.jpeg&quot;},{&quot;type&quot;:&quot;image/jpeg&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d139d182-da4a-4680-8762-1553ef99ca93_5572x3715.jpeg&quot;}],&quot;caption&quot;:&quot;&quot;,&quot;alt&quot;:&quot;&quot;,&quot;staticGalleryImage&quot;:{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f0e8b5da-bbca-4b9c-b6d7-0070f9346ffd_1456x474.png&quot;}},&quot;isEditorNode&quot;:true}"></div></div><h3>&#127775; Session Highlights</h3><p><strong>Indrajit Roy (Databricks)</strong> opened with the evolution of Apache Spark Structured Streaming and the introduction of Spark Declarative Pipelines. The takeaway: real-time capabilities are no longer reserved for streaming specialists. Express the logic, and the engine handles the rest.</p><div id="youtube2-VLJhGDwTS3I" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;VLJhGDwTS3I&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/VLJhGDwTS3I?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p><strong>Jerry Wang (Airbnb)</strong> followed with a 15-year retrospective on data infrastructure, making the case for the full-stack data engineer and the death of the &#8220;chain of custody&#8221; model.</p><div id="youtube2-1iAZgJaHxhg" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;1iAZgJaHxhg&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/1iAZgJaHxhg?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>The <strong>closing keynote panel</strong> brought together <strong>Laura Pruitt (Netflix)</strong>, <strong>Paul Ellwood (OpenAI)</strong>, and <strong>Vikram Koka (Astronomer)</strong>, moderated by <strong>Michelle Winters</strong>. They tackled the hard questions: what does the future of data engineering look like? What skills should we double down on? How do we make sure AI truly serves humanity? An absolute must-watch for every data engineer!</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ED0H!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e2e1f4f-b23f-4720-a7ae-4dc8f00b692a_1920x1080.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ED0H!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e2e1f4f-b23f-4720-a7ae-4dc8f00b692a_1920x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ED0H!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e2e1f4f-b23f-4720-a7ae-4dc8f00b692a_1920x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ED0H!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e2e1f4f-b23f-4720-a7ae-4dc8f00b692a_1920x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ED0H!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e2e1f4f-b23f-4720-a7ae-4dc8f00b692a_1920x1080.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ED0H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e2e1f4f-b23f-4720-a7ae-4dc8f00b692a_1920x1080.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4e2e1f4f-b23f-4720-a7ae-4dc8f00b692a_1920x1080.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&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;:true,&quot;topImage&quot;:false,&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_!ED0H!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e2e1f4f-b23f-4720-a7ae-4dc8f00b692a_1920x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ED0H!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e2e1f4f-b23f-4720-a7ae-4dc8f00b692a_1920x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ED0H!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e2e1f4f-b23f-4720-a7ae-4dc8f00b692a_1920x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ED0H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e2e1f4f-b23f-4720-a7ae-4dc8f00b692a_1920x1080.jpeg 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><div id="youtube2-k8-UZNSvQF0" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;k8-UZNSvQF0&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/k8-UZNSvQF0?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h3>&#128252; Talk Recordings</h3><p>Catch all DEOF talks in <a href="https://www.youtube.com/playlist?list=PLTDfuxyNWpIxxV_uzLijxZfpLbIvlmm-C">this YouTube playlist</a>!</p><h3>&#128217; Xinran&#8217;s Closing Words</h3><p>Xinran closed the day with words that many of us will carry for a long time:</p><p><strong>&#8220;Change is scary, but so is staying the same.&#8221;</strong></p><p>She asked the room to take one thing home: <em><strong>courage</strong></em>. The courage to start that project you have been putting off. The courage to reach out to someone new. The courage to evolve alongside this field rather than resisting the change.</p><blockquote><p><em>&#8220;If you were inspired by a talk, do your follow-up research and try to adopt it in your own work. If you met a new friend, connect on LinkedIn and remember to catch up again later. If you felt courageous, start on that new project that you were afraid to pick up. When we meet again, let me know how it goes.&#8221;</em></p></blockquote><p><strong>Xinran Waibel</strong> (<a href="https://www.linkedin.com/posts/xinranwaibel_deof-deof2026-dataengineering-ugcPost-7452271890863288320-M9jo">LinkedIn post</a>)</p><div><hr></div><h3>&#128640; DEOF 2027 Look Ahead</h3><p><strong>Stay in the Loop</strong></p><blockquote><p>Join our <a href="https://groups.google.com/g/data-engineering-open-forum">Google Group</a> for DEOF 2027 announcements, CFP updates, volunteer opportunities, and community news.</p></blockquote><p><strong>Sponsor DEOF 2027</strong></p><blockquote><p>Interested in partnering with the data engineering community? Complete our <a href="https://forms.gle/HpcaGq95Pf3R2iEQ9">sponsorship interest form</a>.</p></blockquote><div><hr></div><h3>&#128591; Thank You</h3><p>DEOF 2026 would not have happened without the collective effort of so many people.</p><p><strong>Our speakers</strong> shared their knowledge generously. From keynotes to deep dives, every session reflected real experience and genuine insight.</p><p><strong>Our program committee</strong> designed the programming and supported speakers to deliver their best: Apoorva Bapat, Goutham Budati, Jerry Wang, Michelle Winters, Sharath Chandra, Shruthi Jaganathan, Tulika Bhatt, Will Monge, and Xinran Waibel.</p><p><strong>Our volunteer leads</strong> kept everything running smoothly: Anna Peng, Annu Joshi, and Balachandar Paulraj, along with the entire volunteer crew who facilitated conversations and helped every attendee get the most out of the day.</p><p><strong>Our sponsors</strong> made this community event possible. We want to give a special thank you to Team <a href="https://www.databricks.com/">Databricks</a> (Denny and Lisa) and Team <a href="https://www.astronomer.io/">Astronomer</a> (Caitlin and Volker) for their support and trust from the very beginning.</p><p><strong>Our attendees</strong> showed up, asked real questions, shared lessons honestly, and stepped out of their comfort zones. You are the reason this community exists.</p><div><hr></div><h3>&#128587; Community Poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:502860}" data-component-name="PollToDOM"></div><div><hr></div><h3>&#8505;&#65039; About Data Engineer Things</h3><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Data Pulse Edition (Apr 2026)]]></title><description><![CDATA[Context engineering for AI-native platforms, Spotify's pipelines behind Wrapped 2025, and DuckLake 1.0 production release]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-8c4</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-8c4</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 21 Apr 2026 15:03:29 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!RTUZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.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_!RTUZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RTUZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!RTUZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!RTUZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!RTUZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RTUZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:285384,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193539795?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!RTUZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!RTUZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!RTUZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!RTUZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b4cddf4-2a32-4fde-8d63-7914fa2320a9_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p style="text-align: justify;">Hello Folks,</p><p style="text-align: justify;">Great to connect with you through this month&#8217;s newsletter.</p><p style="text-align: justify;">I&#8217;m writing this from Coimbatore, India where summer is in full swing bright days, a bit of heat, and that constant push to slow down and pace yourself.</p><p style="text-align: justify;">I&#8217;m Sri. I work in the data engineering and AI space, focusing on building scalable data platforms and Enterprise AI solutions enabling teams to make better use of data in real-world scenarios. Over time, I&#8217;ve come to appreciate that this field is more about how thoughtfully we design systems that people can rely on.</p><p style="text-align: justify;">Outside of work, I enjoy reading, traveling, and watching movies small ways to recharge and stay curious. In many ways, this community feels similar: a space where we can learn from each other, share ideas, and keep growing together.</p><p style="text-align: justify;">This edition brings together a set of interesting ideas and perspectives from across the data engineering world. I hope you find something here that resonates or sparks a new thought.</p><p style="text-align: justify;">Happy reading, and thank you for being part of this journey.</p><p style="text-align: justify;">&#8211; Sri</p><div><hr></div><h3><strong>&#128218;</strong> Data Pulse</h3><h4><a href="https://datahub.com/blog/context-engineering/">The Data Engineer&#8217;s Guide to Context Engineering</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data &amp; Context Engineering<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p style="text-align: justify;"><strong>Summary: </strong>Modern data platforms are moving from managing raw data to managing context. The article introduces &#8220;context engineering&#8221; as a structured way to capture, enrich, and operationalize metadata so both humans and AI systems can understand data better. It focuses on building context layers like lineage, ownership, usage patterns, and semantics to improve discoverability, trust, and usability, especially in AI-driven workflows that need richer signals for accurate reasoning.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LsTp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4efb9289-d47c-412b-ab8c-cbfe84cbe516_724x369.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LsTp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4efb9289-d47c-412b-ab8c-cbfe84cbe516_724x369.png 424w, https://substackcdn.com/image/fetch/$s_!LsTp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4efb9289-d47c-412b-ab8c-cbfe84cbe516_724x369.png 848w, https://substackcdn.com/image/fetch/$s_!LsTp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4efb9289-d47c-412b-ab8c-cbfe84cbe516_724x369.png 1272w, https://substackcdn.com/image/fetch/$s_!LsTp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4efb9289-d47c-412b-ab8c-cbfe84cbe516_724x369.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LsTp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4efb9289-d47c-412b-ab8c-cbfe84cbe516_724x369.png" width="724" height="369" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4efb9289-d47c-412b-ab8c-cbfe84cbe516_724x369.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:369,&quot;width&quot;:724,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:146237,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193539795?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4efb9289-d47c-412b-ab8c-cbfe84cbe516_724x369.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LsTp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4efb9289-d47c-412b-ab8c-cbfe84cbe516_724x369.png 424w, https://substackcdn.com/image/fetch/$s_!LsTp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4efb9289-d47c-412b-ab8c-cbfe84cbe516_724x369.png 848w, https://substackcdn.com/image/fetch/$s_!LsTp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4efb9289-d47c-412b-ab8c-cbfe84cbe516_724x369.png 1272w, https://substackcdn.com/image/fetch/$s_!LsTp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4efb9289-d47c-412b-ab8c-cbfe84cbe516_724x369.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://datahub.com/blog/context-engineering/">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p style="text-align: justify;"><strong>AI-ready data platforms:</strong> As AI pipelines grow, systems need context along with raw data to interpret it correctly. Context engineering enables AI-native data platforms.</p></li><li><p><strong>Metadata as a core building block:</strong> Metadata like lineage, ownership, and quality signals becomes a first-class part of the system, not an afterthought.</p></li><li><p><strong>Improved data trust and discovery:</strong> Adding operational and semantic context helps users quickly understand what data means, where it comes from, and how reliable it is.</p></li><li><p><strong>Beyond static catalogs:</strong> Instead of passive catalogs, this approach enables dynamic, continuously evolving context that reflects real usage and system behavior.</p></li></ul><h4><a href="https://engineering.atspotify.com/2026/3/inside-the-archive-2025-wrapped">Spotify: Inside the Archive: The Tech Behind Your 2025 Wrapped Highlights</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Engineering<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p style="text-align: justify;"><strong>Summary: </strong>Spotify explains the engineering behind its 2025 Wrapped &#8220;Archive,&#8221; which goes beyond static summaries by turning listening behavior into narratives. It identifies meaningful moments like taste shifts and binge sessions and converts them into personalized stories. This required large-scale pipelines to precompute billions of user-specific insights, combined with AI-generated narratives to deliver a near real-time experience to hundreds of millions of users.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Btmj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54953175-2caf-4051-a87c-1af496a94790_793x453.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Btmj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54953175-2caf-4051-a87c-1af496a94790_793x453.png 424w, https://substackcdn.com/image/fetch/$s_!Btmj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54953175-2caf-4051-a87c-1af496a94790_793x453.png 848w, https://substackcdn.com/image/fetch/$s_!Btmj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54953175-2caf-4051-a87c-1af496a94790_793x453.png 1272w, https://substackcdn.com/image/fetch/$s_!Btmj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54953175-2caf-4051-a87c-1af496a94790_793x453.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Btmj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54953175-2caf-4051-a87c-1af496a94790_793x453.png" width="793" height="453" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/54953175-2caf-4051-a87c-1af496a94790_793x453.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:453,&quot;width&quot;:793,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:98757,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193539795?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54953175-2caf-4051-a87c-1af496a94790_793x453.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Btmj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54953175-2caf-4051-a87c-1af496a94790_793x453.png 424w, https://substackcdn.com/image/fetch/$s_!Btmj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54953175-2caf-4051-a87c-1af496a94790_793x453.png 848w, https://substackcdn.com/image/fetch/$s_!Btmj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54953175-2caf-4051-a87c-1af496a94790_793x453.png 1272w, https://substackcdn.com/image/fetch/$s_!Btmj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54953175-2caf-4051-a87c-1af496a94790_793x453.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://engineering.atspotify.com/2026/3/inside-the-archive-2025-wrapped">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p style="text-align: justify;"><strong>From metrics to moments:</strong> Traditional analytics focuses on aggregates like counts and top items. This approach turns raw data into meaningful events and storytelling units.</p></li><li><p><strong>AI + data engineering convergence:</strong> It combines data pipelines with LLM-based narrative generation, showing how data systems are evolving for AI-driven experiences.</p></li><li><p><strong>Product thinking for data:</strong> Engineers move beyond pipelines to designing outputs users directly interact with, making data work more product-oriented.</p></li><li><p><strong>Serving at global scale:</strong> Delivering a consistent experience to hundreds of millions of users requires tight coordination across processing, storage, and serving layers.</p></li></ul><h4><strong><a href="https://blog.bytebytego.com/p/nextdoors-database-evolution-a-scaling">Nextdoor&#8217;s Database Evolution: A Scaling Ladder</a></strong></h4><blockquote><p><strong>&#128214; Topic</strong>: Databases<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p style="text-align: justify;"><strong>Summary: </strong>ByteByteGo describes Nextdoor&#8217;s database evolution as incremental scaling steps. It starts with a single Postgres instance and grows by adding connection pooling, read replicas, caching, and reconciliation as needed. Each change fixes a bottleneck but adds complexity such as replication lag and consistency challenges. The key takeaway is that scaling is continuous and every improvement involves trade-offs.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9REA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe563bbf9-6ef7-468e-839b-8a5537388eea_774x586.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9REA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe563bbf9-6ef7-468e-839b-8a5537388eea_774x586.png 424w, https://substackcdn.com/image/fetch/$s_!9REA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe563bbf9-6ef7-468e-839b-8a5537388eea_774x586.png 848w, https://substackcdn.com/image/fetch/$s_!9REA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe563bbf9-6ef7-468e-839b-8a5537388eea_774x586.png 1272w, https://substackcdn.com/image/fetch/$s_!9REA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe563bbf9-6ef7-468e-839b-8a5537388eea_774x586.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9REA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe563bbf9-6ef7-468e-839b-8a5537388eea_774x586.png" width="774" height="586" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e563bbf9-6ef7-468e-839b-8a5537388eea_774x586.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:586,&quot;width&quot;:774,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:154953,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193539795?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe563bbf9-6ef7-468e-839b-8a5537388eea_774x586.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9REA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe563bbf9-6ef7-468e-839b-8a5537388eea_774x586.png 424w, https://substackcdn.com/image/fetch/$s_!9REA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe563bbf9-6ef7-468e-839b-8a5537388eea_774x586.png 848w, https://substackcdn.com/image/fetch/$s_!9REA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe563bbf9-6ef7-468e-839b-8a5537388eea_774x586.png 1272w, https://substackcdn.com/image/fetch/$s_!9REA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe563bbf9-6ef7-468e-839b-8a5537388eea_774x586.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://blog.bytebytego.com/p/nextdoors-database-evolution-a-scaling">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p style="text-align: justify;"><strong>Scaling is incremental:</strong> Systems evolve step by step as scale increases, adding new layers as bottlenecks emerge.</p></li><li><p><strong>Read and write separation is essential:</strong> As traffic grows, reads often become the bottleneck, requiring a primary-replica model to split read and write workloads.</p></li><li><p><strong>Operational complexity grows with scale:</strong> Pooling, replication, and caching add complexity, making observability, alerting, and incident management critical for debugging and reliability.</p></li><li><p><strong>Pragmatic architecture decisions:</strong> Each change is driven by a specific need, favoring practical, context-driven engineering over &#8220;perfect&#8221; designs.</p></li></ul><h4><a href="https://www.uber.com/us/en/blog/accelerating-deep-learning/?uclick_id=7c32dff2-12e8-4d26-8ca0-c2cc6af0a567">Uber: Accelerating Deep Learning: How Uber Optimized Petastorm for High-Throughput</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Infrastructure and AI<br>&#129504; <strong>Level</strong>:  Advanced</p></blockquote><p style="text-align: justify;"><strong>Summary: </strong>Uber explains how it scaled its deep learning systems to support increasingly complex AI use cases. As it moved from traditional ML to deep learning and then generative AI, compute and workflow demands increased significantly. This led to investments in GPU efficiency, distributed training, and a streamlined ML lifecycle. The focus shifted toward reducing training time, improving efficiency, and standardizing processes so teams could reuse workflows instead of rebuilding them.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!iSuZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb644542c-0290-494f-a142-d333f73d193b_819x459.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!iSuZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb644542c-0290-494f-a142-d333f73d193b_819x459.png 424w, https://substackcdn.com/image/fetch/$s_!iSuZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb644542c-0290-494f-a142-d333f73d193b_819x459.png 848w, https://substackcdn.com/image/fetch/$s_!iSuZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb644542c-0290-494f-a142-d333f73d193b_819x459.png 1272w, https://substackcdn.com/image/fetch/$s_!iSuZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb644542c-0290-494f-a142-d333f73d193b_819x459.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!iSuZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb644542c-0290-494f-a142-d333f73d193b_819x459.png" width="819" height="459" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b644542c-0290-494f-a142-d333f73d193b_819x459.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:459,&quot;width&quot;:819,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:90712,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193539795?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb644542c-0290-494f-a142-d333f73d193b_819x459.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!iSuZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb644542c-0290-494f-a142-d333f73d193b_819x459.png 424w, https://substackcdn.com/image/fetch/$s_!iSuZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb644542c-0290-494f-a142-d333f73d193b_819x459.png 848w, https://substackcdn.com/image/fetch/$s_!iSuZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb644542c-0290-494f-a142-d333f73d193b_819x459.png 1272w, https://substackcdn.com/image/fetch/$s_!iSuZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb644542c-0290-494f-a142-d333f73d193b_819x459.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://www.uber.com/us/en/blog/accelerating-deep-learning/?uclick_id=7c32dff2-12e8-4d26-8ca0-c2cc6af0a567">source</a></figcaption></figure></div><p><strong> &#128161; Why is this relevant for DEs?</strong></p><ul><li><p style="text-align: justify;"><strong>Data infrastructure fuels AI:</strong> Deep learning performance depends heavily on the underlying data pipelines, making scalable, high-throughput infrastructure essential for training and inference.</p></li><li><p><strong>Compute-aware data design:</strong> With GPUs and distributed training, data engineering choices directly affect cost and speed, making formats, storage, and access patterns critical.</p></li><li><p><strong>End-to-end pipeline thinking:</strong> Data engineering extends beyond ingestion to include feature pipelines, training data preparation, and real-time serving within unified ML systems.</p></li><li><p><strong>Efficiency at scale:</strong> Small inefficiencies become expensive at scale, reinforcing the need to optimize data movement, reduce redundancy, and align pipelines with compute resources.</p></li></ul><h4><a href="https://www.datagibberish.com/p/transition-from-managing-data-pipelines-to-managing-people-with-prajakta">From Building Pipelines to Building Teams</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Engineering &amp; Leadership<br>&#129504; <strong>Level</strong>:  Intermediate</p></blockquote><p style="text-align: justify;"><strong>Summary: </strong>This article explores the transition from hands-on data engineering to people management. It highlights that skills like solving technical problems and building pipelines do not directly translate to leadership. The focus shifts to enabling others, setting direction, and creating an environment where teams can work effectively.</p><p><strong> &#128161; Why is this relevant for DEs?</strong></p><ul><li><p style="text-align: justify;"><strong>New skill set required:</strong> Technical depth alone is not enough. Communication, decision-making, and empathy become essential for managing teams and aligning stakeholders.</p></li><li><p><strong>Shift from systems to people:</strong> Career growth in data engineering moves from building solutions to enabling and guiding others to build them.</p></li><li><p><strong>Leadership before title:</strong> Effective leaders often demonstrate leadership early by mentoring, unblocking teammates, and influencing decisions before moving into formal management.</p></li></ul><div><hr></div><h3>&#9874;&#65039; OpenXData 2026</h3><div class="captioned-image-container"><figure><div class="image-link image2" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7KgA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d624472-4067-455f-a6a2-13d93933937b_837x227.png 424w, https://substackcdn.com/image/fetch/$s_!7KgA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d624472-4067-455f-a6a2-13d93933937b_837x227.png 848w, https://substackcdn.com/image/fetch/$s_!7KgA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d624472-4067-455f-a6a2-13d93933937b_837x227.png 1272w, https://substackcdn.com/image/fetch/$s_!7KgA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d624472-4067-455f-a6a2-13d93933937b_837x227.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7KgA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d624472-4067-455f-a6a2-13d93933937b_837x227.png" width="614" height="166.52090800477896" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7d624472-4067-455f-a6a2-13d93933937b_837x227.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:227,&quot;width&quot;:837,&quot;resizeWidth&quot;:614,&quot;bytes&quot;:198456,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193539795?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d624472-4067-455f-a6a2-13d93933937b_837x227.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7KgA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d624472-4067-455f-a6a2-13d93933937b_837x227.png 424w, https://substackcdn.com/image/fetch/$s_!7KgA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d624472-4067-455f-a6a2-13d93933937b_837x227.png 848w, https://substackcdn.com/image/fetch/$s_!7KgA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d624472-4067-455f-a6a2-13d93933937b_837x227.png 1272w, https://substackcdn.com/image/fetch/$s_!7KgA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d624472-4067-455f-a6a2-13d93933937b_837x227.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></div></figure></div><p style="text-align: justify;">Block the calendar for <strong>April 29</strong>: <strong>OpenXData is a free virtual conference</strong> packed with two tracks of expert-led sessions on open data architectures, AI-native platforms, and cost and performance at scale.</p><p style="text-align: justify;">The lineup includes a keynote by Vinoth Chandar (<em>Onehouse</em>) on <strong>data platforms for autonomous AI</strong>, Maxime Beauchemin (<em>Preset</em>) breaking down the anatomy of their data agent, and engineers from <em>Uber</em>, <em>Walmart</em>, <em>Booking.com</em>, <em>JD.com</em>, <em>Zalando</em>, <em>Anthropic</em>, and <em>Snowflake</em> sharing how they&#8217;re running open lakehouse stacks in production. If you care about <strong>Iceberg</strong>, <strong>Hudi</strong>, <strong>Spark</strong>, <strong>Polaris</strong>, or where <strong>data engineering meets AI</strong>, this one&#8217;s worth your time.</p><p>&#128203; Agenda and more details <strong><a href="https://www.openxdata.ai/">HERE</a></strong>.</p><p>&#128073; <strong><a href="https://www.openxdata.ai/">RSVP</a></strong></p><div><hr></div><h3><strong>&#128142; Open Source Gem</strong></h3><p><strong><a href="https://ducklake.select/2026/04/13/ducklake-10/">DuckLake v1.0: The Lakehouse Format Built on SQL Reaches Production-Readiness</a></strong></p><p style="text-align: justify;">DuckLake is a lakehouse format from the DuckDB team that simplifies metadata by moving it from scattered JSON and Avro files in object storage into a SQL database. Data still lives in Parquet files on object storage, similar to Iceberg or Delta Lake, but the catalog is stored in any transactional SQL database with primary key support.</p><p><strong>&#128104;&#8205;&#128187; Quick taste</strong></p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;sql&quot;,&quot;nodeId&quot;:&quot;8f804872-7d77-4b21-939a-f0c1defd17f2&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-sql">INSTALL ducklake;
LOAD ducklake;

ATTACH 'ducklake:metadata.ducklake' AS lake;
USE lake;

CREATE TABLE events (id INT, user_name VARCHAR, ts TIMESTAMP);
INSERT INTO events VALUES (1, 'vojay', NOW());

-- small writes stay in the catalog, no tiny Parquet files
FROM ducklake_list_files('lake', 'events'); -- empty
CHECKPOINT; -- flush to object storage when you're ready</code></pre></div><p><strong>&#128240; What/s new in v1.0</strong></p><p style="text-align: justify;">Released April 13, it is now production-ready with backward compatibility guarantees. Key updates include default data inlining for updates and deletes to avoid small-file issues in streaming writes, support for sorted tables and murmur3-based bucket partitioning for Iceberg compatibility, native GEOMETRY and VARIANT types, and deletion vectors stored as Puffin files.</p><p>&#128161; <strong>Why is this useful for DEs</strong>?</p><ul><li><p style="text-align: justify;"><strong>One less moving piece.</strong> Your catalog is just a db you already know how to run.</p></li><li><p style="text-align: justify;"><strong>Streaming into a lakehouse actually works.</strong> Inlining means you can do small, frequent writes without drowning in compaction jobs.</p></li><li><p style="text-align: justify;"><strong>Transactions are real.</strong> ACID guarantees come from the catalog DB.</p></li><li><p style="text-align: justify;"><strong>Escape hatch included.</strong> Iceberg-compatible at the data level, so no lock-in.</p></li></ul><p>&#128073; <strong>GitHub</strong>: <a href="https://github.com/duckdb/ducklake">https://github.com/duckdb/ducklake</a></p><div><hr></div><h3><strong>&#128161; DE Tip of the Month </strong></h3><p><strong>Stop Over-Partitioning Your Iceberg Tables</strong></p><p style="text-align: justify;">Partitioning can feel like free performance until it backfires. A common mistake is using a high-cardinality column like <code>user_id</code> or raw timestamps in an Iceberg table, which creates thousands of tiny partitions with only a few rows each. This shifts the cost to metadata, where query planning takes longer than the actual scan and effectively recreates the small-files problem through poor partition design.</p><p><strong>&#128210; Rules of thumb</strong></p><ul><li><p style="text-align: justify;"><strong>Aim for partitions that hold at least ~1 GB of data.</strong> If most of yours are smaller, you&#8217;re over-partitioned.</p></li><li><p style="text-align: justify;"><strong>Partition on low-to-medium cardinality columns</strong> that actually appear in <code>WHERE</code> clauses, usually dates at day or month granularity, maybe region or tenant.</p></li><li><p style="text-align: justify;"><strong>Use Iceberg&#8217;s hidden partitioning transforms, not raw columns.</strong> <code>PARTITIONED BY (days(ts))</code> beats partitioning on a raw timestamp, otherwise you&#8217;d get a new partition per millisecond. Transforms bucket values sensibly <em>and</em> Iceberg auto-prunes queries without extra derived columns.</p></li><li><p style="text-align: justify;"><strong>For high-cardinality columns you filter on, use </strong><code>bucket(N, col)</code><strong> instead.</strong> Hashes the value into N buckets, pruning without the cardinality explosion.</p></li></ul><p style="text-align: justify;">Quick gut check: <code>SELECT COUNT(*), AVG(file_size_in_bytes) FROM my_table.files</code> &#128073; if average file size is in the MB range, rethink the partition spec.</p><p>&#128214; <a href="https://iceberg.apache.org/docs/latest/partitioning/">Iceberg Partitioning docs</a></p><div><hr></div><h3>&#128202; Community Poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:498119}" data-component-name="PollToDOM"></div><p>Until next time, cheers!</p><p><a href="https://www.linkedin.com/in/srivigneshkn/">Sri</a>, <a href="https://www.linkedin.com/in/anandaganesh/">Ananda</a>, &amp; <a href="https://www.linkedin.com/in/vjanz/">Volker</a></p><div><hr></div><h4>&#8505;&#65039; About Data Engineer Things</h4><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Community Spotlight Edition (Apr 2026)]]></title><description><![CDATA[80% highway, 20% off-road: Michelle Winters on building platforms that last and rethinking what data engineering actually is]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-5d3</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-5d3</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Thu, 09 Apr 2026 15:03:19 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Q-1G!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.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_!Q-1G!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Q-1G!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!Q-1G!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!Q-1G!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!Q-1G!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Q-1G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:280885,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193491160?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Q-1G!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!Q-1G!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!Q-1G!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!Q-1G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ce5d5bf-7616-4d97-bc4c-3d9b4c4d8170_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hello, everyone!</p><p>This edition of <strong>Community Spotlight</strong> features <strong>Michelle Winters</strong>, a self-proclaimed data nerd who has built petabyte-scale platform tooling for <strong>Netflix</strong>, architected diverse data systems at <strong>eBay</strong>, and founded a highly successful <strong>AI-tooling startup</strong>.</p><p>I had the great fortune of sitting down for a boba chat with Michelle to distill the <strong>architectural mental models that hold up at massive scale</strong>. We also explored the <strong>convergence of data engineering and AI</strong>, and why she believes <strong>the engineer&#8217;s role is shifting from simply moving pipelines to actively stewarding data meaning</strong>.</p><p>Read on to discover the lessons Michelle has gleaned from her expansive tech journey, <strong>the rise of the 'data artisan' who blends code with deep domain context</strong>, and the<strong> </strong>reason <strong>protecting your cognitive capacity is the ultimate career hack</strong>.<br><br>You&#8217;re in for a treat!</p><p>- Sugandhi </p><div><hr></div><h3><strong>&#127903;&#65039; Conference: Data Engineering Open Forum 2026</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!e4SV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!e4SV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 424w, https://substackcdn.com/image/fetch/$s_!e4SV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 848w, https://substackcdn.com/image/fetch/$s_!e4SV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 1272w, https://substackcdn.com/image/fetch/$s_!e4SV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!e4SV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png" width="1134" height="327" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:327,&quot;width&quot;:1134,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:254314,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/189008910?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!e4SV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 424w, https://substackcdn.com/image/fetch/$s_!e4SV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 848w, https://substackcdn.com/image/fetch/$s_!e4SV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 1272w, https://substackcdn.com/image/fetch/$s_!e4SV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 1456w" sizes="100vw"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>We are hosting the third Data Engineering Open Forum (DEOF) on April 16 in San Francisco! Here is what you will experience expect at the event:</p><ul><li><p>Sessions by speakers who are solving cutting edge problems in data engineering, for examples, Apache project creators and PMCs like <a href="https://www.linkedin.com/in/julienledem/">Julien Le Dem</a>, <a href="https://www.linkedin.com/in/boyang-jerry-peng/">Boyang Jerry Peng</a>, and <a href="https://www.linkedin.com/in/yezhaoqin/">Jack Ye</a>.</p></li><li><p>Intentionally-designed activities that you can sign up to engage in small-group networking (because we know it&#8217;s hard to make conversations at conference).</p></li><li><p>Opportunities to connect with data engineering teams at top tech companies (like <strong>Airbnb</strong>, <strong>Netflix</strong>, <strong>OpenAI</strong>, and more) at their booths.</p></li></ul><p>Our ultimate goal is that when you look back some day, you could confidently say &#8220;I&#8217;m so glad I went to DEOF&#8221;, because the people you met there or ideas you walked away with made a difference in your career.</p><p>&#128073; See the agenda <strong><a href="https://www.dataengineeringopenforum.com/">HERE</a></strong>. <strong><a href="https://luma.com/deof2026?utm_source=newsletter-march-3">RSVP</a></strong> today!</p><div><hr></div><h3>Spotlight: Michelle Winters</h3><div class="pullquote"><p>&#8220;Moving data alone doesn't create much value, and most of this work will be automated in the near future anyway. The real role of a data engineer is to ensure trust and preserve meaning.&#8221;</p></div><blockquote><p><em>For those in the DET community who may not know you yet, could you briefly introduce yourself?</em></p></blockquote><p>Hello, everyone&#8212;my name&#8217;s <a href="https://www.linkedin.com/in/mufford/">Michelle</a>. I&#8217;m a lifelong data nerd who&#8217;s done a bit of everything in the world of data. Most of my work has focused on data engineering and warehousing, data platform and infrastructure, system intelligence, automation, efficiency, scalability, quality, and monetization. I&#8217;ve been fortunate to work at amazing companies like Netflix and eBay, and I even founded my own startup which provided collaborative data tools and became a top 10 plugin for OpenAI&#8217;s marketplace before it was acquired. Over the years, I&#8217;ve worn many hats&#8212;data engineer, architect, leader, founder&#8212;but my favorite hat is simply &#8220;data nerd.&#8221; I still love exploring new ways to structure, understand, and leverage data to create real impact. I&#8217;m especially excited about the future of data when it comes to collaboration, innovation, and solving meaningful, real-world problems.</p><blockquote><p><em>You&#8217;ve led data engineering at GoDaddy, built platform tooling for Netflix&#8217;s 100 petabyte warehouse, co-founded a startup, and architected data systems at eBay. Each of those environments is radically different in scale, constraints, and culture. Is there a single architectural principle or mental model that has held up across all of them?</em></p></blockquote><p>If I had to distill it down to one idea, it&#8217;s this: <strong>design for the full 100% from day one but don&#8217;t treat all 100% equally</strong>.</p><p><strong>About 80% of what people need should be simple, obvious, and well-paved</strong>. That&#8217;s your &#8220;highway.&#8221; It&#8217;s where most users should live, and it should feel easy, reliable, and almost boring in the very best way! That&#8217;s where you invest in strong defaults, automation, and clear observability so people can move quickly with confidence.</p><p><strong>The remaining 20% is just as important, but it&#8217;s different</strong>. That&#8217;s your off-road terrain. This is where flexibility matters. You&#8217;re giving people room to explore, to handle edge cases, and to push boundaries without breaking the system. If you over-optimize for simplicity, you box people in. If you over-optimize for flexibility, you create chaos. The real craft is in holding both at the same time.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MOlm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde678cc5-cc88-48d9-a34f-d9cffd9140d4_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MOlm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde678cc5-cc88-48d9-a34f-d9cffd9140d4_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!MOlm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde678cc5-cc88-48d9-a34f-d9cffd9140d4_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!MOlm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde678cc5-cc88-48d9-a34f-d9cffd9140d4_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!MOlm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde678cc5-cc88-48d9-a34f-d9cffd9140d4_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MOlm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde678cc5-cc88-48d9-a34f-d9cffd9140d4_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/de678cc5-cc88-48d9-a34f-d9cffd9140d4_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2645994,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193491160?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde678cc5-cc88-48d9-a34f-d9cffd9140d4_1024x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MOlm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde678cc5-cc88-48d9-a34f-d9cffd9140d4_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!MOlm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde678cc5-cc88-48d9-a34f-d9cffd9140d4_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!MOlm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde678cc5-cc88-48d9-a34f-d9cffd9140d4_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!MOlm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde678cc5-cc88-48d9-a34f-d9cffd9140d4_1024x1024.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>What this forces you to do is <strong>build the right abstractions</strong>. Not just tools that work, but systems that people can understand, extend, and truly own. And ownership is the goal, because that&#8217;s what unlocks speed and innovation at scale.</p><p>The other lesson that&#8217;s stuck with me is to <strong>resist building for a single use case, even if it&#8217;s the loudest one in the room</strong>. Early on at Netflix, we intentionally designed for three very different workloads: personalization, which was deeply custom, hand-crafted scalable Java code; content analytics, which leaned heavily on SQL; and finance, which had strict accuracy and audit requirements. Those use cases pulled the system in completely different directions, and that was the point. If you can design something that works well for very different kinds of users and constraints, you&#8217;re much more likely to end up with a platform that lasts.</p><p>For folks early in their careers, I&#8217;d frame it this way: <strong>don&#8217;t just solve the problem in front of you&#8212;zoom out and ask what kind of problems this solution should be able to handle a year from now</strong>. Be intentional early. Not just about what you&#8217;re building, but about how you&#8217;re building it and what it might need to become. The earlier you start thinking that way, the better your instincts will become. </p><blockquote><p><em>What is one architectural principle that surprised you by not holding up?</em></p></blockquote><p>For a long time, I believed you could separate the platform from the meaning of the data&#8212;that our job was simply to move data reliably from point A to point B.</p><p>I don&#8217;t think that holds up anymore. <strong>Moving data alone doesn&#8217;t create much value, and most of this work will be automated in the near future anyway</strong>. </p><p><strong>The real role of a data engineer is to ensure trust and preserve meaning, making sure data carries its context all the way through to feature engineering, AI models, and ultimately decisions</strong>. That means stepping back and asking harder questions: Can we trust the data? Are we capturing what actually matters? Are we keeping too much? Are we filtering or summarizing low-value data early enough? </p><p>This is where the role becomes much more impactful. You&#8217;re not just building pipelines, you&#8217;re shaping how the business understands its data. So don&#8217;t stop at &#8220;does this pipeline work?&#8221; Ask what the data means and how it creates value. That shift in thinking is what sets great data engineers apart.</p><blockquote><p><em>The industry talks a lot about the &#8220;full-stack data engineer&#8221; as roles between data engineering, data science, and ML engineering continue to blur. Is that convergence a good thing, or are we at risk of undervaluing what people with deep, specific expertise bring to the table?</em></p></blockquote><p>Some of the best outcomes I&#8217;ve seen come from teams where people bring different strengths and perspectives. You need both breadth and depth: generalists can connect dots across systems, but specialists provide the deep domain knowledge and technical rigor that prevent costly mistakes. There isn&#8217;t a single &#8220;full-stack&#8221; role that fits every company or every problem. What matters is understanding where the organization&#8217;s core challenges lie and building complementary teams to address them.</p><p><strong>That&#8217;s why I think the concept of a &#8220;data artisan&#8221; is so useful. These are people who combine technical skill with deep domain expertise, whether that&#8217;s advertising, healthcare, or finance</strong>. Their knowledge adds disproportionate value because they understand the nuances of the data and the context of its use. Looking ahead, I expect we&#8217;ll see people self-select into hybrid roles that blend technical skill and domain knowledge in ways we don&#8217;t yet have names for, and those roles will be increasingly critical as data-driven products grow more complex.</p><blockquote><p><em>What is a skill that was considered &#8220;not a data engineer&#8217;s job&#8221; a few years ago that you now think is essential?</em></p></blockquote><p>Anything related to AI has quickly moved from &#8220;nice to have&#8221; to table stakes.</p><p><strong>At a minimum, data engineers should understand concepts like retrieval-augmented generation (RAG) and vectorization&#8212;how data is embedded, retrieved, and used in modern AI systems. These aren&#8217;t just modeling concerns anymore; they directly shape how data needs to be stored, indexed, and served.</strong></p><p>We&#8217;re also seeing a shift with graph technologies. Historically, that was the domain of specialists, but the ongoing responsibility of building, populating, and maintaining graphs fits naturally with data engineering. As systems become more relationship-driven, that ownership is starting to move closer to the data layer.</p><div><hr></div><p><em>&#128073; Read our interview with the founder of <a href="https://puppygraph.com/">PuppyGraph</a> to learn more about graph technologies.</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;bffe1834-f173-44dd-a87d-d588cc47e507&quot;,&quot;caption&quot;:&quot;Hi everyone,&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Data Engineer Things Newsletter - Community Spotlight Edition (Mar 2026)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:133910821,&quot;name&quot;:&quot;Data Engineer Things&quot;,&quot;bio&quot;:&quot;Data Engineer Things (DET) is a global community built by data engineers for data engineers. Subscribe to the newsletter to gain access to exclusive learning resources, including articles, webinars, meetups, mentorship, and much more.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aa396981-9468-4fe5-857a-fb587d41a253_660x660.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null},{&quot;id&quot;:214650813,&quot;name&quot;:&quot;Swetha Sekhar&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0614b885-5e56-403a-9cf6-0dc98c16a208_144x144.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null},{&quot;id&quot;:87813997,&quot;name&quot;:&quot;Sugandhi A&quot;,&quot;bio&quot;:&quot;Incessantly inquisitive. &quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/266ed9d9-f802-438f-8df1-89a948de32ab_144x144.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-03-05T16:03:09.186Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!LK4R!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-324&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:189008910,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:18,&quot;comment_count&quot;:0,&quot;publication_id&quot;:1520306,&quot;publication_name&quot;:&quot;Data Engineer Things&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!tTfP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66064eba-64c2-444a-8c61-2f9c14174abd_800x800.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p>Data quality is evolving too. It&#8217;s no longer just binary checks or simple rules. Increasingly, it&#8217;s probabilistic and algorithmic&#8212;designed to catch real issues without overwhelming teams with false positives. That shift brings data engineering closer to disciplines like statistics and machine learning.</p><p>What all of this points to is a broader trend: the boundaries are moving. Data engineers are no longer just responsible for pipelines, they&#8217;re becoming stewards of how data is structured, interpreted, and trusted in increasingly intelligent systems.</p><p>For those earlier in their careers, this is a great moment to lean in. You don&#8217;t need to become an ML expert overnight, but building intuition around these areas, especially how data flows into and supports AI will set you apart.</p><blockquote><p><em>There is a lot of pressure right now to embed AI into data pipelines: agentic orchestration, LLM-based data quality checks, AI-generated transformations. Where is AI genuinely changing what a data engineer does day to day, and where is the hype running ahead of reality?</em></p></blockquote><p><strong>A lot of what we&#8217;re seeing right now feels premature, and the reason is simple: we still have a data problem.</strong></p><p>In most organizations, data is disjointed, inconsistent, redundant, and poorly understood. And yet, we&#8217;re expecting AI to step in and magically extract meaning from it? That&#8217;s wishful thinking. If meaning doesn&#8217;t already exist, if it&#8217;s not encoded somewhere in the system, AI isn&#8217;t going to manufacture it for us. At least, not to a level we should have confidence in. </p><p>Where I do see real value is in AI acting as a collaborator. AI agents can generate artifacts, transformations, documentation, even quality checks, but those outputs still need expert review. If that slows things down a bit, that&#8217;s okay. Speed without confidence in the data is a liability, not an advantage.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!k7rW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1d7de18-edcf-479e-aef7-d4606325f7fa_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!k7rW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1d7de18-edcf-479e-aef7-d4606325f7fa_2816x1536.png 424w, https://substackcdn.com/image/fetch/$s_!k7rW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1d7de18-edcf-479e-aef7-d4606325f7fa_2816x1536.png 848w, https://substackcdn.com/image/fetch/$s_!k7rW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1d7de18-edcf-479e-aef7-d4606325f7fa_2816x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!k7rW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1d7de18-edcf-479e-aef7-d4606325f7fa_2816x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!k7rW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1d7de18-edcf-479e-aef7-d4606325f7fa_2816x1536.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f1d7de18-edcf-479e-aef7-d4606325f7fa_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6822771,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/193491160?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1d7de18-edcf-479e-aef7-d4606325f7fa_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!k7rW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1d7de18-edcf-479e-aef7-d4606325f7fa_2816x1536.png 424w, https://substackcdn.com/image/fetch/$s_!k7rW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1d7de18-edcf-479e-aef7-d4606325f7fa_2816x1536.png 848w, https://substackcdn.com/image/fetch/$s_!k7rW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1d7de18-edcf-479e-aef7-d4606325f7fa_2816x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!k7rW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1d7de18-edcf-479e-aef7-d4606325f7fa_2816x1536.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>At the end of the day, the fundamentals haven&#8217;t changed. <strong>If you don&#8217;t trust your underlying data, nothing built on top of it will hold up, no matter how advanced the AI is</strong>. Any organization that wants to compete in this space needs to take that seriously. That means investing in data quality, building systems that are understandable and observable and explainable, and treating security and consumer privacy as first-class concerns, not an afterthought.</p><blockquote><p><em>You built Noteable from the ground up as CEO, and then stepped into a Distinguished Architect role at eBay. What did running a startup change about how you read a large organisation&#8217;s data architecture?</em></p></blockquote><p>Running a startup made me think much more about culture&#8212;both team and company&#8212;and gave me a stronger sense of ownership and connection to the business, which I think makes me a better partner overall. But the biggest shift for me was humility. As CEO, I couldn&#8217;t be the most technical person in the room anymore, and getting comfortable with that changed how I lead. <strong>I learned that when you give people clear context and direction, they often take ideas further than you could yourself</strong>. That experience reshaped how I think about both systems and teams: the goal isn&#8217;t to have all the answers, but to create an environment where talented people can do their best work. When you invest in good people, give them ownership, and get out of their way, I&#8217;ve found they&#8217;ll consistently exceed your expectations.</p><blockquote><p><em>eBay is a marketplace with an enormous variety of data: buyer behaviour, seller inventory, pricing, fraud, logistics. How does that diversity shape architectural decisions differently from a single-product company like Netflix?</em></p></blockquote><p>Every company has a wide variety of diverse data&#8212;it&#8217;s really a question of proportions. What matters more than the domains themselves is the company&#8217;s unique data profile: where the data comes from, what latency it requires, and what happens if it doesn&#8217;t arrive on time. That&#8217;s why I&#8217;m not a fan of one-size-fits-all architectures. <strong>The better approach is to understand where your center of gravity is and design systems that minimize unnecessary movement while supporting those core needs</strong>. At the same time, you have to build in flexibility from the start. Even if you don&#8217;t have something like IoT data today, that can change quickly, and your architecture needs to be ready to evolve with it rather than be rebuilt from scratch.</p><blockquote><p><em>As a Distinguished Architect, you are often shaping decisions without direct authority over the teams implementing them. How do you actually get things to change at that level?</em></p></blockquote><p>You lead with the business problem: what are we trying to solve, and what is the customer impact? Put together a long-term strategy and focus on aligning people around the outcomes it would unlock. Make it tangible, then work backward from there. The challenge is that when teams are overworked, their capacity often only reaches the current sprint or next quarter. So you start with those who still have passion and headspace, get them in the trenches building proof points, and then bring everyone else along when you can demonstrate tangible value. <strong>Change happens person-to-person&#8212;you&#8217;re not selling a technical solution, you&#8217;re selling what the organization will be able to do tomorrow that it cannot do today</strong>.</p><blockquote><p><em>What is one tough lesson from your career that made you a better data professional?</em></p></blockquote><p><strong>Protect your brain!</strong> Data professionals are often pushed to deliver under sustained pressure, and it&#8217;s easy to treat mental capacity as an unlimited resource. The reality is that cognitive performance degrades long before most people notice it, and by the time the signs are obvious, the cost is already high. Don&#8217;t wait until that point&#8212;invest in yourself early. <strong>When you take care of your mental and physical well-being, you may work fewer hours, but you&#8217;re more engaged, generate better ideas, see solutions that were previously hidden, and rediscover your passion. That matters enormously when the work demands genuine innovation.</strong> </p><div><hr></div><h3>Key Takeaways</h3><ul><li><p>Architecture should be designed for both simplicity and flexibility from the start. Simplicity is the 80% path; the remaining 20% is where you design for flexibility. Use contrasting use cases to stress-test your platform before it needs to scale.</p></li><li><p>The data engineer&#8217;s role is evolving beyond moving data. Full ownership of data meaning, from ingestion through to feature engineering and AI models, is where the real value lies. AI does not fix a data quality problem, it amplifies it.</p></li><li><p>The future of data engineering is specialization by domain, not just by technical function. Industry knowledge will become as important as technical skill, and roles that do not yet have names are already beginning to emerge.</p></li><li><p>Influence without authority starts with business outcomes, not technical vision. Find the believers first, build proof points with them, and let the results do the convincing.</p></li><li><p>Cognitive capacity is finite. Sustained pressure degrades mental performance before most people notice, and by the time the signs are visible, the cost is already high. Investing in yourself is foundational to a long and effective career in data.</p></li></ul><div><hr></div><h3>Community poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:491091}" data-component-name="PollToDOM"></div><div><hr></div><h3>&#128172; How to stay connected</h3><ul><li><p><a href="https://www.linkedin.com/in/mufford/">LinkedIn</a></p></li></ul><div><hr></div><h3>&#8505;&#65039; About Data Engineer Things</h3><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Data Pulse Edition (Mar 2026)]]></title><description><![CDATA[OpenAI's P99 latency with 800 million users, Netflix's LLM post training, LinkedIn's exabyte scale clusters, ETL &#8594; ECL, and Elements of a modern data strategy]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-d8d</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-d8d</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 17 Mar 2026 15:01:09 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!7Oba!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.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_!7Oba!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7Oba!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!7Oba!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!7Oba!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!7Oba!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7Oba!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:337646,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/188303152?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7Oba!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!7Oba!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!7Oba!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!7Oba!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F192e8bca-e7e3-4f90-884d-a3460870f170_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hello Folks,</p><p style="text-align: justify;">Great to connect with you again for another edition! I&#8217;m writing this from Philadelphia, where the worst of winter is finally behind us and the days are slowly getting longer and warmer.</p><p style="text-align: justify;">Much like the shifting seasons, data engineering itself is in the middle of a transformation. In 2026, it's no longer just about moving and storing data; it's about making data meaningful, trustworthy, and AI-ready. Whether you&#8217;re building pipelines, designing data platforms, or enabling AI systems, the common thread is clear that the future of data engineering is as much about context and reliability as it is about movement and scale.</p><p style="text-align: justify;">If you&#8217;re looking for a place where these conversations are happening in person, check out the Data Engineering Open Forum in San Francisco on April 16th. The agenda is packed with sessions you'll actually want to stay for, and it's a great chance to connect with engineers navigating the same challenges you are.</p><p>- Ananda</p><div><hr></div><h3><strong>&#128218;</strong> Data Pulse</h3><h4><a href="https://www.dataengineeringweekly.com/p/data-engineering-after-ai">Data Engineering After AI: ECL - Extract, Contextualize, Link</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data &amp; Context Engineering<br>&#129504; <strong>Level</strong>:  Beginner</p></blockquote><p style="text-align: justify;"><strong>Summary: </strong>As AI continues to automate data engineering tasks such as pipeline generation, transformation logic, and schema inference, the core role of data engineers is shifting from moving data to defining and managing its meaning. Traditional ETL architectures focused on data movement, and they often embedded business logic within pipelines, allowing interpretive context to drift as data passed through successive transformations. An alternative framework, ECL (Extract, Contextualize, Link), addresses this gap by emphasizing three stages: extracting reliable data from source systems, enriching it with contextual definitions, and linking entities across systems to preserve coherence.</p><div class="captioned-image-container"><figure><div class="image-link image2" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!p7NY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389d84ee-51d7-47a5-b7f2-61309db97551_739x220.png 424w, https://substackcdn.com/image/fetch/$s_!p7NY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389d84ee-51d7-47a5-b7f2-61309db97551_739x220.png 848w, https://substackcdn.com/image/fetch/$s_!p7NY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389d84ee-51d7-47a5-b7f2-61309db97551_739x220.png 1272w, https://substackcdn.com/image/fetch/$s_!p7NY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389d84ee-51d7-47a5-b7f2-61309db97551_739x220.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!p7NY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389d84ee-51d7-47a5-b7f2-61309db97551_739x220.png" width="739" height="220" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/389d84ee-51d7-47a5-b7f2-61309db97551_739x220.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:220,&quot;width&quot;:739,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:169190,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/188303152?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389d84ee-51d7-47a5-b7f2-61309db97551_739x220.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!p7NY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389d84ee-51d7-47a5-b7f2-61309db97551_739x220.png 424w, https://substackcdn.com/image/fetch/$s_!p7NY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389d84ee-51d7-47a5-b7f2-61309db97551_739x220.png 848w, https://substackcdn.com/image/fetch/$s_!p7NY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389d84ee-51d7-47a5-b7f2-61309db97551_739x220.png 1272w, https://substackcdn.com/image/fetch/$s_!p7NY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389d84ee-51d7-47a5-b7f2-61309db97551_739x220.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></div><figcaption class="image-caption"><a href="https://www.dataengineeringweekly.com/p/data-engineering-after-ai">Source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p style="text-align: justify;"><strong>Shift in core responsibilities:</strong> Data engineers should focus more on designing architectures that preserve and govern the semantic meaning of data across systems. </p></li><li><p style="text-align: justify;"><strong>Need for semantic and governance infrastructure:</strong> With ECL, data engineers need to build and manage data contracts, lineage systems, and context stores that ensure data definitions remain consistent, versioned, and trustworthy as data moves through multiple transformation layers. </p></li><li><p style="text-align: justify;"><strong>Emergence of a new role</strong>: The discipline is evolving from pipeline engineering to &#8220;context architect,&#8221; where data engineers design the contextual frameworks that allow AI systems and downstream applications to interpret and use data reliably.</p></li></ul><h4><a href="https://blog.bytebytego.com/p/how-openai-scaled-to-800-million">OpenAI: Scaling to 800 Million Users With Postgres - P99 latency</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Databases<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p><strong>Summary</strong>: OpenAI scaled PostgreSQL to support over 800 million ChatGPT users using a single primary database with dozens of read replicas, skipping complex sharding entirely. By focusing on reducing primary writer load, optimizing queries and connections, and preventing cascading failures, they achieved low double-digit millisecond latency and 99.999% availability. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!WZzY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641a0ccc-ef3e-4324-a824-273d9c1e0cf4_759x430.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WZzY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641a0ccc-ef3e-4324-a824-273d9c1e0cf4_759x430.png 424w, https://substackcdn.com/image/fetch/$s_!WZzY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641a0ccc-ef3e-4324-a824-273d9c1e0cf4_759x430.png 848w, https://substackcdn.com/image/fetch/$s_!WZzY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641a0ccc-ef3e-4324-a824-273d9c1e0cf4_759x430.png 1272w, https://substackcdn.com/image/fetch/$s_!WZzY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641a0ccc-ef3e-4324-a824-273d9c1e0cf4_759x430.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WZzY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641a0ccc-ef3e-4324-a824-273d9c1e0cf4_759x430.png" width="719" height="407.33860342555994" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/641a0ccc-ef3e-4324-a824-273d9c1e0cf4_759x430.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:430,&quot;width&quot;:759,&quot;resizeWidth&quot;:719,&quot;bytes&quot;:118937,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/188303152?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641a0ccc-ef3e-4324-a824-273d9c1e0cf4_759x430.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!WZzY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641a0ccc-ef3e-4324-a824-273d9c1e0cf4_759x430.png 424w, https://substackcdn.com/image/fetch/$s_!WZzY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641a0ccc-ef3e-4324-a824-273d9c1e0cf4_759x430.png 848w, https://substackcdn.com/image/fetch/$s_!WZzY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641a0ccc-ef3e-4324-a824-273d9c1e0cf4_759x430.png 1272w, https://substackcdn.com/image/fetch/$s_!WZzY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641a0ccc-ef3e-4324-a824-273d9c1e0cf4_759x430.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p style="text-align: justify;"><strong>Optimize before adding complexity:</strong> OpenAI showed that tuning PostgreSQL for query optimization, caching, and connection pooling can delay or eliminate the need for sharding and distributed systems.</p></li><li><p style="text-align: justify;"><strong>Design for your actual workload:</strong> ChatGPT is largely read-heavy, so read replicas and caching worked. Match your architecture to what your system actually does, not to generic best practices.</p></li><li><p style="text-align: justify;"><strong>Reliability is key:</strong> Tools like PgBouncer, rate limiting, and workload isolation show that modern data engineering is as much about keeping systems stable as it is about building pipelines.</p></li></ul><h4><strong><a href="https://netflixtechblog.com/scaling-llm-post-training-at-netflix-0046f8790194">Netflix: Scaling LLM Post-Training</a></strong></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Engineering &amp; AI<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> Netflix built an LLM post-training framework to scale the adaptation of foundation models for production use cases such as recommendations, personalization, and search. Pre-trained models must be adapted to understand Netflix&#8217;s catalog and user behavior, but doing this at Netflix scale, with massive data pipelines and distributed GPU clusters, is a major engineering challenge. The framework, built on their ML platform Mako using PyTorch, Ray, and vLLM, enables techniques like fine-tuning, reinforcement learning, preference optimization, and knowledge distillation. The framework is organized around four pillars: <strong>data, model, compute, and workflow</strong>, providing a unified way to manage datasets, shard models, orchestrate GPUs, and run multi-stage training pipelines.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oDE9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2fcb3e0-3016-47ab-ad58-a4cab281ce3d_703x261.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oDE9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2fcb3e0-3016-47ab-ad58-a4cab281ce3d_703x261.png 424w, https://substackcdn.com/image/fetch/$s_!oDE9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2fcb3e0-3016-47ab-ad58-a4cab281ce3d_703x261.png 848w, https://substackcdn.com/image/fetch/$s_!oDE9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2fcb3e0-3016-47ab-ad58-a4cab281ce3d_703x261.png 1272w, https://substackcdn.com/image/fetch/$s_!oDE9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2fcb3e0-3016-47ab-ad58-a4cab281ce3d_703x261.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oDE9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2fcb3e0-3016-47ab-ad58-a4cab281ce3d_703x261.png" width="703" height="261" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b2fcb3e0-3016-47ab-ad58-a4cab281ce3d_703x261.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:261,&quot;width&quot;:703,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:155097,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/188303152?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2873a576-4917-474a-bc31-2a146b7e943c_703x261.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oDE9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2fcb3e0-3016-47ab-ad58-a4cab281ce3d_703x261.png 424w, https://substackcdn.com/image/fetch/$s_!oDE9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2fcb3e0-3016-47ab-ad58-a4cab281ce3d_703x261.png 848w, https://substackcdn.com/image/fetch/$s_!oDE9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2fcb3e0-3016-47ab-ad58-a4cab281ce3d_703x261.png 1272w, https://substackcdn.com/image/fetch/$s_!oDE9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2fcb3e0-3016-47ab-ad58-a4cab281ce3d_703x261.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://netflixtechblog.com/scaling-llm-post-training-at-netflix-0046f8790194">Source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p style="text-align: justify;"><strong>Data pipelines are foundational to LLM training</strong>: Post-training workflows depend on well-prepared data curated datasets, proper tokenization, and efficient streaming to distributed training systems. Data engineers own the pipelines that handle all of this, from selecting and transforming domain-specific data.</p></li><li><p style="text-align: justify;"><strong>LLM systems require scalable data infrastructure</strong>: Netflix&#8217;s framework underscores the need for distributed workflows to coordinate across GPUs, storage, and orchestration layers. Data engineers are central to building the plumbing that moves, batches, and serves data reliably for both training and inference.</p></li></ul><h4><a href="https://www.linkedin.com/blog/engineering/infrastructure/rethinking-hfds-block-placement-for-exabyte-scale-clusters">LinkedIn: Maintaining exabyte-scale Hadoop clusters</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Infrastructure<br>&#129504; <strong>Level</strong>: Advanced</p></blockquote><p style="text-align: justify;"><strong>Summary:</strong> LinkedIn re-engineered the block placement strategy in Apache Hadoop&#8217;s HDFS to support exabyte-scale clusters storing about<strong> 5 exabytes of data and 10 billion objects</strong> while maintaining <strong>99.99% availability</strong>. As clusters expanded to thousands of nodes, the default rack-based replication policy caused heavy overhead during maintenance because nodes had to replicate large volumes of data before going offline.</p><p style="text-align: justify;">To address this, LinkedIn introduced <strong>upgrade domains</strong>, logical groupings of datanodes that distribute replicas across broader failure boundaries than racks. By updating the block placement policy without disrupting production traffic, LinkedIn eliminated large-scale replication during maintenance, reducing network congestion, speeding up upgrades, and allowing maintenance on up to<strong> 4.5% of datanodes per day</strong> while maintaining performance and reliability.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JQlb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc81e9318-5e27-4589-add1-70c5bbe2f69a_728x550.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JQlb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc81e9318-5e27-4589-add1-70c5bbe2f69a_728x550.png 424w, https://substackcdn.com/image/fetch/$s_!JQlb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc81e9318-5e27-4589-add1-70c5bbe2f69a_728x550.png 848w, https://substackcdn.com/image/fetch/$s_!JQlb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc81e9318-5e27-4589-add1-70c5bbe2f69a_728x550.png 1272w, https://substackcdn.com/image/fetch/$s_!JQlb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc81e9318-5e27-4589-add1-70c5bbe2f69a_728x550.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JQlb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc81e9318-5e27-4589-add1-70c5bbe2f69a_728x550.png" width="728" height="550" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c81e9318-5e27-4589-add1-70c5bbe2f69a_728x550.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:550,&quot;width&quot;:728,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:90462,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/188303152?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc81e9318-5e27-4589-add1-70c5bbe2f69a_728x550.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!JQlb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc81e9318-5e27-4589-add1-70c5bbe2f69a_728x550.png 424w, https://substackcdn.com/image/fetch/$s_!JQlb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc81e9318-5e27-4589-add1-70c5bbe2f69a_728x550.png 848w, https://substackcdn.com/image/fetch/$s_!JQlb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc81e9318-5e27-4589-add1-70c5bbe2f69a_728x550.png 1272w, https://substackcdn.com/image/fetch/$s_!JQlb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc81e9318-5e27-4589-add1-70c5bbe2f69a_728x550.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://www.linkedin.com/blog/engineering/infrastructure/rethinking-hfds-block-placement-for-exabyte-scale-clusters">Source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p style="text-align: justify;"><strong>Data reliability and availability at massive scale:</strong> Data engineers working with distributed storage systems such as Apache Hadoop must design architectures that ensure high data availability, redundancy, and fault tolerance, even when clusters contain thousands of nodes and exabytes of data.</p></li><li><p style="text-align: justify;"><strong>Operational scalability is a core data engineering challenge:</strong> As data platforms grow, routine operations such as hardware upgrades, patching, and cluster maintenance must be redesigned to avoid massive data movement or downtime, highlighting the need for an architecture that scales operationally as well as technically.</p></li></ul><h4><a href="https://www.analytics8.com/blog/elements-of-a-data-strategy/">Elements of a Modern Data Strategy</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Strategy<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p style="text-align: justify;"><strong>Summary: </strong>A modern data strategy is what separates organizations that talk about data from those that actually drive results with it. It aligns people, processes, and technology across five foundational pillars. </p><ul><li><p style="text-align: justify;">Tying every data initiative directly to business outcomes through deep stakeholder engagement. </p></li><li><p style="text-align: justify;">Selecting a tech stack that scales and works as a cohesive ecosystem.</p></li><li><p style="text-align: justify;">Embedding governance for high-quality data and trust.</p></li><li><p style="text-align: justify;">Investing in talent with clear roles and continuous enablement.</p></li><li><p style="text-align: justify;">Laying out a prioritized roadmap that balances quick wins with long-term transformation. </p></li></ul><p style="text-align: justify;">Without this foundation, organizations end up with fragmented data, slow decision-making, shelfware investments, and an inability to capitalize on AI and automation when it matters most.</p><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p style="text-align: justify;">The data stack, pipelines, storage architecture, and integration layers defined in a data strategy are largely designed and implemented by data engineers, making them central to turning strategy into working systems.</p></li><li><p style="text-align: justify;">Data engineers operationalize data governance, lineage, access controls, and reliable data pipelines, ensuring that data across the organization is trusted, consistent, and usable for analytics and AI.</p></li></ul><div><hr></div><h3>&#9874;&#65039; Data Engineering Open Forum 2026</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!K679!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf85f342-1bd6-4509-8ec4-6f276476ec6a_1920x1080.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!K679!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf85f342-1bd6-4509-8ec4-6f276476ec6a_1920x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!K679!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf85f342-1bd6-4509-8ec4-6f276476ec6a_1920x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!K679!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf85f342-1bd6-4509-8ec4-6f276476ec6a_1920x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!K679!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf85f342-1bd6-4509-8ec4-6f276476ec6a_1920x1080.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!K679!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf85f342-1bd6-4509-8ec4-6f276476ec6a_1920x1080.jpeg" width="499" height="280.6875" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/af85f342-1bd6-4509-8ec4-6f276476ec6a_1920x1080.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:499,&quot;bytes&quot;:165482,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/188303152?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf85f342-1bd6-4509-8ec4-6f276476ec6a_1920x1080.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!K679!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf85f342-1bd6-4509-8ec4-6f276476ec6a_1920x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!K679!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf85f342-1bd6-4509-8ec4-6f276476ec6a_1920x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!K679!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf85f342-1bd6-4509-8ec4-6f276476ec6a_1920x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!K679!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf85f342-1bd6-4509-8ec4-6f276476ec6a_1920x1080.jpeg 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p style="text-align: justify;">The Data Engineering Open Forum (DEOF) is a community-driven conference featuring in-depth sessions that address the real challenges and innovations in data engineering today. The talks cover a wide variety of topics, including AI Agents, Multimodal data, Data lineage, Data Observability, Semantic layer, and more.</p><p style="text-align: justify;">Out of a stacked lineup, the two sessions below caught my eye.</p><ul><li><p style="text-align: justify;"><strong><a href="https://www.dataengineeringopenforum.com/?session=from-manual-to-magical-building-ai-agents-for-etl-automation#agenda">From Manual to Magical: Building AI Agents for ETL Automation by Himanshi Manglunia, Senior Data Engineer @ AWS</a>:</strong> This talk demonstrates a production-grade, autonomous ETL system in which AI agents (powered by Kiro and Claude) handle end-to-end pipeline changes.</p></li><li><p style="text-align: justify;"><strong><a href="https://www.dataengineeringopenforum.com/?session=inside-openais-internal-ai-data-agent#agenda">Inside OpenAI&#8217;s Internal AI Data Agent by Bonnie Xu, Staff Software Engineer @ OpenAI</a>:</strong> This session provides a look under the hood of OpenAI&#8217;s internal data agent, a tool that lets employees turn questions into insights in minutes. Xu unpacks the agent&#8217;s core architecture, the multiple layers of context it uses to answer queries, and how the team keeps that context updated with almost zero manual intervention.</p></li></ul><p>&#128203; Agenda and more details <strong><a href="https://www.dataengineeringopenforum.com/?utm_source=newsletter">HERE</a></strong>.</p><p>&#128073; <a href="https://luma.com/deof2026?coupon=DETCOMMUNITY">RSVP</a> before March 22 to get an exclusive DET community discount (33% off).</p><div><hr></div><h3><strong>&#128142; Open Source Gems</strong></h3><p><strong><a href="https://cube.dev/product/cube-core">Cube Core: Semantic Layer</a></strong></p><p style="text-align: justify;">Cube Core is an open-source semantic layer that lets organizations define metrics, dimensions, and business logic once and reuse them across BI tools, embedded analytics, and AI agents through standard REST, GraphQL, and SQL APIs. It works with all major SQL data sources, Snowflake, Databricks, BigQuery, Postgres, and more, and includes a built-in caching engine for sub-second query performance. </p><p>&#128161; <strong>Why is this useful for DEs</strong>?</p><ul><li><p style="text-align: justify;">With Cube Core, data engineers define metrics and business logic in one place, and every tool, BI dashboards, applications, and AI agents pull from the same definitions.</p></li><li><p style="text-align: justify;">Most organizations run multiple BI tools and data platforms. A semantic layer sits between them and provides a single, consistent way to query data, eliminating duplicate logic and unnecessary complexity.</p></li></ul><p><strong>Github:</strong> <a href="https://github.com/cube-js/cube">https://github.com/cube-js/cube</a></p><div><hr></div><h3><strong>&#128161; DE Tip of the Month </strong></h3><h3><strong><a href="https://docs.getdbt.com/docs/build/incremental-microbatch?version=1.10">Processing large time-series datasets in dbt </a></strong></h3><p style="text-align: justify;">Microbatch incremental models in dbt efficiently process large time-series datasets by splitting transformations into small, time-bounded batches based on an event_time column.</p><ul><li><p style="text-align: justify;">Atomic, idempotent batch execution: Each batch represents a self-contained unit of work that can run independently, be retried if it fails, and even execute in parallel for faster data processing.</p></li><li><p style="text-align: justify;">Simpler incremental logic: Unlike traditional incremental models that require custom SQL conditions, micro batch automatically determines which batches to run, simplifying model design.</p></li><li><p style="text-align: justify;">Flexible backfills and failure recovery: Engineers can easily reprocess historical data or retry failed batches by specifying time ranges (--event-time-start and --event-time-end) without rebuilding the entire dataset.</p></li></ul><div><hr></div><h3>&#128202; Community Poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:473261}" data-component-name="PollToDOM"></div><p>Until next time, cheers!</p><p><a href="https://www.linkedin.com/in/anandaganesh/">Ananda</a>, <a href="https://www.linkedin.com/in/sukanyawadawadagi/">Sukanya</a> &amp; <a href="https://www.linkedin.com/in/vjanz/">Volker</a></p><div><hr></div><h4>&#8505;&#65039; About Data Engineer Things</h4><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Community Spotlight Edition (Mar 2026)]]></title><description><![CDATA[Why nobody believes "100x faster" benchmarks, and why the dedicated graph database might be dead.]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-324</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-324</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Thu, 05 Mar 2026 16:03:09 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!LK4R!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.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_!LK4R!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LK4R!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!LK4R!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!LK4R!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!LK4R!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LK4R!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:270152,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/189008910?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LK4R!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!LK4R!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!LK4R!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!LK4R!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd94751f3-fc94-4f3f-a7b0-a93bcbbbbcaa_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hi everyone,</p><p>This series is designed for one outcome - <strong>clear lessons on how experienced builders approach data engineering problems</strong>, not just a founder story or a project overview, so that our DET community can have reusable mental model on how to think about scale, operability under real constraints.</p><p>To kick things off, we sat down with <strong>Weimo Liu</strong>, co-founder of <strong>PuppyGraph</strong>, whose career spans database research, <strong>TigerGraph</strong>, and Google&#8217;s <strong>F1</strong> team. His perspective is a perfect stress test for the themes we care about: why graph ideas have been academically compelling for decades, why production adoption is still hard, and how &#8220;scale&#8221; in industry changes what success even means. In this interview, Weimo walks through the shift from chasing <strong>benchmark wins to optimizing for cost and operability</strong>&#8212;and shares a provocative approach to graphs: running graph queries directly on modern table formats like <strong>Apache Iceberg</strong>, instead of asking enterprises to migrate and reload everything.</p><p>Let&#8217;s dive in and walk through Weimo&#8217;s journey.</p><p>- Swetha Sekhar</p><div><hr></div><h3><strong>&#127903;&#65039; Conference: Data Engineering Open Forum 2026</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!e4SV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!e4SV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 424w, https://substackcdn.com/image/fetch/$s_!e4SV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 848w, https://substackcdn.com/image/fetch/$s_!e4SV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 1272w, https://substackcdn.com/image/fetch/$s_!e4SV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!e4SV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png" width="1134" height="327" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:327,&quot;width&quot;:1134,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:254314,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/189008910?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!e4SV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 424w, https://substackcdn.com/image/fetch/$s_!e4SV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 848w, https://substackcdn.com/image/fetch/$s_!e4SV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 1272w, https://substackcdn.com/image/fetch/$s_!e4SV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e374f98-924c-4cf5-b46c-553e385156f6_1134x327.png 1456w" sizes="100vw"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>We are hosting the 3rd Data Engineering Open Forum (DEOF) on April 16 in San Francisco! Here is what you will experience expect at the event:</p><ul><li><p>Sessions by speakers who are solving cutting edge problems in data engineering, for examples, Apache project creators and PMCs like <a href="https://www.linkedin.com/in/julienledem/">Julien Le Dem</a>, <a href="https://www.linkedin.com/in/boyang-jerry-peng/">Boyang Jerry Peng</a>, and <a href="https://www.linkedin.com/in/yezhaoqin/">Jack Ye</a>.</p></li><li><p>Intentionally-designed activities that you can sign up to engage in small-group networking (because we know it&#8217;s hard to make conversations at conference).</p></li><li><p>Opportunities to connect with data engineering teams at top tech companies (like <strong>Netflix</strong>, <strong>Airbnb</strong>, and more) at their booths.</p></li></ul><p>Our ultimate goal is that when you look back some day, you could confidently say &#8220;I&#8217;m so glad I went to DEOF&#8221;, because the people you met there or ideas you walked away with made a difference in your career.</p><p>&#128073; See the agenda <strong><a href="https://www.dataengineeringopenforum.com/">HERE</a></strong>. <strong><a href="https://luma.com/deof2026?utm_source=newsletter-march-3">RSVP</a></strong> before Early Bird price ends on March 11.</p><div><hr></div><h3>Spotlight: Weimo Liu</h3><div class="pullquote"><p>&#8220;I realized users weren&#8217;t really looking for a graph database, they were looking for the graph itself.&#8221;</p></div><blockquote><p><em>For those in the DET community who may not know you yet, could you briefly introduce yourself?</em></p></blockquote><p>Hi everyone &#8212; I&#8217;m <a href="https://www.linkedin.com/in/weimoliu/">Weimo</a>. It sounds like the &#8220;self-driving&#8221; car, Waymo. I&#8217;m the co-founder of <a href="https://www.puppygraph.com/">PuppyGraph</a>. Before starting PuppyGraph, I worked at TigerGraph and Google&#8217;s F1 team. TigerGraph is a graph database startup, and F1 is Google&#8217;s internal unified SQL query engine, serving billions of queries per day. Thanks so much for having me, it&#8217;s a real pleasure to be here.</p><div><hr></div><blockquote><p><em>You&#8217;ve been working in the database world since your PhD years. Tell us about your career journey &#8212; what initially drew you to databases, and what kept you in the space for so many years?</em></p></blockquote><p>Back in college, I did very well in my data structures class, and my professor invited me to join his lab. That led me into database research, where I published papers on spatial databases.</p><p>When I applied for PhD programs, I actually looked up professors who had published heavily at SIGMOD and VLDB in recent years, and found my advisor Dr. Zhang.</p><p>After my PhD, I joined TigerGraph. The founding CTO was a close friend of Dr. Zhang, and I worked there for almost three years. Later, I joined Google &#8212; partly because it felt like a safe choice &#8212; and worked on the F1 team.</p><p><strong>What keeps me in databases is that the field is very concrete. The problems are understandable, progress is measurable, and when something improves, you can usually prove it.</strong></p><div><hr></div><blockquote><p><em>You once said that &#8220;half the database papers back then were about graphs.&#8221; What made graph workloads so captivating for researchers?</em></p></blockquote><p>First, graphs are hard. The data is highly connected, and it&#8217;s very difficult to shard and distribute efficiently, which constantly creates room for new algorithms and system designs.</p><p>Second, motivation is very natural. <strong>Researchers don&#8217;t need to invent artificial use cases just to justify the work &#8212; real graph problems already exist everywhere, such as anti-fraud, network observability, social network analytics, and cybersecurity</strong>.</p><p>Third, graph theory in mathematics is extremely rich. Computer scientists can borrow powerful ideas from math and turn them into systems that are both interesting and practical.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2tDg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60fc8e1a-b19b-4a52-bab9-ccf1f1065789_1514x730.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2tDg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60fc8e1a-b19b-4a52-bab9-ccf1f1065789_1514x730.png 424w, https://substackcdn.com/image/fetch/$s_!2tDg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60fc8e1a-b19b-4a52-bab9-ccf1f1065789_1514x730.png 848w, https://substackcdn.com/image/fetch/$s_!2tDg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60fc8e1a-b19b-4a52-bab9-ccf1f1065789_1514x730.png 1272w, https://substackcdn.com/image/fetch/$s_!2tDg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60fc8e1a-b19b-4a52-bab9-ccf1f1065789_1514x730.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2tDg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60fc8e1a-b19b-4a52-bab9-ccf1f1065789_1514x730.png" width="1514" height="730" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/60fc8e1a-b19b-4a52-bab9-ccf1f1065789_1514x730.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:730,&quot;width&quot;:1514,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:149207,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/189008910?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5eea42a-b2c9-4574-a076-2c62ede33ddd_1514x730.gif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2tDg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60fc8e1a-b19b-4a52-bab9-ccf1f1065789_1514x730.png 424w, https://substackcdn.com/image/fetch/$s_!2tDg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60fc8e1a-b19b-4a52-bab9-ccf1f1065789_1514x730.png 848w, https://substackcdn.com/image/fetch/$s_!2tDg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60fc8e1a-b19b-4a52-bab9-ccf1f1065789_1514x730.png 1272w, https://substackcdn.com/image/fetch/$s_!2tDg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60fc8e1a-b19b-4a52-bab9-ccf1f1065789_1514x730.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Source: <a href="https://puppygraph.com/">puppygraph.com</a></figcaption></figure></div><div><hr></div><blockquote><p><em>After your PhD, you took your first industry role at TigerGraph. What surprised you most about the difference between academic database research and real-world database engineering?</em></p></blockquote><p>In academia, performance is everything. You aim for benchmarks that are 10&#215; faster than the state of the art.</p><p>In industry, speed alone doesn&#8217;t mean much. Cost, scalability, operability, these often matter far more. You can&#8217;t just spend unlimited resources to get a better benchmark number.</p><p>Also, no one really cares about &#8220;10&#215; faster,&#8221; or even &#8220;100&#215; faster.&#8221; <strong>If you walk around AWS re:Invent, every product claims to be 100&#215; better than the state of the art, without even defining what that state of the art is. There&#8217;s no peer review, and nobody truly believes those numbers</strong>.</p><div><hr></div><blockquote><p><em>Later at Google, you worked on database systems at a much larger scale. What kinds of problems were you solving there, and how did that experience change how you thought about data systems?</em></p></blockquote><p><a href="https://research.google/pubs/f1-a-distributed-sql-database-that-scales/">F1</a> is a federated query engine that can query almost every data source and format inside Google. It serves billions of queries per day and handles most of Google&#8217;s OLAP workloads &#8212; from the fastest, most expensive systems to the slowest, cheapest ones.</p><p>In the early days, Google had many different OLAP systems across different organizations. Over time, more and more teams connected their data sources to F1. Eventually, most of them were either deprecated or absorbed into the F1 ecosystem.</p><p>That experience made me realize how important unified federation really is.</p><div><hr></div><h4>&#128161; Editorial Note: F1</h4><p><em>F1 is Google&#8217;s globally distributed SQL database built on top of <a href="https://spanner.fyi/">Spanner</a>, giving full relational features (SQL, ACID, secondary indexes) at planetary scale. Spanner handles sharding, replication via <a href="https://en.wikipedia.org/wiki/Paxos_(computer_science)">Paxos</a>, and external consistency using TrueTime (a globally synchronized clock), while F1 provides a stateless SQL layer that parses, optimizes, and executes distributed query plans. Data is organized with hierarchical, interleaved tables to co-locate related rows in the same key ranges, reducing cross-shard transactions. Writes use Spanner&#8217;s <a href="https://martinfowler.com/articles/patterns-of-distributed-systems/two-phase-commit.html">two-phase commit</a> across replicas, and reads use consistent snapshots. In short, Spanner provides globally consistent distributed storage, and F1 turns it into a fully featured distributed SQL database.</em></p><p>&#128073; Read the full F1 paper <strong><a href="https://paperhub.s3.amazonaws.com/8f4f0d6a5f3740a64d0a6a1df1bfade1.pdf">HERE</a></strong>.<br>&#128073; Read the full Spanner paper <strong><a href="https://storage.googleapis.com/gweb-research2023-media/pubtools/pdf/44915.pdf">HERE</a></strong>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gAcg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffddba257-18e3-4b02-abdd-3511eb9e9b67_511x390.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gAcg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffddba257-18e3-4b02-abdd-3511eb9e9b67_511x390.png 424w, https://substackcdn.com/image/fetch/$s_!gAcg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffddba257-18e3-4b02-abdd-3511eb9e9b67_511x390.png 848w, https://substackcdn.com/image/fetch/$s_!gAcg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffddba257-18e3-4b02-abdd-3511eb9e9b67_511x390.png 1272w, https://substackcdn.com/image/fetch/$s_!gAcg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffddba257-18e3-4b02-abdd-3511eb9e9b67_511x390.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gAcg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffddba257-18e3-4b02-abdd-3511eb9e9b67_511x390.png" width="511" height="390" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fddba257-18e3-4b02-abdd-3511eb9e9b67_511x390.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:390,&quot;width&quot;:511,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:53819,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/189008910?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffddba257-18e3-4b02-abdd-3511eb9e9b67_511x390.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!gAcg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffddba257-18e3-4b02-abdd-3511eb9e9b67_511x390.png 424w, https://substackcdn.com/image/fetch/$s_!gAcg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffddba257-18e3-4b02-abdd-3511eb9e9b67_511x390.png 848w, https://substackcdn.com/image/fetch/$s_!gAcg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffddba257-18e3-4b02-abdd-3511eb9e9b67_511x390.png 1272w, https://substackcdn.com/image/fetch/$s_!gAcg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffddba257-18e3-4b02-abdd-3511eb9e9b67_511x390.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Spanner architecture, <a href="https://storage.googleapis.com/gweb-research2023-media/pubtools/pdf/44915.pdf">source</a></figcaption></figure></div><div><hr></div><blockquote><p><em>What prompted you to write a new graph query framework? What problem did you feel wasn&#8217;t being solved, or wasn&#8217;t being solved in the right way?</em></p></blockquote><p>I had been thinking about this for a long time. At TigerGraph, many potential users showed strong interest in graph technology, but most of them couldn&#8217;t actually adopt it in production. For example, a large bank spent 18 months loading all of its data into the system &#8212; something that would be unrealistic for most enterprises. That told me something fundamental was wrong.</p><p>After joining Google&#8217;s F1 team, I realized these users weren&#8217;t really looking for a graph database, they were looking for the graph itself.</p><p>I didn&#8217;t start the project immediately because, unlike Google, the external data world wasn&#8217;t standardized. That changed when I read an <a href="https://a16z.com/announcement/investing-in-tabular/">a16z blog post</a> announcing that the Apache Iceberg team had left Netflix to found Tabular. I realized the timing was finally right.</p><p><strong>My co-founders and I actually reached out to the Apache Iceberg creators with a very simple demo: running graph queries directly on Iceberg, faster than most graph databases on the market. That surprised them too, they hadn&#8217;t optimized Iceberg for graph workloads at all. They supported us a lot, not just on engineering, but also on go-to-market.</strong></p><div><hr></div><blockquote><p><em>During the development of the framework, what were some of the hardest technical problems you had to solve?</em></p></blockquote><p>Graph systems are notoriously difficult to scale, which is one of the main reasons they have not been widely adopted by enterprises with very large datasets.</p><p>We define the operators in a graph query plan as NodeOperators and EdgeOperators, where the input and output of each operator is a collection of nodes or edges. PuppyGraph assumes that all graph queries, patterns, and algorithms can be expressed as combinations of these operators.</p><p><strong>PuppyGraph implements a rule-based optimizer for logical query execution plans, and a hybrid rule-and-cost-based optimizer for physical execution plans. Because all inputs and outputs are collections, any individual operator can be massively parallel processed (MPP) and vectorized for evaluation.</strong></p><div><hr></div><blockquote><p><em>How did you find your co-founders and early team members, and what qualities did you look for when building the team?</em></p></blockquote><p>They&#8217;re all old friends. Our CTO was my college roommate, and our chief architect lived next door. They&#8217;re well-known competitive programming contestants, and honestly, much better programmers than I am.</p><p><strong>Trust mattered the most. In the early days, you need to move fast and collaborate extremely smoothly. We were lucky to have already built that trust years ago, it really feels like a reunion of old teammates.</strong></p><div><hr></div><blockquote><p><em>Has the graph problem space changed in response to the rise of AI? Where do you think the field is actually heading?</em></p></blockquote><p>Yes, very much so. Initially, we didn&#8217;t think of this problem space as being closely related to AI. But more and more AI companies and AI teams started reaching out.</p><p><strong>AI generates more data, and at the same time, it activates a lot of previously &#8220;cold&#8221; data. A human data analyst might be able to keep track of hundreds of tables, but AI systems can reason over thousands or even more simultaneously.</strong> Our view is that when you already have tables, you already have knowledge. You don&#8217;t need to build a separate knowledge graph &#8212; you can simply treat your existing data as a graph. That structure naturally provides context to LLMs.</p><div><hr></div><blockquote><p><em>Before we let you go&#8230; who should we interview next, and why?</em></p></blockquote><p>Haha &#8212; I&#8217;d suggest Zhou Sun, the co-founder of Mooncake Labs. He&#8217;s sharp, opinionated, and deeply knowledgeable about databases. I think it would be a really engaging conversation.</p><div><hr></div><h3>Key Takeaways</h3><ul><li><p>The central reframing: many teams don&#8217;t need &#8220;a graph database&#8221;; they need <strong>graph type queries over the data they already have</strong>, and open table formats like <strong>Apache Iceberg</strong> make that approach more feasible.</p></li><li><p><strong>AI shifts the bottleneck from &#8220;finding data&#8221; to &#8220;connecting data with meaningful relationships&#8221;</strong> When AI can reason across thousands of tables, the problem becomes building reliable structure/context across them.</p></li><li><p><strong>Weimo&#8217;s differentiator is translation:</strong> turning research-grade system design into something enterprises can run&#8212;where operability and time-to-value matter as much as performance.</p></li></ul><div><hr></div><h3>Community poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:462916}" data-component-name="PollToDOM"></div><p></p><div><hr></div><h3>&#128172; How to stay connected</h3><ul><li><p><a href="https://www.linkedin.com/in/weimoliu/">LinkedIn</a></p></li><li><p><a href="https://www.puppygraph.com/">PuppyGraph</a></p></li></ul><div><hr></div><h3>&#8505;&#65039; About Data Engineer Things</h3><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Data Pulse Edition (Feb 2026)]]></title><description><![CDATA[Data Movement at Netflix, Uber's Trillion-Record Lake, AI Skills for Agents and Building Your Brand in Data Engineering]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-fef</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data-fef</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Tue, 17 Feb 2026 16:02:48 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!bDiI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.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_!bDiI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bDiI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!bDiI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!bDiI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!bDiI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bDiI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:209937,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/185447857?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!bDiI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!bDiI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!bDiI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!bDiI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb746ef5b-d76d-42e5-8078-51fd0671bdc6_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hello Folks,</p><p>Great to connect with you through this month&#8217;s newsletter! I hope the resolutions you set at the start of the year are still going strong.</p><p>I'm writing this from Coimbatore, India, where the cooler winter mornings are slowly transitioning to warmer and brighter days. There's something I love about this time of year here - clear skies, fresh energy in the air, and that sense of momentum building as the season shifts.</p><p>That momentum reminds me of data engineering. The big transformations rarely happen overnight, but every new tool we explore, every system we scale, every challenge we solve it all adds up over time. It&#8217;s that steady, consistent work that fuels real progress. And through it all, we're building something meaningful: data systems people can actually rely on.</p><p>Outside of work, I enjoy reading, travelling, and watching movies - small ways to recharge and stay curious. In many ways, this community offers the same: a space to learn from each other and continue growing together.</p><p>This edition is packed with ideas and resources from across the community. I hope you find something here that sparks a new idea or gives you a fresh perspective.</p><p>Happy reading, and thank you for being on this journey with us.</p><p>- Sri</p><div><hr></div><h3><strong>&#128218;</strong> Data Pulse</h3><h4><a href="https://netflixtechblog.medium.com/data-bridge-how-netflix-simplifies-data-movement-36d10d91c313">Netflix: Simplify Data Movement using Data Bridge</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Ingestion<br>&#129504; <strong>Level</strong>:  Intermediate</p></blockquote><p><strong>Summary: </strong>Netflix introduces <strong>Data Bridge, </strong>a unified control plane that standardizes how data is moved across its vast ecosystem of data stores. Instead of teams building case-specific/custom pipelines for every new data movement use case, Data Bridge abstracts the implementation details of how it is moved from why and what data needs to be moved. Data engineers declare their intent once, and the platform handles routing, execution, and operational concerns behind the scenes.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1KIZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea2b0ab4-8b9e-497c-a889-4b3ebc3e5ed5_1275x582.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1KIZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea2b0ab4-8b9e-497c-a889-4b3ebc3e5ed5_1275x582.webp 424w, https://substackcdn.com/image/fetch/$s_!1KIZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea2b0ab4-8b9e-497c-a889-4b3ebc3e5ed5_1275x582.webp 848w, https://substackcdn.com/image/fetch/$s_!1KIZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea2b0ab4-8b9e-497c-a889-4b3ebc3e5ed5_1275x582.webp 1272w, https://substackcdn.com/image/fetch/$s_!1KIZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea2b0ab4-8b9e-497c-a889-4b3ebc3e5ed5_1275x582.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1KIZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea2b0ab4-8b9e-497c-a889-4b3ebc3e5ed5_1275x582.webp" width="1275" height="582" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ea2b0ab4-8b9e-497c-a889-4b3ebc3e5ed5_1275x582.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:582,&quot;width&quot;:1275,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:32228,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/185447857?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea2b0ab4-8b9e-497c-a889-4b3ebc3e5ed5_1275x582.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1KIZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea2b0ab4-8b9e-497c-a889-4b3ebc3e5ed5_1275x582.webp 424w, https://substackcdn.com/image/fetch/$s_!1KIZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea2b0ab4-8b9e-497c-a889-4b3ebc3e5ed5_1275x582.webp 848w, https://substackcdn.com/image/fetch/$s_!1KIZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea2b0ab4-8b9e-497c-a889-4b3ebc3e5ed5_1275x582.webp 1272w, https://substackcdn.com/image/fetch/$s_!1KIZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea2b0ab4-8b9e-497c-a889-4b3ebc3e5ed5_1275x582.webp 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Data bridge control plane, <a href="https://netflixtechblog.medium.com/data-bridge-how-netflix-simplifies-data-movement-36d10d91c313">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Platform over Pipelines:</strong> It helps data engineers move from building siloed data movement pipelines to designing a centralized orchestration layer. This enables reuse, governance, and delivery at scale, rather than reinventing the wheel for every use case.</p></li><li><p><strong>Self-Service:</strong> New teams and data stores can plug into the system without reinventing ingestion or replication patterns.</p></li><li><p><strong>Operational Consistency:</strong> It has built-in handling for retries, monitoring, and failure management, so it ensures consistent reliability across all data transfers.</p></li><li><p><strong>Reduced Fragmentation:</strong> It consolidates fragmented data movement systems into one standardized approach.</p></li></ul><h4><a href="http://varianceexplained.org/r/start-blog/">Advice to Start a Blog</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Brand Building<br>&#129504; <strong>Level</strong>: All levels</p></blockquote><p><strong>Summary:</strong> David Robinson argues that aspiring data scientists (<em>note: valid for DEs as well</em>) should start blogging as a key strategy for breaking into the field. Rather than just completing courses, candidates should publicly share analyses, tutorials, and projects on topics they find interesting. Blogging serves three critical purposes: it provides hands-on practice with real-world data analysis and communication skills; it creates a portfolio that demonstrates capabilities to potential employers better than resumes alone; and it generates feedback from the community while helping build a professional network. Robinson emphasizes that posts don&#8217;t need to be perfect! Sharing any public work is valuable, and even simple explanations of concepts you&#8217;ve mastered can resonate with audiences.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!otds!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe966789-fdf7-4a86-8e33-1a257389f495_639x330.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!otds!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe966789-fdf7-4a86-8e33-1a257389f495_639x330.jpeg 424w, https://substackcdn.com/image/fetch/$s_!otds!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe966789-fdf7-4a86-8e33-1a257389f495_639x330.jpeg 848w, https://substackcdn.com/image/fetch/$s_!otds!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe966789-fdf7-4a86-8e33-1a257389f495_639x330.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!otds!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe966789-fdf7-4a86-8e33-1a257389f495_639x330.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!otds!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe966789-fdf7-4a86-8e33-1a257389f495_639x330.jpeg" width="639" height="330" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/be966789-fdf7-4a86-8e33-1a257389f495_639x330.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:330,&quot;width&quot;:639,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:19248,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/185447857?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe966789-fdf7-4a86-8e33-1a257389f495_639x330.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!otds!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe966789-fdf7-4a86-8e33-1a257389f495_639x330.jpeg 424w, https://substackcdn.com/image/fetch/$s_!otds!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe966789-fdf7-4a86-8e33-1a257389f495_639x330.jpeg 848w, https://substackcdn.com/image/fetch/$s_!otds!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe966789-fdf7-4a86-8e33-1a257389f495_639x330.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!otds!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe966789-fdf7-4a86-8e33-1a257389f495_639x330.jpeg 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Don&#8217;t be afraid to post, <a href="https://x.com/rundavidrun/status/587671657193455616">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Portfolio &amp; Personal Brand:</strong> A blog provides concrete examples of your work that make interviews and applications more compelling than resumes alone, while establishing you as a thought leader and building a professional network that creates unexpected job opportunities.</p></li></ul><ul><li><p><strong>Practice with Purpose:</strong> Blogging forces you to work with real-world messy data and communicate findings, developing the exact skills employers need while revealing knowledge gaps and hidden strengths through community feedback.</p></li></ul><h4><a href="https://www.linkedin.com/blog/engineering/infrastructure/engineering-linkedins-job-ingestion-system-at-scale">LinkedIn: Engineering the Job Ingestion System at Scale</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Platform<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p><strong>Summary: </strong>LinkedIn shares how they built a large-scale job ingestion system capable of processing millions of job postings from diverse sources reliably and efficiently. Instead of relying on fragmented ingestion workflows, LinkedIn designed a unified, scalable ingestion architecture that standardizes parsing, validation, enrichment, and indexing of job data. The system focuses on handling high-volume, heterogeneous inputs while ensuring data quality, low latency, and operational stability across downstream search and recommendation systems.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ojgw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F293d89c0-527b-4214-ba20-eec0bfbdb204_1920x792.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ojgw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F293d89c0-527b-4214-ba20-eec0bfbdb204_1920x792.png 424w, https://substackcdn.com/image/fetch/$s_!ojgw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F293d89c0-527b-4214-ba20-eec0bfbdb204_1920x792.png 848w, https://substackcdn.com/image/fetch/$s_!ojgw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F293d89c0-527b-4214-ba20-eec0bfbdb204_1920x792.png 1272w, https://substackcdn.com/image/fetch/$s_!ojgw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F293d89c0-527b-4214-ba20-eec0bfbdb204_1920x792.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ojgw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F293d89c0-527b-4214-ba20-eec0bfbdb204_1920x792.png" width="1456" height="601" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/293d89c0-527b-4214-ba20-eec0bfbdb204_1920x792.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:601,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Job ingestion flow&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Job ingestion flow" title="Job ingestion flow" srcset="https://substackcdn.com/image/fetch/$s_!ojgw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F293d89c0-527b-4214-ba20-eec0bfbdb204_1920x792.png 424w, https://substackcdn.com/image/fetch/$s_!ojgw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F293d89c0-527b-4214-ba20-eec0bfbdb204_1920x792.png 848w, https://substackcdn.com/image/fetch/$s_!ojgw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F293d89c0-527b-4214-ba20-eec0bfbdb204_1920x792.png 1272w, https://substackcdn.com/image/fetch/$s_!ojgw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F293d89c0-527b-4214-ba20-eec0bfbdb204_1920x792.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Job ingestion flow, <a href="https://www.linkedin.com/blog/engineering/infrastructure/engineering-linkedins-job-ingestion-system-at-scale">source</a></figcaption></figure></div><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Scalable Ingestion Architecture: </strong>Instead of building ingestion logic per partner or per feed, LinkedIn invested in a standardized ingestion framework. This represents the move from ad hoc pipelines to platform engineering. The architecture supports horizontal scaling and distributed processing, allowing millions of records to be processed per day without degrading performance or increasing operational overhead.</p></li><li><p><strong>Data Quality at Ingestion Layer: </strong>Schema validation, normalization, and enrichment happen early in the pipeline, reducing downstream correction cycles and improving the reliability of search and recommendation systems.</p></li><li><p><strong>Handling Heterogeneous Sources: </strong>In real-world systems, inputs from different sources rarely follow a single format. A strong ingestion framework abstracts this variability and converts it into a unified internal schema. For DEs, this means designing flexible parses, schema evolution strategies, and metadata-driven mappings that can scale without rewriting pipelines for every new source.</p></li><li><p><strong>Operational Resilience: </strong>The architecture is designed to manage failures, retries, and backpressure effectively, ensuring stability even during traffic spikes.</p></li></ul><h4><a href="https://www.uber.com/en-IN/blog/apache-hudi-at-uber/?uclick_id=9bc37d06-5ebb-43f5-b4ba-7817e58d1a0c">Uber: Engineering for Trillion-Record-Scale Data Lake Operations</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Lake<br>&#129504; <strong>Level</strong>: Beginner</p></blockquote><p><strong>Summary: </strong>Uber shares how they adopted <a href="https://hudi.apache.org">Apache Hudi</a> to solve large-scale data lake challenges such as late-arriving data, incremental processing, and inconsistent batch pipelines. Hudi adds transactional semantics, upserts, and time travel capabilities on top of cloud object storage, enabling Uber to treat their data lake more like a database while retaining scalability.</p><p>Instead of rebuilding datasets from scratch, Uber uses Hudi&#8217;s incremental ingestion and record-level updates to efficiently manage continuously evolving datasets across thousands of pipelines. </p><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Reliable Data Lakes (Lakehouse Foundations):</strong> Hudi introduces ACID transactions, schema evolution, and rollback support to the data lakes; it helps data engineers safely handle late data, reprocessing, and failures without breaking downstream pipelines. </p></li><li><p><strong>Scales with Streaming and Batch:</strong> Hudi supports both streaming ingestion and batch workloads, helping teams unify real-time and batch pipelines under a single data store.</p></li><li><p><strong>Incremental Pipelines:</strong> It allows pipelines to process just the new or updated data since the previous run, instead of scanning terabytes of data in each run.</p></li><li><p><strong>Indexing and Fast Upserts:</strong> It allows data engineers to perform fast row-level updates across hundreds of partitions and billions of records.</p></li></ul><div><hr></div><h3>&#9874;&#65039; Workshop: Getting Started with Protobuf APIs</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KZiq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F042fa021-f7b2-47f5-983e-4577ad5e536c_800x327.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KZiq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F042fa021-f7b2-47f5-983e-4577ad5e536c_800x327.png 424w, https://substackcdn.com/image/fetch/$s_!KZiq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F042fa021-f7b2-47f5-983e-4577ad5e536c_800x327.png 848w, https://substackcdn.com/image/fetch/$s_!KZiq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F042fa021-f7b2-47f5-983e-4577ad5e536c_800x327.png 1272w, https://substackcdn.com/image/fetch/$s_!KZiq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F042fa021-f7b2-47f5-983e-4577ad5e536c_800x327.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KZiq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F042fa021-f7b2-47f5-983e-4577ad5e536c_800x327.png" width="599" height="244.84125" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/042fa021-f7b2-47f5-983e-4577ad5e536c_800x327.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:327,&quot;width&quot;:800,&quot;resizeWidth&quot;:599,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&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_!KZiq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F042fa021-f7b2-47f5-983e-4577ad5e536c_800x327.png 424w, https://substackcdn.com/image/fetch/$s_!KZiq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F042fa021-f7b2-47f5-983e-4577ad5e536c_800x327.png 848w, https://substackcdn.com/image/fetch/$s_!KZiq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F042fa021-f7b2-47f5-983e-4577ad5e536c_800x327.png 1272w, https://substackcdn.com/image/fetch/$s_!KZiq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F042fa021-f7b2-47f5-983e-4577ad5e536c_800x327.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>If schema evolution keeps biting you in production (breaking changes, inconsistent validation, tooling sprawl), this Protobuf workshop is worth your time. You will learn:</p><ul><li><p>How to adopt Protobuf to prevent breaking changes and evolve schemas safely across teams and languages</p></li><li><p>How to use Protobuf in event streaming and data pipelines for better data quality</p></li><li><p>Best practices for designing real-world APIs</p></li></ul><p>&#128073; Sign up for the workshop <strong><a href="https://fandf.co/4a4w0w9">HERE</a></strong>.</p><p><em>(This message is sponsored by Buf)</em></p><div><hr></div><h3><strong>&#128142; Open Source Gems</strong></h3><p><strong><a href="https://github.com/vercel-labs/skills">skills CLI for the open agent skills ecosystem</a></strong></p><p>Skills are reusable capabilities for AI agents. They provide procedural knowledge that helps agents accomplish specific tasks more effectively. skills is an open-source CLI for installing and managing skill packages for agents.</p><p>Together with <a href="https://skills.sh/">skills.sh</a>, a directory and leaderboard for skill packages, it allows you to easily install and manage skills for all common AI tools like <strong>Claude Code</strong>, <strong>Codex</strong>, <strong>Cursor</strong>, <strong>OpenClaw</strong>, <strong>Gemini CLI</strong>, and <a href="https://github.com/vercel-labs/skills?tab=readme-ov-file#supported-agents">many more</a>.</p><p>&#128161; <strong>Why is this relevant for DEs</strong>?</p><p>Using AI to implement data pipelines, or any type of software development, has become the new norm. However, in Data Engineering in particular, we work with highly specialized tools, different versions, and varying best practices. This often leads to significant back and forth when using AI to speed up implementation. Installing skills can help, as they target specific use cases. Tools like Claude Code automatically apply a skill when they determine it fits the use case, which can significantly improve the quality of the output.</p><p>&#129489;&#8205;&#128187; <strong>Skills for DEs</strong></p><ul><li><p><a href="https://skills.sh/wshobson/agents/data-quality-frameworks">data-quality-frameworks</a>: Production patterns for implementing data quality with Great Expectations, dbt tests, and data contracts to ensure reliable data pipelines.</p></li><li><p><a href="https://skills.sh/obra/superpowers/brainstorming">brainstorming</a>: Turn ideas into fully formed designs and specs.</p></li><li><p><a href="https://skills.sh/wshobson/agents/dbt-transformation-patterns">dbt-transformation-patterns</a>: Production-ready patterns for dbt.</p></li><li><p><a href="https://skills.sh/astronomer/agents/authoring-dags">authoring-dags</a>: Creating and validating Airflow DAGs using best practices.</p></li><li><p><a href="https://skills.sh/wshobson/agents/data-storytelling">data-storytelling</a>: Transform raw data into compelling narratives.</p></li></ul><p><em>And many more.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9Wa9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47228967-2ecd-461d-8d81-3b0b85416b37_2220x1420.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9Wa9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47228967-2ecd-461d-8d81-3b0b85416b37_2220x1420.png 424w, https://substackcdn.com/image/fetch/$s_!9Wa9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47228967-2ecd-461d-8d81-3b0b85416b37_2220x1420.png 848w, https://substackcdn.com/image/fetch/$s_!9Wa9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47228967-2ecd-461d-8d81-3b0b85416b37_2220x1420.png 1272w, https://substackcdn.com/image/fetch/$s_!9Wa9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47228967-2ecd-461d-8d81-3b0b85416b37_2220x1420.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9Wa9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47228967-2ecd-461d-8d81-3b0b85416b37_2220x1420.png" width="1456" height="931" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/47228967-2ecd-461d-8d81-3b0b85416b37_2220x1420.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:931,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:629004,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/185447857?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47228967-2ecd-461d-8d81-3b0b85416b37_2220x1420.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9Wa9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47228967-2ecd-461d-8d81-3b0b85416b37_2220x1420.png 424w, https://substackcdn.com/image/fetch/$s_!9Wa9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47228967-2ecd-461d-8d81-3b0b85416b37_2220x1420.png 848w, https://substackcdn.com/image/fetch/$s_!9Wa9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47228967-2ecd-461d-8d81-3b0b85416b37_2220x1420.png 1272w, https://substackcdn.com/image/fetch/$s_!9Wa9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47228967-2ecd-461d-8d81-3b0b85416b37_2220x1420.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Installing a skill via CLI</figcaption></figure></div><p><strong>Github:</strong> <a href="https://github.com/vercel-labs/skills">https://github.com/vercel-labs/skills</a></p><div><hr></div><h3><strong>&#128161; DE Tip of the Month </strong></h3><h3><strong>Treat data contracts as non-negotiable in modern pipelines:</strong></h3><p>As data feeds more dashboards, models, and AI systems, failures are shifting from job failures to correctness. Pipelines run successfully, but silent changes in schema, freshness, or semantics break dashboards, models, and business decisions.</p><p>Data contracts help prevent this. They define clear expectations between data producers and consumers so everyone knows what a dataset promises to deliver.</p><p><strong>&#128161; Why it matters now more than ever</strong></p><ul><li><p>AI agents, auto-generated SQL, and self-serve analytics are increasing the number of data consumers without deep context</p></li><li><p>Faster development with a variety of tools like dbt, Spark, and Flink increases the risk of unintended schema changes.</p></li><li><p>The cost of bad data is often higher than pipeline downtime.</p></li></ul><p>&#128161; <strong>How to start</strong></p><ul><li><p>Add contracts to your most critical datasets</p></li><li><p>Enforce them with tests and freshness checks</p></li><li><p>Make them visible in your metadata catalog</p></li><li><p>Start small and expand gradually.</p></li></ul><p>Teams that treat data contracts seriously spend less time firefighting and build stronger trust between data producers and consumers.</p><div><hr></div><p>Let us know what you like the most in the newsletter. See you next time!</p><div class="poll-embed" data-attrs="{&quot;id&quot;:450229}" data-component-name="PollToDOM"></div><p>Until next time, cheers!</p><p><a href="https://www.linkedin.com/in/srivigneshkn/">Sri</a>, <a href="https://www.linkedin.com/in/sukanyawadawadagi/">Sukanya</a> &amp; <a href="https://www.linkedin.com/in/vjanz/">Volker</a></p><div><hr></div><h4>&#8505;&#65039; About Data Engineer Things</h4><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Community Spotlight Edition (Feb 2026)]]></title><description><![CDATA[A non-traditional path into data and how frustration with monolithic BI tools became a career in building them]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-88a</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community-88a</guid><dc:creator><![CDATA[Eddy Zulkifly]]></dc:creator><pubDate>Tue, 03 Feb 2026 16:03:05 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!GVox!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.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_!GVox!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GVox!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!GVox!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!GVox!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!GVox!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GVox!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:284325,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/180265814?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!GVox!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!GVox!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!GVox!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!GVox!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c3ec69-edda-44ff-9807-72f5ba2ae383_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hi everyone,</p><p>This interview highlights how <strong>diverse backgrounds and perspectives help people build better data tools</strong>.</p><p>I met Archie through a virtual data conference called <a href="https://www.mdsfest.com/">MDS Fest</a> where he introduced Evidence as an open-source reporting tool using only SQL and Markdown (<a href="https://www.youtube.com/live/L0M_RWSp4RE?si=hNZAm5R51LxR3caM">source</a>). What stood out to me was his non-traditional path in data moving from strategy consulting to building open-source data tools. Spending years translating raw data into business decisions gave Archie a deep perspective on how data actually gets used, and where data tools might often get in the way.</p><p>Since then, he&#8217;s been active in the open-source community shipping data tools, and he&#8217;s now leading growth at Evidence.</p><p>Hope you find the lessons from this conversation meaningful.</p><p>Let&#8217;s go!<br>&#8212; Eddy</p><div><hr></div><h3>Spotlight: Archie Wood (Head of Growth at Evidence)</h3><div class="pullquote"><p>&#8220;Someone has to fix this and I&#8217;d like to be part of that solution&#8221;</p></div><p>For years, BI meant expensive, monolithic systems that stifled adaptability. But as data environments grew more complex, the demand for flexibility exploded.</p><p>This shift has driven the rise of composable BI. Instead of a &#8220;black box&#8221;, modern stacks use decoupled components to give teams total control over their metrics and visuals.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sQmY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dd876e6-db21-4319-a9fb-b7ea977cd7a2_1209x1094.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sQmY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dd876e6-db21-4319-a9fb-b7ea977cd7a2_1209x1094.jpeg 424w, https://substackcdn.com/image/fetch/$s_!sQmY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dd876e6-db21-4319-a9fb-b7ea977cd7a2_1209x1094.jpeg 848w, https://substackcdn.com/image/fetch/$s_!sQmY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dd876e6-db21-4319-a9fb-b7ea977cd7a2_1209x1094.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!sQmY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dd876e6-db21-4319-a9fb-b7ea977cd7a2_1209x1094.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sQmY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dd876e6-db21-4319-a9fb-b7ea977cd7a2_1209x1094.jpeg" width="1209" height="1094" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3dd876e6-db21-4319-a9fb-b7ea977cd7a2_1209x1094.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1094,&quot;width&quot;:1209,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:755619,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/180265814?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dd876e6-db21-4319-a9fb-b7ea977cd7a2_1209x1094.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!sQmY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dd876e6-db21-4319-a9fb-b7ea977cd7a2_1209x1094.jpeg 424w, https://substackcdn.com/image/fetch/$s_!sQmY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dd876e6-db21-4319-a9fb-b7ea977cd7a2_1209x1094.jpeg 848w, https://substackcdn.com/image/fetch/$s_!sQmY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dd876e6-db21-4319-a9fb-b7ea977cd7a2_1209x1094.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!sQmY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dd876e6-db21-4319-a9fb-b7ea977cd7a2_1209x1094.jpeg 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Full-stack composable BI, <a href="https://www.pracdata.io/p/the-evolution-of-business-intelligence-stack">source</a></figcaption></figure></div><p>It was exactly this frustration with the &#8220;old way&#8221; that pushed <strong>Archie Wood</strong> (Head of Growth at Evidence) to move from analyzing data to <strong>building the tools behind it</strong>. His path is anything but traditional, and his story reveals a lot about where modern BI is heading.</p><div><hr></div><h3>&#128202; Sponsored Insight: The State of Airflow 2026 Report</h3><div class="captioned-image-container"><figure><div class="image-link image2" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vf8-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883a3669-b99b-48f3-b9eb-d85438acbc9c_1920x1008.png 424w, https://substackcdn.com/image/fetch/$s_!vf8-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883a3669-b99b-48f3-b9eb-d85438acbc9c_1920x1008.png 848w, https://substackcdn.com/image/fetch/$s_!vf8-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883a3669-b99b-48f3-b9eb-d85438acbc9c_1920x1008.png 1272w, https://substackcdn.com/image/fetch/$s_!vf8-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883a3669-b99b-48f3-b9eb-d85438acbc9c_1920x1008.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vf8-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883a3669-b99b-48f3-b9eb-d85438acbc9c_1920x1008.png" width="420" height="220.3846153846154" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/883a3669-b99b-48f3-b9eb-d85438acbc9c_1920x1008.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:764,&quot;width&quot;:1456,&quot;resizeWidth&quot;:420,&quot;bytes&quot;:1096748,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/180265814?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883a3669-b99b-48f3-b9eb-d85438acbc9c_1920x1008.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vf8-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883a3669-b99b-48f3-b9eb-d85438acbc9c_1920x1008.png 424w, https://substackcdn.com/image/fetch/$s_!vf8-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883a3669-b99b-48f3-b9eb-d85438acbc9c_1920x1008.png 848w, https://substackcdn.com/image/fetch/$s_!vf8-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883a3669-b99b-48f3-b9eb-d85438acbc9c_1920x1008.png 1272w, https://substackcdn.com/image/fetch/$s_!vf8-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883a3669-b99b-48f3-b9eb-d85438acbc9c_1920x1008.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></div></figure></div><p>The State of Apache Airflow 2026 Report, the largest data engineering survey ever, draws on insights from 5,800+ data engineers on how Airflow is actually being used today. In this report, you&#8217;ll learn:</p><ul><li><p>How the role of the data engineer is evolving</p></li><li><p>How early adopters are leveraging Airflow 3 features</p></li><li><p>How orchestration-first teams tend to ship AI to production faster</p></li></ul><p>&#128073; Read the report <a href="https://www.astronomer.io/airflow/state-of-airflow/?utm_campaign=2025q4-ebook-tf-state-of-airflow-2026&amp;utm_medium=paidmedia&amp;utm_source=data-engineering-things">HERE</a></p><p><em>(This message is sponsored by Astronomer.)</em></p><div><hr></div><blockquote><p><em>Could you walk us through your journey into the data engineering space?</em></p></blockquote><p>Today I work as an open-source maintainer and lead growth for a BI tool but I got here by being deeply frustrated as a non-technical data user.<br><br>I maintain several open-source projects (<a href="https://github.com/evidence-dev/duckdb_gsheets">DuckDB GSheets</a> and <a href="https://github.com/archiewood/gosql">gosql</a>) on top of Evidence because I&#8217;ve lived the pain of data tools getting in the way of insights.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gEFj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507f66ac-cde9-44f2-b89b-6fe3133dcbf6_1998x992.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gEFj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507f66ac-cde9-44f2-b89b-6fe3133dcbf6_1998x992.png 424w, https://substackcdn.com/image/fetch/$s_!gEFj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507f66ac-cde9-44f2-b89b-6fe3133dcbf6_1998x992.png 848w, https://substackcdn.com/image/fetch/$s_!gEFj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507f66ac-cde9-44f2-b89b-6fe3133dcbf6_1998x992.png 1272w, https://substackcdn.com/image/fetch/$s_!gEFj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507f66ac-cde9-44f2-b89b-6fe3133dcbf6_1998x992.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gEFj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507f66ac-cde9-44f2-b89b-6fe3133dcbf6_1998x992.png" width="1456" height="723" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/507f66ac-cde9-44f2-b89b-6fe3133dcbf6_1998x992.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:723,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:249325,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/180265814?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507f66ac-cde9-44f2-b89b-6fe3133dcbf6_1998x992.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!gEFj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507f66ac-cde9-44f2-b89b-6fe3133dcbf6_1998x992.png 424w, https://substackcdn.com/image/fetch/$s_!gEFj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507f66ac-cde9-44f2-b89b-6fe3133dcbf6_1998x992.png 848w, https://substackcdn.com/image/fetch/$s_!gEFj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507f66ac-cde9-44f2-b89b-6fe3133dcbf6_1998x992.png 1272w, https://substackcdn.com/image/fetch/$s_!gEFj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507f66ac-cde9-44f2-b89b-6fe3133dcbf6_1998x992.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Archie&#8217;s open source projects, <a href="https://archie.evidence.app/">source </a></figcaption></figure></div><p>I&#8217;ve been working with data for about 8 years, though I came into data in a non-traditional way. I started in management consulting, where data was mainly used to make slides and working on Excel until it fell over at a couple hundred thousand rows. Tableau opened my eyes to what better BI tools could do, and I was hooked.</p><p>Later, I joined an e-commerce company in London called Patch Plants (UK houseplant retailer) as Strategy Manager and eventually Chief of Staff where I learned SQL and Python because I kept pestering the data team for requests. They eventually gave me developer access and let me self-serve. We used Snowflake, dbt, Looker, Metabase and a lot of Google Sheets. It was a wild couple of years. Between 2019 and 2021, Patch grew nearly 200% and delivered over a million plants to 300,000 customers. Being part of that growth while building out the BI function while navigating complex challenges like Brexit was an incredible learning experience.</p><p>In 2021, I moved to Canada and spent a bit of time working on my own data startup ideas, but nothing really stuck. Eventually, I met Adam and Sean, the founders of <a href="https://evidence.dev/">Evidence</a> who were building exactly what I&#8217;d always wanted, a more flexible BI tool that gave you more control over visuals.  It often felt like the BI software I used was slowing me down more than helping me and I remember thinking, &#8220;Someone has to fix this and I&#8217;d like to be part of that solution&#8221;. I traded SQL and spreadsheets for building code extensions that made it easier for data folks to tell data stories using software engineering principles.  <br><br><strong>&#128161; Key takeaway:</strong> Non-traditional paths into data are a superpower. Firsthand frustrations coupled with domain expertise become the fuel to build better data tools. </p><div><hr></div><blockquote><p><em>As an open source maintainer and Head of Growth at Evidence, how do you balance the engineering mindset with the community and adoption side of the work?</em></p></blockquote><p>It comes in waves. Some months I&#8217;m deep in code, shipping features non-stop. Other months are more about storytelling and figuring out how to explain what we&#8217;ve built, who it&#8217;s for, and where it fits.</p><p>A big part of making that balance work is being clear about who we&#8217;re talking about when we say &#8220;users&#8221;, because we have two different audiences.</p><p>Our open-source product is something teams can self-host and deploy as a static site. The source code is fully public on GitHub, and the community around it includes contributors, maintainers, and people using it in production on their own infrastructure.</p><p>Evidence Studio is our commercial SaaS product and while it isn&#8217;t open source, we&#8217;re still working out whether we may open source parts of it over time.<br><br>When you&#8217;re balancing engineering, customer success, and an open-source community, empathy matters a lot. In open source especially, it&#8217;s easy to think &#8220;people are using it wrong,&#8221; but most of the time it means we designed something with too much friction. Evidence initially required installing Node.js and managing local dependencies, which worked fine for contributors but was a blocker for a lot of non-technical users. As a result, we&#8217;ve built a browser-based experience to make onboarding smoother and collaboration easier, while maintaining core functionality.</p><p>Keeping the project authentic to its open-source roots is a constant balance, and it&#8217;s not always straightforward. One way we&#8217;ve supported open-source development is by offering commercial support services for teams self-hosting the open-source version. Bigger enterprises often want the ability to pick up the phone and resolve issues quickly, and that support helps fund the work while keeping the open-source project healthy.<br><br><strong>&#128161; Key takeaway:</strong> Balancing engineering and community comes down to empathy. Data engineers need to listen to users, understand their real needs, and remove friction wherever possible.</p><div><hr></div><blockquote><p><em>On a personal level, you&#8217;re balancing building tools, growing a community and parenting. What habits or systems have helped you sustain creativity and focus amid that mix?</em></p></blockquote><p>I&#8217;m still early in parenting days so any &#8220;system&#8221; I have keeps changing. Kids force you to adapt constantly. My partner and I both work full time, and because she&#8217;s based in New York, I handle weekdays and she takes weekends. It&#8217;s intense, but it works.</p><p>I run my days in blocks: mornings and evenings are family time, the core workday is protected, and nights are for decompression or light work. Startups don&#8217;t respect schedules and if something breaks, you jump in but parenting has made me ruthless about focus. You quickly see how much time gets wasted otherwise.</p><p><strong>&#128161; Key takeaway</strong>: It&#8217;s important to <strong>be intentional with time management and adaptability.</strong> Knowing when to pivot is crucial to staying productive and effective.</p><div><hr></div><blockquote><p><em>What&#8217;s something you&#8217;ve learned from the Evidence community that changed your thinking about how open-source BI should evolve?</em></p></blockquote><p>BI tools are deceptively complex pieces of software. Setting one up can take weeks, and the person doing it usually has three other jobs. They might be a data engineer, director of data, or even a software developer doing BI on the side. By the time they&#8217;ve cleaned and modelled their data, users just want a tool that helps them explore and visualize it without the complex setup time.</p><p>That gap between lightweight data exploration (querying in SQL or using a notebook) and building polished dashboards is still massive. It shouldn&#8217;t be. Most people want something that feels as quick and flexible as a notebook or SQL client, but with the clarity and polish of BI.</p><p>That&#8217;s where open source really shines. It can move faster, stay flexible, and meet people where they already work. Projects like Evidence, Streamlit and Rill Data live in that middle ground between exploration and presentation. Where you can go from query to insight to something you&#8217;re proud to share, without waiting on a whole implementation cycle.</p><p><strong>&#128161; Key takeaway:</strong> There&#8217;s a distinct product niche for BI tools that can offer out of the box data exploration and BI tools which provide well governed dashboards.</p><div><hr></div><blockquote><p><em>You mentioned other open-source projects (Streamlit, Rill) that sit in this middle ground. As a data engineer, how do these compare to Evidence, and when should one choose which tool?</em></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cGXb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a1cea49-f37c-4702-bdfa-98b396182f95_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cGXb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a1cea49-f37c-4702-bdfa-98b396182f95_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!cGXb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a1cea49-f37c-4702-bdfa-98b396182f95_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!cGXb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a1cea49-f37c-4702-bdfa-98b396182f95_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!cGXb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a1cea49-f37c-4702-bdfa-98b396182f95_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cGXb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a1cea49-f37c-4702-bdfa-98b396182f95_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5a1cea49-f37c-4702-bdfa-98b396182f95_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:638508,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/180265814?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a1cea49-f37c-4702-bdfa-98b396182f95_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!cGXb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a1cea49-f37c-4702-bdfa-98b396182f95_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!cGXb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a1cea49-f37c-4702-bdfa-98b396182f95_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!cGXb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a1cea49-f37c-4702-bdfa-98b396182f95_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!cGXb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a1cea49-f37c-4702-bdfa-98b396182f95_1536x1024.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">BI tools based on app customization and reporting vs self-serve analytics</figcaption></figure></div><p><strong><a href="https://evidence.dev/">Evidence</a></strong> is the most analytics-engineering friendly if your goal is <em>trusted reporting as code</em>. It&#8217;s SQL-first and Markdown-first, so dashboards behave like software artifacts: version controlled, reviewable in PRs, reproducible across environments, and easy to ship as a static site or data product. It&#8217;s especially strong when you want to pair charts with narrative and definitions (&#8220;what changed, why it changed, and what to do next&#8221;).</p><p><strong><a href="https://streamlit.io/">Streamlit</a></strong> is best thought of as a Python application framework, not a BI tool. It&#8217;s ideal when you need more than charts (custom workflows, business logic, forms) and UI needs to be bespoke. The tradeoff is governance isn&#8217;t built in: metric definitions, permissions, consistency, and performance patterns are on your team to implement. It&#8217;s great for prototyping, but can become &#8220;a collection of apps&#8221; without standards.</p><p><strong><a href="https://www.rilldata.com/">Rill</a></strong> is closer to a productized BI experience: fast dashboards, metrics-driven exploration, and workflows optimized for operational analytics and drill down analysis. It shines when you want a Looker-style experience without building an app. Compared to Evidence, it&#8217;s less about narrative reporting and more about interactive exploration with an opinionated structure for speed and consistency.</p><p><strong>Rule of thumb:</strong></p><ul><li><p>Choose <strong>Evidence</strong> for governed, version-controlled reporting with narrative.</p></li><li><p>Choose <strong>Rill</strong> for fast metrics + interactive exploration with a BI-product feel.</p></li><li><p>Choose <strong>Streamlit</strong> when you need a custom data application, not just dashboards.</p></li></ul><div><hr></div><blockquote><p><em>Was there a specific GitHub issue or a discussion on a PR that provided a distinct technical learning moment you can share?</em></p></blockquote><p>One small example that stuck with me was <strong>number formatting</strong>. A user opened a GitHub discussion pointing out that our default format:</p><p>&#8364;1,234.56 was incorrect!</p><p>In <strong>Germany</strong>, the same number should be displayed as:</p><p>1.234,56 &#8364;</p><p>That difference matters:</p><ul><li><p><strong>Comma</strong> for decimals (,56)</p></li><li><p><strong>Period</strong> for thousands (1.234)</p></li><li><p><strong>Currency </strong>symbol at the end (&#8364;)</p></li></ul><p>The user could technically &#8220;fix&#8221; it upstream in the database layer, but that would turn the number into a string and break Evidence features like charts and numeric props. This edge case required a code change to support locale-aware formatting properly.</p><p>It was a good reminder that small details can impact clarity and trust, and we only caught it because someone raised it publicly on GitHub.</p><p>&#128161; <strong>Key takeaway:</strong> Open source makes your blind spots visible. Real users surface real-world edge cases that make the product better for everyone.</p><div><hr></div><blockquote><p><em>What advice would you give to data engineers who are curious about building open source tools?</em></p></blockquote><p>Start by contributing. If you use an open source tool and spot a bug or a feature gap, engage with the community on GitHub, Slack, or Discord. Small contributions are the best way to learn how open source really works: people building in public, improving tools they rely on, and collaborating across the world.</p><p>If you want to build your own open source tool or company, go in with equal parts excitement and realism. It&#8217;s deeply rewarding but hard to sustain. You&#8217;ll meet amazing contributors and a few demanding users, and you&#8217;ll eventually face the hardest question which is how to monetize without breaking what makes it open.</p><p><strong>&#128161; Key takeaway:</strong> Start small and engage the open source community on public channels.</p><div><hr></div><h3>Community poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:437579}" data-component-name="PollToDOM"></div><div><hr></div><h3>&#128172; How to stay connected</h3><ul><li><p><a href="https://www.linkedin.com/in/archiesarrewood/">https://www.linkedin.com/in/archiesarrewood/</a></p></li><li><p><a href="https://github.com/archiewood">https://github.com/archiewood</a></p></li><li><p><a href="https://evidence.dev/">https://evidence.dev/</a></p></li></ul><div><hr></div><h3>&#8505;&#65039; About Data Engineer Things</h3><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Data Pulse Edition (Jan 2026)]]></title><description><![CDATA[DET editors' New Year resolutions, templatizing Spark declarative pipelines, Meta's video invisible watermarking, Lyft's feature store architecture]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-data</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Wed, 14 Jan 2026 16:02:22 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!mOS6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.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_!mOS6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mOS6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!mOS6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!mOS6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!mOS6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mOS6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:168144,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/182380267?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mOS6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!mOS6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!mOS6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!mOS6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F748ef0fa-9801-45fe-8e52-17a7dc5b1a5f_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>First of all, Happy New Year, everyone!</p><p>Hope you all had a happy and restorative holiday season. My own break was a beautiful blur of firsts: spending the first Christmas and New Year with my new daughter. There is something profoundly grounding about watching a child experience the magic of a Christmas market for the first time. Between the smell of roasted nuts and the twinkling lights, I found myself doing a different kind of &#8220;data collection&#8221;capturing every giggle and wide-eyed stare.</p><p>That calm period gave me some much-needed space to reflect on 2025. In the data world, 2025 was the year we stopped talking about AI alone and started weaving it into our actual pipelines. We moved from Copilots that write SQL to AI-assisted metadata management. Personally, it taught me that while the tools change faster than a toddler&#8217;s mood, the fundamentals: reliability, cost-efficiency, and trust remain our North Star.</p><p>Let&#8217;s make 2026 the year we build less &#8220;tech debt&#8221; and more &#8220;data wealth.&#8221;</p><p>With that, we start our first newsletter of the year with a bonus section. A few of our DET editors share their New Year Resolutions with you, our amazing community. Hope you enjoy this edition and perhaps draw some inspiration for yours, if you&#8217;re in the process of creating your own. </p><p>- Chozhan</p><div><hr></div><h3><strong>&#128218;</strong> Data Pulse</h3><h4><strong><a href="https://www.databricks.com/blog/chaos-scale-templatizing-spark-declarative-pipelines-dlt-meta">Templatizing Spark Declarative Pipelines with DLT-META</a></strong></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Pipelines<br>&#129504; <strong>Level</strong>: Beginner</p></blockquote><p><strong>Summary:</strong> Databricks introduces <strong>DLT-META</strong>, an open-source framework designed to solve pipeline sprawl. It allows engineers to use a metadata-driven approach to generate Delta Live Table (DLT) pipelines. Instead of writing unique code for every table, you define the pipeline logic in a JSON/YAML template, and the framework dynamically generates the Spark jobs.</p><p><strong>&#128161; Why is this relevant for DEs?</strong></p><ul><li><p><strong>Operational Scalability:</strong> It enables us to move from &#8220;coding&#8221; individual pipelines to &#8220;architecting&#8221; frameworks, allowing a single engineer to manage thousands of tables.</p></li><li><p><strong>Reduced Tech Debt:</strong> By templatizing the logic, you ensure consistent data quality checks (expectations) and governance across all data assets.</p></li><li><p><strong>Faster Onboarding:</strong> New data sources can be integrated by simply updating a metadata file rather than deploying new code modules.</p></li><li><p><strong>DRY (Don&#8217;t Repeat Yourself):</strong> It enforces a &#8220;standard library&#8221; of transformations, making maintenance and debugging significantly simpler across the lakehouse.</p></li></ul><h4><a href="https://engineering.fb.com/2025/11/04/video-engineering/video-invisible-watermarking-at-scale/">Meta: Video Invisible Watermarking at Scale</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Engineering<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p><strong>Summary: </strong>Meta uses Video Invisible Watermarking, a system designed to embed traceable metadata into video content without affecting visual quality. This enables Meta in detecting AI-generated videos, verifying who posted a video first, and identifying the source and tools used to create a video. This is a massive-scale data engineering challenge given the amount of videos being circulated across Meta platforms every minute. It requires processing billions of video uploads in real-time, ensuring the watermark survives compression, cropping, and screen recording. In this post, Meta shares how they overcame the challenges of scaling invisible watermarking, including how they built a CPU-based solution that offers comparable performance to GPUs, but with better operational efficiency.</p><p>&#128161; <strong>Why is this relevant for DEs</strong>?</p><ul><li><p><strong>Complex Data Modeling:</strong> It showcases how to handle unstructured data as a first-class citizen in a pipeline.</p></li><li><p><strong>High-Throughput Processing:</strong> DEs can learn about the infrastructure required to run computationally expensive ML models (for watermarking) on every single write operation.</p></li><li><p><strong>Data Provenance and Trust:</strong> As GenAI content floods the web, building &#8220;Trust Infrastructure&#8221; like watermarking will become a core responsibility for data platforms.</p></li><li><p><strong>Multimodal Engineering:</strong> It bridges the gap between traditional signal processing and modern distributed data pipelines at an exabyte scale.</p></li></ul><h4><strong><a href="https://eng.lyft.com/lyfts-feature-store-architecture-optimization-and-evolution-7835f8962b99">Lyft&#8217;s Feature Store: Architecture, Optimization, and Evolution</a></strong></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Architecture<br>&#129504; <strong>Level</strong>: Advanced</p></blockquote><p>Lyft's revamped Feature Store is a mission-critical "platform of platforms" designed to centralize and scale machine learning feature management across the organization's entire rideshare stack. The implementation utilizes a "Features-as-Code" approach where engineers define features via Spark SQL for business logic and JSON for metadata. This configuration is automatically converted into production-ready Airflow DAGs that compute and publish data to both a Hive-based offline store for training and a high-performance online serving layer. For low-latency retrieval, the system employs a hybrid architecture featuring DynamoDB backed by a ValKey write-through cache, alongside OpenSearch specifically for vector embedding support. This robust setup now handles over a trillion annual operations, serving as the foundational infrastructure for everything from real-time pricing to fraud detection.</p><p>&#128161; <strong>Why is this relevant for DEs</strong>?</p><ul><li><p><strong>Democratizing feature engineering:</strong> By allowing anyone with SQL and JSON knowledge to deploy production-grade pipelines.</p></li><li><p><strong>Separating storage and computation:</strong> To ensure high-throughput batch writes never interfere with sub-millisecond read performance.</p></li><li><p><strong>Solving the small file problem:</strong> Through automated background compaction and clustering within the streaming lakehouse layer.</p></li><li><p><strong>Enforcing organization-wide Data Contracts</strong>: Guaranteeing feature freshness, ownership, and schema stability for downstream consumers.</p></li><li><p><strong>Reducing operational overhead:</strong> By migrating complex orchestration from in-house tools to managed services like Astronomer (Airflow).</p></li><li><p><strong>Future-proofing infrastructure for AI:</strong> With native vector indexing in OpenSearch to support emerging LLM and agentic workflows.</p></li><li><p><strong>Standardizing multimodal data management</strong>: Unifying raw metadata, binary blobs, and embeddings into a single searchable ecosystem.</p></li></ul><div><hr></div><h3>&#128161;Blog: Building AI Agents for Data Engineering Ops</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JgiO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd2dcc41-7767-408b-9d00-8812ce80cbf3_1600x870.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JgiO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd2dcc41-7767-408b-9d00-8812ce80cbf3_1600x870.png 424w, https://substackcdn.com/image/fetch/$s_!JgiO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd2dcc41-7767-408b-9d00-8812ce80cbf3_1600x870.png 848w, https://substackcdn.com/image/fetch/$s_!JgiO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd2dcc41-7767-408b-9d00-8812ce80cbf3_1600x870.png 1272w, https://substackcdn.com/image/fetch/$s_!JgiO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd2dcc41-7767-408b-9d00-8812ce80cbf3_1600x870.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JgiO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd2dcc41-7767-408b-9d00-8812ce80cbf3_1600x870.png" width="667" height="362.81868131868134" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fd2dcc41-7767-408b-9d00-8812ce80cbf3_1600x870.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:792,&quot;width&quot;:1456,&quot;resizeWidth&quot;:667,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!JgiO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd2dcc41-7767-408b-9d00-8812ce80cbf3_1600x870.png 424w, https://substackcdn.com/image/fetch/$s_!JgiO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd2dcc41-7767-408b-9d00-8812ce80cbf3_1600x870.png 848w, https://substackcdn.com/image/fetch/$s_!JgiO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd2dcc41-7767-408b-9d00-8812ce80cbf3_1600x870.png 1272w, https://substackcdn.com/image/fetch/$s_!JgiO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd2dcc41-7767-408b-9d00-8812ce80cbf3_1600x870.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Debugging production data pipelines is a critical part of a data engineer&#8217;s job but it can be particularly difficult. The team at Corelayer explored how AI agents can assist with investigations: detecting anomalies, correlating logs and DAG runs, forming hypotheses, and producing evidence-backed root cause analyses with humans firmly in the loop. In this article, you will learn the failure modes, operational complexity, and the design principles (evals, guardrails, transparency) that matter when applying AI to real-world data engineering workflows.</p><p>&#128073;&#127996; Read the full article <a href="https://www.corelayer.com/blog/production-data-eng-is-hard?utm_source=det_newsletter&amp;utm_medium=email&amp;utm_campaign=det_jan_2026">HERE</a>.</p><p><em>(This message is sponsored by Corelayer.)</em></p><div><hr></div><h3>&#10024; New Year Resolutions from DET Editors</h3><h4>Volker</h4><blockquote><p>In our first Community Spotlight newsletter, the vote showed that the biggest blockers to write or speak about work and experiences are &#8220;stuck in drafts forever&#8221; and &#8220;too tired after coding all day.&#8221; I feel both. I tend to overthink everything I share, so ideas die in perfectionism. But data engineering moves fast, and the value of insights fades quickly. <strong>This year, I want to be braver: share earlier, share imperfectly, and don&#8217;t be afraid of having opinions</strong>.</p></blockquote><h4>Swetha</h4><blockquote><p>In 2026, I want to <strong>develop consistent technical writing in data engineering, using it to support others in the field and also make it as a learning tool</strong>. Alongside this, I want to also expand the mentoring guidance to provide aspiring data engineers, give them industry trends, interview expectations and help them achieve their goals, I have always loved contributing to the community and I look forward to taking the deliberate effort to do that this year.</p></blockquote><h4>Eddy</h4><blockquote><p>In 2026, my resolution is to <strong>create more conversations about data engineering</strong>. A lot of my growth as a data/software engineer came through meetups and having conversations with dev/product/sales/marketing folks across the tech spectrum. I&#8217;ve been fortunate to grow in a place with a vibrant data community, and that environment played a huge role in my professional and technical development. In the future, I hope to carry that same mindset forward: investing in conversations, building community, and learning in public.</p></blockquote><h4>Ananda</h4><blockquote><p>I plan to <strong>contribute to open source</strong>, as it gives me significant leverage to create impact across the data engineering community. I intend to increase my knowledge in large-scale data engineering and infrastructure optimization. A more ambitious idea is to learn a new programming language, probably Rust, to expand my skill set. I&#8217;ll share what I learnt with the community through mentoring, blogging, and speaking engagements, taking small, consistent steps that compound into decent progress.</p></blockquote><h4>Chozhan</h4><blockquote><p>Starting late 2025, we&#8217;ve been inching toward Autonomous Data Engineering, where pipelines don&#8217;t just alert us when they break, but suggest the fix or even auto heal. With that as an opportunity, I approach 2026 with the mindset of <strong>reclaiming the mental space for creative architecture &amp; strategy that drives more business value by (re)designing every system to automate the mundane &amp; repetitive</strong>. Also, I learned a lot in the past years from being part of communities and this year, I&#8217;d like to give back more by sharing my experiences, especially failures &amp; lessons learned using different mediums.</p></blockquote><p><em>So, dear community, we are curious to hear what your 2026 resolutions are. Let us know via the poll at the end </em>&#128071;<em> or in the comments or the community chat </em>&#128172;<em>.</em> </p><div><hr></div><h3><strong>&#128142; Open Source Gems</strong></h3><p><strong><a href="https://lancedb.com/">LanceDB: The Multimodal Vector Database for the AI Era</a></strong></p><p>LanceDB is an open-source, serverless-native vector database designed to simplify the management and retrieval of unstructured data for AI applications. Built on the high-performance <strong>Lance</strong> columnar data format, it offers up to 100x faster random access performance compared to traditional formats like Parquet. It is uniquely useful because it allows engineers to store raw data (images, videos), metadata, and vector embeddings together in a single, unified table. This "SQLite-like" approach means it can run embedded directly in your application or scale to massive cloud-native lakehouses without the overhead of managing a complex database cluster.</p><div class="captioned-image-container"><figure><div class="image-link image2" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!z5kL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0ce17-ea24-4e97-9eab-50afcffcb588_921x201.png 424w, https://substackcdn.com/image/fetch/$s_!z5kL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0ce17-ea24-4e97-9eab-50afcffcb588_921x201.png 848w, https://substackcdn.com/image/fetch/$s_!z5kL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0ce17-ea24-4e97-9eab-50afcffcb588_921x201.png 1272w, https://substackcdn.com/image/fetch/$s_!z5kL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0ce17-ea24-4e97-9eab-50afcffcb588_921x201.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!z5kL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0ce17-ea24-4e97-9eab-50afcffcb588_921x201.png" width="425" height="92.75244299674267" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b4c0ce17-ea24-4e97-9eab-50afcffcb588_921x201.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:201,&quot;width&quot;:921,&quot;resizeWidth&quot;:425,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;GitHub - lancedb/lancedb-private: Developer-friendly, serverless vector  database for AI applications. Easily add long-term memory to your LLM apps!&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="GitHub - lancedb/lancedb-private: Developer-friendly, serverless vector  database for AI applications. Easily add long-term memory to your LLM apps!" title="GitHub - lancedb/lancedb-private: Developer-friendly, serverless vector  database for AI applications. Easily add long-term memory to your LLM apps!" srcset="https://substackcdn.com/image/fetch/$s_!z5kL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0ce17-ea24-4e97-9eab-50afcffcb588_921x201.png 424w, https://substackcdn.com/image/fetch/$s_!z5kL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0ce17-ea24-4e97-9eab-50afcffcb588_921x201.png 848w, https://substackcdn.com/image/fetch/$s_!z5kL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0ce17-ea24-4e97-9eab-50afcffcb588_921x201.png 1272w, https://substackcdn.com/image/fetch/$s_!z5kL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0ce17-ea24-4e97-9eab-50afcffcb588_921x201.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></div></figure></div><p>&#128161; <strong>Why is this relevant for DEs</strong>?</p><ul><li><p><strong>Unifies raw media and embeddings</strong> in a single table, eliminating complex sync logic between disparate data stores.</p></li><li><p><strong>Eliminates Parquet&#8217;s random access bottleneck</strong>, delivering the sub-millisecond retrieval required for real-time RAG.</p></li><li><p><strong>Scales from local to petabyte-scale cloud storage</strong> using an embedded, zero-infrastructure serverless architecture.</p></li></ul><p><strong>GitHub:</strong> <a href="https://github.com/lancedb/lancedb">https://github.com/lancedb/lancedb</a></p><div><hr></div><h3><strong>&#128161; DE Tip of the Month</strong></h3><h3><strong>Build Context-Aware Metadata &amp; Smart Lineage</strong></h3><p>Most lineage systems only show which tables depend on which, but context-aware metadata explains <em>why</em> changes happened and what triggered them. By capturing deployment info, config changes, and upstream data shifts, teams can perform faster root-cause analysis and smarter testing. This turns metadata into an operational control plane rather than passive documentation.</p><p>&#128161; <strong>Key ideas &amp; how to apply:</strong></p><ul><li><p>Capture deployment metadata alongside data changes<br>Example: tagging runs in Airflow / Dagster with context.</p><pre><code><code>run_tags = {
    "change_type": "schema_update",
    "jira_ticket": "DATA-2411",
    "release": "v2026.01",
    "affected_columns": "order_status, delivery_eta"
}</code></code></pre><p><em>Store these tags in your metadata system (OpenLineage, DataHub, Marquez).</em></p></li><li><p>Track schema evolution events and backfills explicitly (change_type = backfill)</p></li></ul><p>Use this metadata to auto-trigger downstream tests &amp; validations and feed lineage to impact analysis before major releases. When something breaks, you already know, what changed, who changed it, what downstream systems are affected, so the incidents resolve faster and safer.</p><div><hr></div><p>Let us know what you like the most in the newsletter. See you next time!</p><div class="poll-embed" data-attrs="{&quot;id&quot;:432351}" data-component-name="PollToDOM"></div><p>Until next time, cheers!</p><p>Chozhan, Shubham &amp; Sugandhi</p><div><hr></div><h4>&#8505;&#65039; About Data Engineer Things</h4><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter - Community Spotlight Edition (Dec 2025)]]></title><description><![CDATA[From big tech to independent consulting: the art of professional brand building and communication. Featuring Ben Rogojan (aka the Seattle Data Guy).]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-community</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Thu, 18 Dec 2025 16:00:50 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!M680!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.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_!M680!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!M680!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!M680!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!M680!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!M680!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!M680!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:258743,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/181481110?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!M680!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!M680!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!M680!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!M680!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F179a3c80-7b0a-4fab-95ec-468ebb22fb12_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hi everyone,</p><p>I&#8217;m excited to launch our new <strong>Community Spotlight</strong> series! Alongside our classic <strong>Data Pulse</strong> edition, this format focuses entirely on deep-dive interviews. We have one rule for these: <strong>they must offer actionable learnings</strong>.</p><p>So, grab your favorite warm drink and meet our first guest: <a href="https://www.linkedin.com/in/benjaminrogojan/">Ben Rogojan</a>, aka the <strong>Seattle Data Guy</strong>! From leaving Facebook to building an independent empire, Ben breaks down how he grew a following of 100k+ and why communication often beats coding.</p><p>One thing Ben mentions really stood out to me: &#8220;<em>You can get a lot of scale through content, but it&#8217;s hard to beat in-person relationships.</em>&#8221;</p><p>I recently returned from AWS re:Invent in Las Vegas, and I can absolutely confirm that. It was wonderful to meet so many people there, but now it&#8217;s time to slow down &#127876;.</p><p>Let&#8217;s dive in!</p><p>- Volker</p><div><hr></div><h3>Spotlight: Ben Rogojan (Seattle Data Guy)</h3><div class="pullquote"><p>&#8220;You don&#8217;t have to learn or be everything at once. Wherever your journey is now, enjoy it. You never know when it&#8217;ll shift.&#8221;</p></div><blockquote><p><em>Please introduce yourself briefly to the Data Engineer Things community and share how you&#8217;ve built your personal brand to reach over 100,000 followers.</em></p></blockquote><p>Hello! My name is <a href="https://www.linkedin.com/in/benjaminrogojan/">Ben Rogojan</a>, I&#8217;ve been working in the data world for over a decade now. I started as an analyst and then found data engineering when I was looking for a role that matched the skills I enjoyed over title. While I was working full-time I had a few people ask me to help on some side projects so I started the <a href="https://www.theseattledataguy.com/">Seattle Data Guy</a> brand as a consulting company but I very quickly realized I needed to find a way to get myself known. <strong>So I started writing content I wish I had more of when I started</strong>.</p><div><hr></div><blockquote><p><em>If your journey from corporate data engineer to successful consultant and content creator was a Git repository, what would be the commit message for where you are right now? And what was the most significant &#8220;merge conflict&#8221; you had to resolve along the way?</em></p></blockquote><p>I think the commit message would say something like &#8220;breaking out and trying new things&#8221; or &#8220;pattern interrupt phase&#8221;. I&#8217;ve been spending a lot of time trying to figure out how to shake up my thinking and habits. I&#8217;ve been consulting for a few years and it can be tempting to fall into the same habits. <strong>So I have been looking for places where I can challenge my habits</strong>.</p><p>For merge conflicts, I think one that sticks out was when I was making the decision to leave Facebook. I had spent so much time and effort getting a job there that it felt wrong. I had a consulting business that was growing but it was hard to rationalize the decision due to all the prior effort.</p><div><hr></div><blockquote><p><em>You made the transition from working at Facebook to running your own data consulting business. What were the most critical steps in that journey, and what would you do differently if you were starting over today?</em></p></blockquote><p>I had been consulting off and on through most of my career. The first project I did was actually helping a client move from Access to SQL Server and now its a lot of SQL Server to cloud migration projects.</p><p>The most critical step for any consultant is figuring out how you will land clients. Some people are good at marketing, others sales motions, still others are great at networking in person. <strong>I think in terms of what I would have done differently is I would have put more effort into meeting more people in person and building relationships</strong>.</p><p>I believe that&#8217;s even more true now than it was in the past. <strong>You can get a lot of scale through content, but it&#8217;s hard to beat in person relationships</strong>.</p><div class="pullquote"><p>&#8220;By the end of the first year I had already made a more than working at Facebook and since then my total take home has grown comfortably.&#8221;</p></div><blockquote><p><em>Your LinkedIn profile states you&#8217;re &#8220;Tool-Agnostic, Outcome-Obsessed&#8221;. How did you develop this clear value statement, and how has it helped you attract the right clients for your consulting business?</em></p></blockquote><p>I think it can be tempting to prescribe a prior solution to every client. Also, <strong>I&#8217;ve come across many clients whose data stacks have gotten decently chaotic due to the fact that a consultant decided to add their preferred stack on top of what already exists</strong>.</p><p>Instead, I aim to come into all my projects by understanding the companies business needs first, their technical talent, budget, and so forth. From there I look for the tools that meet the companies&#8217; needs. In some cases buying a solution can prove far faster and easier on a company with limited data resources and in others the company&#8217;s goal is to make data a major part of their offering and the overhead of adding more data per customer would be too expensive for an out of the box solution.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Qy8N!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f9ea4af-5f2e-4f1a-b5a4-9c7970c3c644_1024x768.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Qy8N!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f9ea4af-5f2e-4f1a-b5a4-9c7970c3c644_1024x768.png 424w, https://substackcdn.com/image/fetch/$s_!Qy8N!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f9ea4af-5f2e-4f1a-b5a4-9c7970c3c644_1024x768.png 848w, https://substackcdn.com/image/fetch/$s_!Qy8N!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f9ea4af-5f2e-4f1a-b5a4-9c7970c3c644_1024x768.png 1272w, https://substackcdn.com/image/fetch/$s_!Qy8N!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f9ea4af-5f2e-4f1a-b5a4-9c7970c3c644_1024x768.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Qy8N!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f9ea4af-5f2e-4f1a-b5a4-9c7970c3c644_1024x768.png" width="1024" height="768" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8f9ea4af-5f2e-4f1a-b5a4-9c7970c3c644_1024x768.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:768,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:212310,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/181481110?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f9ea4af-5f2e-4f1a-b5a4-9c7970c3c644_1024x768.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Qy8N!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f9ea4af-5f2e-4f1a-b5a4-9c7970c3c644_1024x768.png 424w, https://substackcdn.com/image/fetch/$s_!Qy8N!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f9ea4af-5f2e-4f1a-b5a4-9c7970c3c644_1024x768.png 848w, https://substackcdn.com/image/fetch/$s_!Qy8N!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f9ea4af-5f2e-4f1a-b5a4-9c7970c3c644_1024x768.png 1272w, https://substackcdn.com/image/fetch/$s_!Qy8N!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f9ea4af-5f2e-4f1a-b5a4-9c7970c3c644_1024x768.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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">Tool based thinking vs outcome based thinking, source: <a href="https://www.linkedin.com/in/benjaminrogojan/">Ben</a></figcaption></figure></div><div><hr></div><blockquote><p><em>Your newsletter and YouTube channel have both reached over 100,000 subscribers. What content strategy has been most effective for growing your audience, and how do you balance creating content with client work?</em></p></blockquote><p>I&#8217;ve tried multiple times to create and follow a content strategy and calendar. But I always tend to drift.</p><p>So my approach is to <strong>find 2-4 themes I enjoy at the moment based on the problems I am either experiencing with recent clients, or discussing with data leaders and create content around that</strong>. I find that there are trends in problems so if you keep experiencing a similar problem, it&#8217;s likely there are plenty more people dealing with it.</p><div><hr></div><blockquote><p><em>If you had to start over today with zero followers across all platforms, which single platform would you focus on first, and what specific content format would you prioritize to build your audience most efficiently as a beginner?</em></p></blockquote><p>I think <strong>writing is always the easiest place to start</strong>. Start sharing your ideas on a platform like Substack (as long as it stays friendly to email) or if you aren&#8217;t wanting to write long articles then consider a platform like LinkedIn. I don&#8217;t think there is a best place. Early on, I believe you&#8217;re focused on finding your voice. So having a large audience isn&#8217;t the goal. <strong>You&#8217;re trying to learn, figure out what type of content you enjoy</strong>, etc. Overall, good content gets noticed.</p><div><hr></div><blockquote><p><em>Many professionals struggle to grow their audience while maintaining focus on their core business. What&#8217;s your framework for deciding which content to create, and how do you balance creating content that attracts followers versus content that converts followers into clients?</em></p></blockquote><p>Early on I was mostly focused on creating content that I enjoyed and felt like needed to be covered. Since then I&#8217;ve started to create a mix of both content for new data engineers as well as for possible clients.</p><p>I think this is an area I could generally improve. I don&#8217;t spend a lot of time on a content plan with clear ratios of content x and y. Instead, <strong>I write what I want to write about</strong>.</p><div><hr></div><blockquote><p><em>For data professionals considering consulting, what has been your most effective approach for finding and securing new clients, and how has this evolved as your brand has grown?</em></p></blockquote><p>I&#8217;ve spoken with dozens of consultants from both technical and non-technical backgrounds and <strong>the most common way most of them land clients is through their network</strong>. I know that can seem hard as if you&#8217;re just starting out as a data engineer or analyst as you&#8217;ve likely got a small network. But there are plenty of ways to grow it.</p><p>Working, going to events, looking for chances to give whether it be sharing content, working on open source projects, etc.</p><p>I&#8217;d also add that you don&#8217;t need to find large projects first. <strong>There are plenty of projects out there where people need help automating an Excel report or some other task that you might think is small but you&#8217;ll learn a lot from (I did plenty of those projects)</strong>.</p><div><hr></div><blockquote><p><em>What are the two most impactful actions data professionals can take today to start building their personal brand, even if they&#8217;re currently employed full-time?</em></p></blockquote><p><strong>We are all building our brand everyday</strong>. That doesn&#8217;t have to mean posting on LinkedIn, YouTube or Twitter.</p><p>So I&#8217;d say first, <strong>build a reputation at your job as the person that gets things done well</strong>. Be willing to take on hard problems. That&#8217;s how I started consulting as well, at a job a director who was a consultant and turning around a team learned that I was technical through the grape vine and he reached out asking if I wanted to help on a project.</p><p><strong>Second, if you do want to do content, create content that you wished you&#8217;d had when you started</strong>.</p><div><hr></div><blockquote><p><em>How important are communication skills versus technical skills for data professionals today, and what are the three most impactful lessons you&#8217;ve learned?</em></p></blockquote><p>Learning how to communicate seems to be a forever lesson for me. I am always speaking with people who are better and conveying ideas, getting buy-in, teaching and other skills that require different forms of communication.</p><p>Technical skills are always important. I really enjoy <a href="https://www.alexewerlof.com/">Alex Ewerl&#246;f</a>&#8217;s diagram of skills for making sure that&#8217;s not skipped. In terms of lessons:</p><ol><li><p><strong>Think about who you are communicating and tailor the message for them</strong> - It&#8217;s temping to get frustrated when you explain something you think should be simple to understand but the other party doesn&#8217;t seem to get it. I view this as my failure to understand my audience instead of their failure to understand.</p></li><li><p><strong>Images work</strong> - Even an image that isn&#8217;t perfect is more likely to keep your reader engaged. It also makes it far easier to explain concepts like your internal network map of your various servers so that new employees can quickly get up to speed or if you&#8217;re trying to get buy-in for a dashboard having a mock-up makes the end state all the more real. Don&#8217;t just write when you can draw or diagram.</p></li><li><p><strong>Cut out fluff</strong> - I tend to lean on the fluffy side of writing. I ramble., sometimes add sections  purely for self indulgence. But when I reread it, I realize that what I&#8217;ve written adds very little to the overall piece. So cut it out.</p></li></ol><div><hr></div><blockquote><p><em>What&#8217;s your vision for the future of independent data professionals, and what emerging opportunities should they be positioning themselves for?</em></p></blockquote><p>I think data problems will continue to grow for a few reasons.</p><p>I believe businesses will continue to demand more and more from their data.</p><p>For some businesses that will mean more granular or complex data like images and unstructured data.</p><p>For others it&#8217;ll be integrating data sets that have never been connected.</p><p>But still for others it&#8217;ll just be answering key questions about the business. <strong>I think many people would be surprised how many businesses and organizations are early in their data journey or perhaps needing to revamp it</strong>. I like to say that many companies are in different data decades. So there will continue to be plenty of work for the next few years.</p><div><hr></div><blockquote><p><em>What&#8217;s one message you&#8217;d like to share with the Data Engineer Things community?</em></p></blockquote><p><strong>You don&#8217;t have to learn or be everything at once. Wherever your journey is now, enjoy it</strong>. You never know when it&#8217;ll shift. I didn&#8217;t know that the last day I was going to enter Facebooks offices was in March 2020. I kept assuming I&#8217;d be able to go back. Then it was gone.</p><p>And one day I am sure I&#8217;ll have my last consulting client.</p><p>I&#8217;ll put out my last YouTube video.</p><p>So enjoy being in whatever stage you&#8217;re at.</p><p>If you&#8217;re learning, learn! Dive deep, don&#8217;t worry about what other people are doing.</p><p>If you&#8217;re executing, execute to the best of your ability.</p><p>If you&#8217;re raising a family, do that. <strong>Be in that moment, because it&#8217;ll end and you&#8217;ll miss it</strong>.</p><div><hr></div><h3>Connect with Ben</h3><ul><li><p><a href="https://www.linkedin.com/in/benjaminrogojan/">LinkedIn Ben</a></p></li><li><p><a href="https://www.linkedin.com/company/seattle-data-guy">LinkedIn Seattle Data Guy</a></p></li><li><p><a href="https://seattledataguy.substack.com/">Substack</a></p></li><li><p><a href="https://www.youtube.com/c/SeattleDataGuy">YouTube</a></p></li></ul><div><hr></div><h3>Community poll</h3><div class="poll-embed" data-attrs="{&quot;id&quot;:418846}" data-component-name="PollToDOM"></div><div class="pullquote"><p><em>&#127876;</em></p><p>The Data Engineer Things team wishes you <strong>Happy Holidays</strong> and a <strong>Happy New Year</strong>! We look forward to giving back to this community with even more deep-dive interviews, news, and resources in the coming year.</p></div><h3>&#8505;&#65039; About Data Engineer Things</h3><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item><item><title><![CDATA[Data Engineer Things Newsletter #26 (Dec 2025)]]></title><description><![CDATA[Thinking like a Data engineer, Real-time distributed graph, Secret behind super fast databases, Multimodal data workloads, and more.]]></description><link>https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-26</link><guid isPermaLink="false">https://dataengineerthings.substack.com/p/data-engineer-things-newsletter-26</guid><dc:creator><![CDATA[Data Engineer Things]]></dc:creator><pubDate>Thu, 04 Dec 2025 16:02:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ZuUR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.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_!ZuUR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZuUR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!ZuUR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!ZuUR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!ZuUR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZuUR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.png" width="1456" height="1048" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1048,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:299894,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/178289327?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZuUR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.png 424w, https://substackcdn.com/image/fetch/$s_!ZuUR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.png 848w, https://substackcdn.com/image/fetch/$s_!ZuUR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!ZuUR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db62b89-408c-43ff-8872-b1d431a21e1d_1456x1048.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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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></figure></div><p>Hi Everyone,</p><p>Welcome to the final edition of the 2025 newsletter, a year that pushed data engineering through one of its most transformative leaps. From the rise of agentic data engineering, and multimodal distributed engines, to real-time graph architectures reshaping event processing at massive scale, one thing became clear: data engineering is evolving faster than ever, fueled by the breakneck pace of AI. </p><p>Amid all this change, one constant stood out: data engineers remain vital for organizations. They build the reliable, scalable foundations that data systems depend on, ensuring data is clean, governed, and available in real time while optimizing cost and performance as workloads grow. </p><p>Today, data engineers sit at the very center of AI readiness, designing data layers that support multimodal workloads, enforcing data contracts to keep teams aligned, and building real-time infrastructure that powers everything from fraud detection to personalized experiences. </p><p>We close the year with a powerful reminder: as our systems scale, so must our influence. Becoming a force multiplier is no longer optional for data engineers; it&#8217;s essential for driving lasting impact. 2026 will be an even more exciting and challenging year for data engineering.</p><p>Thank you for being part of this journey. </p><p>- Ananda</p><div><hr></div><h3><strong>&#128218;</strong> Data Pulse</h3><h4><strong><a href="https://www.dataengineeringweekly.com/p/thinking-like-a-data-engineer">Thinking Like a Data Engineer</a></strong></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Engineer<br>&#129504; <strong>Level</strong>: Beginner</p></blockquote><p>Summary: Ananth Packkildurai&#8217;s article reminds us that becoming a data engineer isn&#8217;t really about mastering technology and tools; it is about systems thinking. With the help of a few mentors, he realized that curiosity, the ability to model the world around you, the willingness to iterate, and the confidence to trust yourself matter far more than any framework or technology.</p><p>&#128161; Why is this relevant for DEs?<br>This article is valuable for data engineers because it reframes the discipline beyond tools, cloud platforms, or pipelines, and focuses on the thinking patterns that truly drive long-term success. In an industry where tools and frameworks change every year, curiosity, systems thinking, iterative design, and self-belief are timeless skills that help engineers navigate complexity and uncertainty. For anyone entering or growing in the data engineering field, these lessons offer a grounding perspective on what actually makes a data engineer effective, resilient, and innovative.</p><h4><a href="https://www.databricks.com/blog/introducing-python-user-defined-table-functions-udtfs-unity-catalog">Python User-Defined Table Functions (UDTFs) in Unity Catalog</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Engineering<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p><strong>Summary: </strong>Databricks introduces user-defined table functions (UDTFs) in Unity Catalog for PySpark. This feature allows users to write stateful, table-generating logic in Python and register it as a governed object in Unity Catalog (UC). Unlike a scalar UDF (which returns one value per row), a UDTF (User-Defined <strong>Table</strong> Function) returns zero, one, or many rows for each input row, making it powerful for exploding data or complex transformations. You define it as a Python class with an <code>eval</code> method and call it directly from SQL using the <code>TABLE()</code> keyword. UDTFs are useful for complex tasks like ML inference or pattern detection, but are generally not useful for simple, one-to-one transformations best handled by built-in Spark functions.</p><p>&#128161; <strong>Why is this relevant for DEs</strong>?<br>With this new UDTFs, Data Engineers can now implement complex Python logic once, register it centrally under Unity Catalog&#8217;s security model, and instantly make it available for use across all workspaces, SQL Endpoints, and pipelines. </p><p>Furthermore, it provides automated lineage capture, reduces code duplication, and enables heavy setup logic (like loading a model) to run only once per partition via the Python class structure, significantly boosting performance for stateful processing.</p><h4><a href="https://netflixtechblog.com/how-and-why-netflix-built-a-real-time-distributed-graph-part-1-ingesting-and-processing-data-80113e124acc">Netflix: Real-Time Distributed Graph (Data Ingestion and Processing)</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Data Architecture<br>&#129504; <strong>Level</strong>: Advanced</p></blockquote><p>Netflix has evolved from pure video streaming into a multi-vertical platform offering ads, live events, and mobile games, which requires connecting member behavior across many devices and services. Their microservices architecture created siloed data, making it challenging to understand cross-app interactions. To solve this, Netflix built Real-Time Distributed Graphs (RDG) that link events such as watching, logging in, or playing games into a unified, relationship-driven graph. Events flow from devices &#8594; API Gateway &#8594; Kafka &#8594; Apache Flink, where they are filtered, enriched, deduplicated, and transformed into graph nodes and edges before being stored through their Data Mesh at &gt;5 million records per second. Distributed Flink jobs (one per Kafka topic) allow scalable, low-latency processing. The RDG stores a property-graph model of nodes (members, titles, devices) and edges (watching, logging in, playing).</p><p>&#128161; <strong>Why is this relevant for DEs</strong>?<br>This system illustrates the real-world challenges DEs face when dealing with large-scale, cross-device behavioral data. Netflix&#8217;s RDG shows how traditional warehouses or microservice-siloed datasets fail for real-time identity stitching, behavioral tracking, and relationship-centric analytics. The architecture highlights core DE competencies: event-driven design with Kafka, low-latency stream processing with Flink, schema governance with Avro + registry, backfill strategies with Iceberg, and graph modeling. For data engineers, the RDG is a model for designing high-throughput, low-latency, scalable systems that unify fragmented data to power personalization, fraud detection, recommendations, and cross-domain insights.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!k-uV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffda349e7-1620-4170-9a92-909b89cd8ef4_1706x910.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!k-uV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffda349e7-1620-4170-9a92-909b89cd8ef4_1706x910.png 424w, https://substackcdn.com/image/fetch/$s_!k-uV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffda349e7-1620-4170-9a92-909b89cd8ef4_1706x910.png 848w, https://substackcdn.com/image/fetch/$s_!k-uV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffda349e7-1620-4170-9a92-909b89cd8ef4_1706x910.png 1272w, https://substackcdn.com/image/fetch/$s_!k-uV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffda349e7-1620-4170-9a92-909b89cd8ef4_1706x910.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!k-uV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffda349e7-1620-4170-9a92-909b89cd8ef4_1706x910.png" width="1456" height="777" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fda349e7-1620-4170-9a92-909b89cd8ef4_1706x910.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:777,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:356918,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/178289327?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffda349e7-1620-4170-9a92-909b89cd8ef4_1706x910.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!k-uV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffda349e7-1620-4170-9a92-909b89cd8ef4_1706x910.png 424w, https://substackcdn.com/image/fetch/$s_!k-uV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffda349e7-1620-4170-9a92-909b89cd8ef4_1706x910.png 848w, https://substackcdn.com/image/fetch/$s_!k-uV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffda349e7-1620-4170-9a92-909b89cd8ef4_1706x910.png 1272w, https://substackcdn.com/image/fetch/$s_!k-uV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffda349e7-1620-4170-9a92-909b89cd8ef4_1706x910.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://netflixtechblog.com/how-and-why-netflix-built-a-real-time-distributed-graph-part-1-ingesting-and-processing-data-80113e124acc">source</a></figcaption></figure></div><div class="captioned-image-container"><figure><div class="image-link image2" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1BEZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa35de7a7-53ba-4d72-98e4-6bab3b956cf1_708x112.png 424w, https://substackcdn.com/image/fetch/$s_!1BEZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa35de7a7-53ba-4d72-98e4-6bab3b956cf1_708x112.png 848w, https://substackcdn.com/image/fetch/$s_!1BEZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa35de7a7-53ba-4d72-98e4-6bab3b956cf1_708x112.png 1272w, https://substackcdn.com/image/fetch/$s_!1BEZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa35de7a7-53ba-4d72-98e4-6bab3b956cf1_708x112.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1BEZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa35de7a7-53ba-4d72-98e4-6bab3b956cf1_708x112.png" width="708" height="112" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a35de7a7-53ba-4d72-98e4-6bab3b956cf1_708x112.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:112,&quot;width&quot;:708,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:33106,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/178289327?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa35de7a7-53ba-4d72-98e4-6bab3b956cf1_708x112.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1BEZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa35de7a7-53ba-4d72-98e4-6bab3b956cf1_708x112.png 424w, https://substackcdn.com/image/fetch/$s_!1BEZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa35de7a7-53ba-4d72-98e4-6bab3b956cf1_708x112.png 848w, https://substackcdn.com/image/fetch/$s_!1BEZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa35de7a7-53ba-4d72-98e4-6bab3b956cf1_708x112.png 1272w, https://substackcdn.com/image/fetch/$s_!1BEZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa35de7a7-53ba-4d72-98e4-6bab3b956cf1_708x112.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></div><figcaption class="image-caption"><a href="https://netflixtechblog.com/how-and-why-netflix-built-a-real-time-distributed-graph-part-1-ingesting-and-processing-data-80113e124acc">source</a></figcaption></figure></div><h4><a href="https://leaddev.com/leadership/become-better-force-multiplier-4-steps">Become a better force multiplier in 4 steps</a></h4><blockquote><p><strong>&#128214; Topic</strong>: Career Development<br>&#129504; <strong>Level</strong>: Intermediate</p></blockquote><p>Force multiplication means creating a large, sustained impact without being directly involved in every task. Individual Contributors (ICs) can achieve this by sharing knowledge instead of repeating answers, delegating with guidance rather than control, removing friction points that slow others down, and stepping back to connect broader patterns across teams. At its heart, force multiplication is about shifting from doing everything yourself to helping others move faster and grow. It&#8217;s the impact you create when you document what you know, coach teammates, remove friction, and help everyone stay aligned. In the end, it&#8217;s not just about taking on more work; it&#8217;s about empowering people so things keep moving forward even when you&#8217;re not in the room.</p><p>&#128161; <strong>Why is this relevant for DEs</strong>?<br>For data engineers, force multiplication is essential because modern data systems scale far beyond what any single engineer can build or maintain alone. High-impact DEs create durable value by documenting pipelines and playbooks, mentoring teammates on standards, designing reusable data frameworks, improving infrastructure bottlenecks, and aligning cross-functional teams around unified data models or platform capabilities. Whether you&#8217;re building ingestion frameworks, managing governance, introducing orchestration standards, or guiding architectural decisions, your ability to enable ML engineers, software teams, and fellow DEs, multiplies organizational velocity. Force multiplication turns a DE from a &#8220;pipeline builder&#8221; into a strategic technical leader whose influence shapes reliability, scalability, and long-term data culture.</p><div><hr></div><h3>&#127908; Online Summit: What&#8217;s Ahead in 2026 for Data &amp; Analytics</h3><div class="captioned-image-container"><figure><div class="image-link image2" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mGFI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3197ddb1-48d9-4408-872a-fa200721bb1d_554x242.png 424w, https://substackcdn.com/image/fetch/$s_!mGFI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3197ddb1-48d9-4408-872a-fa200721bb1d_554x242.png 848w, https://substackcdn.com/image/fetch/$s_!mGFI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3197ddb1-48d9-4408-872a-fa200721bb1d_554x242.png 1272w, https://substackcdn.com/image/fetch/$s_!mGFI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3197ddb1-48d9-4408-872a-fa200721bb1d_554x242.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mGFI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3197ddb1-48d9-4408-872a-fa200721bb1d_554x242.png" width="416" height="181.71841155234657" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3197ddb1-48d9-4408-872a-fa200721bb1d_554x242.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:242,&quot;width&quot;:554,&quot;resizeWidth&quot;:416,&quot;bytes&quot;:75371,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/178289327?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2410a739-6f71-4957-812c-dab99ceed59e_627x258.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mGFI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3197ddb1-48d9-4408-872a-fa200721bb1d_554x242.png 424w, https://substackcdn.com/image/fetch/$s_!mGFI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3197ddb1-48d9-4408-872a-fa200721bb1d_554x242.png 848w, https://substackcdn.com/image/fetch/$s_!mGFI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3197ddb1-48d9-4408-872a-fa200721bb1d_554x242.png 1272w, https://substackcdn.com/image/fetch/$s_!mGFI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3197ddb1-48d9-4408-872a-fa200721bb1d_554x242.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></div></figure></div><p>The summit focuses on preparing organizations for next-generation trends in data, analytics, and AI by showcasing evolving technologies, modern architectural best practices, and emerging AI/ML trends.</p><ul><li><p>&#8220;Streaming Intelligence: Unlocking AI&#8217;s Potential with Real-Time Context&#8221; by Jake Bengtson, VP of AI, Striim.</p></li><li><p>&#8220;Putting GenAI to Work with Business Data: Driving Value and Managing Risk&#8221; by Kristy Hollingshead, Associate Director of Data Science, Further.</p></li></ul><p>&#128073;&#127996; Sign up for the online summit <a href="https://tdwi.org/events/virtual/dec/whats-ahead-for-data-and-analytics-in-2026/home.aspx#nav-agenda">HERE</a> (free registration).</p><div><hr></div><h3>&#128278; Featured Read</h3><h4><strong>SIMD: The real superpower behind super fast databases</strong></h4><p><em>Author: <a href="https://medium.com/@shubham-tomar">Shubham Tomar</a></em></p><p>Modern analytical databases like ClickHouse, DuckDB, BigQuery, and Redshift feel incredibly fast because they&#8217;re smart at every step, how they store data, how they fetch it, and especially how they process it. Things like columnar storage, compression, and pruning help reduce the amount of data they touch, but the real boost comes from what happens inside the CPU when it starts crunching the numbers. This is where <a href="https://celerdata.com/glossary/single-instruction-multiple-data-simd">SIMD</a> (Single Instruction, Multiple Data) becomes the hidden superpower, instead of performing operations one value at a time, SIMD allows CPUs to process multiple values simultaneously using wide vector registers (SSE, AVX, AVX-512). Because registers operate at near-zero latency compared to RAM, vectorized operations massively boost throughput for large-scale analytical workloads.</p><p>These databases utilize SIMD using vectorized execution engines, where operations are performed on batches of values rather than one row at a time. Early systems like MonetDB/X100 introduced this idea, and modern engines such as DuckDB, ClickHouse, and other columnar databases have fully embraced it. By running thousands of values through SIMD in a single instruction, these systems make far better use of the CPU&#8217;s cache, avoid unnecessary branching, and often achieve speedups of 10x or more. </p><p>For data engineers, this means queries return faster without endless tuning, pipelines scale smoothly as data grows, and compute costs stay under control because the engine does far more work per CPU cycle. Understanding how SIMD and <a href="https://www.dremio.com/wiki/vectorized-query-execution/">vectorized execution</a> work helps data engineers make more intelligent choices when selecting analytical databases during the design phase. When you know which engines fully utilize SIMD under the hood, you can pick systems that deliver faster queries, lower compute costs, and better scalability right from day one instead of discovering performance issues later and trying to fix them with tuning, caching, or hardware upgrades.</p><p><strong>Key Features and Learnings</strong></p><ul><li><p><strong>SIMD enables true parallelism:</strong> one CPU instruction can operate on multiple values at once.</p></li><li><p><strong>CPU Registers are the real performance hotspot:</strong> operations on registers take 1 cycle vs. 100&#8211;200 cycles for RAM access.</p></li><li><p><strong>Massive speedups for scans &amp; aggregates:</strong> SUM, COUNT, and predicates run across entire vectors in one instruction.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4ajK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F853e94ce-6181-400c-a6fc-6b8b71b4fbcf_759x354.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4ajK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F853e94ce-6181-400c-a6fc-6b8b71b4fbcf_759x354.png 424w, https://substackcdn.com/image/fetch/$s_!4ajK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F853e94ce-6181-400c-a6fc-6b8b71b4fbcf_759x354.png 848w, https://substackcdn.com/image/fetch/$s_!4ajK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F853e94ce-6181-400c-a6fc-6b8b71b4fbcf_759x354.png 1272w, https://substackcdn.com/image/fetch/$s_!4ajK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F853e94ce-6181-400c-a6fc-6b8b71b4fbcf_759x354.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4ajK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F853e94ce-6181-400c-a6fc-6b8b71b4fbcf_759x354.png" width="759" height="354" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/853e94ce-6181-400c-a6fc-6b8b71b4fbcf_759x354.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:354,&quot;width&quot;:759,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:141592,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/178289327?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F853e94ce-6181-400c-a6fc-6b8b71b4fbcf_759x354.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!4ajK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F853e94ce-6181-400c-a6fc-6b8b71b4fbcf_759x354.png 424w, https://substackcdn.com/image/fetch/$s_!4ajK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F853e94ce-6181-400c-a6fc-6b8b71b4fbcf_759x354.png 848w, https://substackcdn.com/image/fetch/$s_!4ajK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F853e94ce-6181-400c-a6fc-6b8b71b4fbcf_759x354.png 1272w, https://substackcdn.com/image/fetch/$s_!4ajK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F853e94ce-6181-400c-a6fc-6b8b71b4fbcf_759x354.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://blog.dataengineerthings.org/simd-the-real-superpower-behind-super-fast-databases-104ce03dfa20">source</a></figcaption></figure></div><p>&#128073;&#127996; Read the full article <strong><a href="https://blog.dataengineerthings.org/simd-the-real-superpower-behind-super-fast-databases-104ce03dfa20">HERE</a></strong>.</p><div><hr></div><h3><strong>&#128142; Open Source Gems</strong></h3><p><strong><a href="https://www.daft.ai/blog/introducing-flotilla-simplifying-multimodal-data-processing-at-scale">Flotilla - Distributed engine - Multimodal data workloads</a></strong><br>Flotilla is <a href="https://docs.daft.ai/en/stable/architecture/">Daft&#8217;s</a> next-generation distributed execution engine built for multimodal data workloads that involve massive PDFs, images, audio, video, embeddings, and GPU-heavy operations. Flotilla introduces a node-level, streaming, concurrent processing model powered by its Swordfish engine. Benchmarks show Flotilla achieving 2&#8211;7&#215; faster performance than <a href="https://docs.ray.io/en/latest/data/data.html">Ray Data</a> and 4&#8211;18&#215; faster than Spark, all while using smaller, cheaper clusters and avoiding OOM issues through bounded-memory streaming execution.</p><p><strong>Why is this useful for data engineers?<br></strong>Flotilla simplifies the challenge of building scalable multimodal pipelines that previously required complex configuration tuning, cluster resizing, and careful partition management. You can now write workflows such as PDF ingestion, image processing, video object detection, transcription, and embedding declaratively using DataFrame APIs, and Flotilla executes them efficiently across CPUs and GPUs in a distributed manner. Flotilla is faster, more reliable, and far easier to operate than traditional distributed engines, unlocking productivity gains for data engineers working on AI, LLM retrieval systems, and unstructured-data-heavy applications.</p><p>&#129489;&#8205;&#128187; Daft on <a href="https://github.com/Eventual-Inc/Daft">GitHub</a>. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!S_37!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734d9d0-5f0f-4d12-b478-67c6290d1aad_619x446.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!S_37!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734d9d0-5f0f-4d12-b478-67c6290d1aad_619x446.png 424w, https://substackcdn.com/image/fetch/$s_!S_37!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734d9d0-5f0f-4d12-b478-67c6290d1aad_619x446.png 848w, https://substackcdn.com/image/fetch/$s_!S_37!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734d9d0-5f0f-4d12-b478-67c6290d1aad_619x446.png 1272w, https://substackcdn.com/image/fetch/$s_!S_37!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734d9d0-5f0f-4d12-b478-67c6290d1aad_619x446.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!S_37!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734d9d0-5f0f-4d12-b478-67c6290d1aad_619x446.png" width="728" height="524.5363489499192" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a734d9d0-5f0f-4d12-b478-67c6290d1aad_619x446.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:446,&quot;width&quot;:619,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:26385,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/178289327?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F995e88ff-0273-4821-99b5-0e86dfd5d79c_619x561.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!S_37!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734d9d0-5f0f-4d12-b478-67c6290d1aad_619x446.png 424w, https://substackcdn.com/image/fetch/$s_!S_37!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734d9d0-5f0f-4d12-b478-67c6290d1aad_619x446.png 848w, https://substackcdn.com/image/fetch/$s_!S_37!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734d9d0-5f0f-4d12-b478-67c6290d1aad_619x446.png 1272w, https://substackcdn.com/image/fetch/$s_!S_37!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734d9d0-5f0f-4d12-b478-67c6290d1aad_619x446.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"></figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2Gmy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cddd4d3-17bc-49a3-b922-88b2bdc732a1_770x370.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2Gmy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cddd4d3-17bc-49a3-b922-88b2bdc732a1_770x370.png 424w, https://substackcdn.com/image/fetch/$s_!2Gmy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cddd4d3-17bc-49a3-b922-88b2bdc732a1_770x370.png 848w, https://substackcdn.com/image/fetch/$s_!2Gmy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cddd4d3-17bc-49a3-b922-88b2bdc732a1_770x370.png 1272w, https://substackcdn.com/image/fetch/$s_!2Gmy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cddd4d3-17bc-49a3-b922-88b2bdc732a1_770x370.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2Gmy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cddd4d3-17bc-49a3-b922-88b2bdc732a1_770x370.png" width="728" height="349.8181818181818" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7cddd4d3-17bc-49a3-b922-88b2bdc732a1_770x370.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:370,&quot;width&quot;:770,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:61405,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataengineerthings.substack.com/i/178289327?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cddd4d3-17bc-49a3-b922-88b2bdc732a1_770x370.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2Gmy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cddd4d3-17bc-49a3-b922-88b2bdc732a1_770x370.png 424w, https://substackcdn.com/image/fetch/$s_!2Gmy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cddd4d3-17bc-49a3-b922-88b2bdc732a1_770x370.png 848w, https://substackcdn.com/image/fetch/$s_!2Gmy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cddd4d3-17bc-49a3-b922-88b2bdc732a1_770x370.png 1272w, https://substackcdn.com/image/fetch/$s_!2Gmy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cddd4d3-17bc-49a3-b922-88b2bdc732a1_770x370.png 1456w" sizes="100vw" loading="lazy"></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 buttonBase-GK1x3M"><svg aria-hidden="true" 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" class="icon-noB79L"><g><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 buttonBase-GK1x3M"><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 icon-noB79L"><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"><a href="https://www.daft.ai/blog/benchmarks-for-multimodal-ai-workloads">source</a></figcaption></figure></div><h3><strong>&#128161; DE Tip of the Month</strong></h3><p><strong><a href="https://www.gability.com/en/courses/data-modeling/02-dimension-types/08-fast-changing-dimension/#:~:text=Fast%20Changing%20Dimension%20Handling%20*%20Identify%20the,dimension%20with%20the%20main%20dimension%20using%20mini%2Ddimension.">Handling rapidly changing dimensions in the data warehouse:</a></strong></p><p>Fast-changing dimensions should not be handled with a single SCD Type 2 approach, as highly volatile attributes can cause dimension bloat and slow performance. The best practice is to split attributes by their nature, keep slowly changing attributes in the main dimension, track the history with Type 2, and move frequently changing attributes into a new mini-dimension.</p><ul><li><p>Identify fast vs. slowly changing attributes: Attributes that seldom change should remain in the main dimension table.  </p></li><li><p><a href="https://www.kimballgroup.com/data-warehouse-business-intelligence-resources/kimball-techniques/dimensional-modeling-techniques/junk-dimension/">Create a junk dimension</a>: For the fast-changing attributes, create a junk dimension table </p></li><li><p><a href="https://www.kimballgroup.com/data-warehouse-business-intelligence-resources/kimball-techniques/dimensional-modeling-techniques/type-4-mini-dimension/">Create a mini-dimension table</a>: Bridge table to link the main dimension and the junk dimension</p></li><li><p>Update fact tables: Update the fact tables to include both the primary dimension key and the mini-dimension key</p></li></ul><div><hr></div><p>Let us know what you like the most in the newsletter. See you next time!</p><div class="poll-embed" data-attrs="{&quot;id&quot;:412154}" data-component-name="PollToDOM"></div><p>Cheers,</p><p>Ananda, Chozhan, Srivignesh</p><div><hr></div><h4>&#8505;&#65039; About Data Engineer Things</h4><p><a href="https://www.dataengineerthings.org/">Data Engineer Things</a> (DET) is a global community built by data engineers for data engineers. Subscribe to the <a href="https://dataengineerthings.substack.com/">newsletter</a> and follow us on <a href="https://www.linkedin.com/company/data-engineer-things/posts/?feedView=all">LinkedIn</a> to gain access to exclusive learning resources and networking opportunities, including articles, webinars, meetups, conferences, mentorship, and much more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataengineerthings.substack.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">Thanks for reading Data Engineer Things! Subscribe for free to receive new posts and support my work.</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>]]></content:encoded></item></channel></rss>