<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[The Pragmatic Engineer]]></title><description><![CDATA[Big Tech and startups, from the inside. Highly relevant for software engineers, AI engineers and engineering leaders, useful for those working in tech.]]></description><link>https://newsletter.pragmaticengineer.com</link><image><url>https://substackcdn.com/image/fetch/$s_!eod5!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27076b05-e3f4-4d05-9621-3da4f7f189cd_300x300.png</url><title>The Pragmatic Engineer</title><link>https://newsletter.pragmaticengineer.com</link></image><generator>Substack</generator><lastBuildDate>Sun, 05 Jul 2026 09:37:22 GMT</lastBuildDate><atom:link href="https://newsletter.pragmaticengineer.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Gergely Orosz]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[pragmaticengineer@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[pragmaticengineer@substack.com]]></itunes:email><itunes:name><![CDATA[Gergely Orosz]]></itunes:name></itunes:owner><itunes:author><![CDATA[Gergely Orosz]]></itunes:author><googleplay:owner><![CDATA[pragmaticengineer@substack.com]]></googleplay:owner><googleplay:email><![CDATA[pragmaticengineer@substack.com]]></googleplay:email><googleplay:author><![CDATA[Gergely Orosz]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[How Kent Beck shapes the software engineering industry]]></title><description><![CDATA[Kent Beck reflects on Agile, TDD, and why building trust&#8212;not just generating code&#8212;will define the future of software engineering in the AI era.]]></description><link>https://newsletter.pragmaticengineer.com/p/how-kent-beck-shapes-the-software</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/how-kent-beck-shapes-the-software</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Wed, 01 Jul 2026 16:57:46 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/204178365/e73bf6c8428193078b8b6c4aaedcbba6.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<h3>Stream the latest episode</h3><p><strong>Listen and watch now on <a href="https://youtu.be/ddHQQtjIOpw">YouTube</a>, <a href="https://open.spotify.com/episode/3M6hgR5zBT4699tAceSHaG">Spotify</a></strong>, <strong>and <a href="https://podcasts.apple.com/us/podcast/how-kent-beck-shapes-the-software-engineering-industry/id1769051199?i=1000775036869">Apple</a>.</strong> See the episode transcript at the top of this page, and timestamps for the episode at the bottom.</p><h3><strong>Brought to You by</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YCsL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YCsL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 424w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 848w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1272w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YCsL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png" width="1280" height="80" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:80,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!YCsL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 424w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 848w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1272w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p><strong><span>&#8226; </span><a href="https://antithesis.com/pragmatic"><span>Antithesis</span></a><span>.</span></strong><span> If you&#8217;re using agents to code, the problem isn&#8217;t writing the code but making sure that nothing broke. Antithesis runs your whole system in a hostile environment and identifies hard-to-find bugs before users hit them in production. Teams like Jane Street, Fly.io, and the etcd community use agents safely and ship better code, faster, with Antithesis. </span><a href="https://antithesis.com/pragmatic"><span>Learn more.<br><br></span></a><strong><span>&#8226; </span><a href="https://workos.com/"><span>WorkOS</span></a></strong><span> &#8211; make your app and agents Enterprise Ready, with SSO, SCIM, RBAC, and more. </span><a href="https://workos.com/"><span>Get started.<br></span></a><strong><a href="https://workos.com/"><span><br></span></a><span>&#8226; </span><a href="http://turbopuffer.com/pragmatic"><span>turbopuffer</span></a><span>.</span></strong><span> A vector and full-text search engine built on object storage. It&#8217;s fast, cheap, and extremely scalable. It&#8217;s never been better to try it out: last week, they dropped their base price from $64 per month to $16 per month. </span><a href="http://turbopuffer.com/pragmatic"><span>Give it a spin now</span></a><span>.</span></p><h3><strong>In this episode</strong></h3><p><span>Few have made as big an impact on software engineering as this week&#8217;s guest on the Pragmatic Engineer podcast, Kent Beck. He created Extreme Programming, pioneered test-driven development (TDD), co-created JUnit, and is one of the authors of the famous &#8216;Agile Manifesto&#8217;. But these days, he&#8217;s re-examining many ideas for the age of AI, and says we&#8217;re failing to accumulate trust during this new era at the same high rate as new code is being accumulated.</span></p><p><span>Longtime readers will remember how Kent and I bonded over our co-authored article in our&nbsp;</span><a href="https://newsletter.pragmaticengineer.com/p/measuring-developer-productivity">response to McKinsey on measuring engineering productivity</a><span>, and Kent was on the podcast a year ago, talking&nbsp;</span><a href="https://newsletter.pragmaticengineer.com/p/tdd-ai-agents-and-coding-with-kent">about TDD and AI.</a><span> </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_!tWh5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609eb4ad-7a79-4bdd-958b-a7e01d9a062f_2048x1349.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tWh5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609eb4ad-7a79-4bdd-958b-a7e01d9a062f_2048x1349.png 424w, https://substackcdn.com/image/fetch/$s_!tWh5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609eb4ad-7a79-4bdd-958b-a7e01d9a062f_2048x1349.png 848w, https://substackcdn.com/image/fetch/$s_!tWh5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609eb4ad-7a79-4bdd-958b-a7e01d9a062f_2048x1349.png 1272w, https://substackcdn.com/image/fetch/$s_!tWh5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609eb4ad-7a79-4bdd-958b-a7e01d9a062f_2048x1349.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tWh5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609eb4ad-7a79-4bdd-958b-a7e01d9a062f_2048x1349.png" width="1456" height="959" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/609eb4ad-7a79-4bdd-958b-a7e01d9a062f_2048x1349.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:959,&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;: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="" srcset="https://substackcdn.com/image/fetch/$s_!tWh5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609eb4ad-7a79-4bdd-958b-a7e01d9a062f_2048x1349.png 424w, https://substackcdn.com/image/fetch/$s_!tWh5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609eb4ad-7a79-4bdd-958b-a7e01d9a062f_2048x1349.png 848w, https://substackcdn.com/image/fetch/$s_!tWh5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609eb4ad-7a79-4bdd-958b-a7e01d9a062f_2048x1349.png 1272w, https://substackcdn.com/image/fetch/$s_!tWh5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F609eb4ad-7a79-4bdd-958b-a7e01d9a062f_2048x1349.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>With Kent Beck, in the studio</em></figcaption></figure></div><p><strong><span>Today&#8217;s episode is the previously untold story of Kent&#8217;s remarkable career and how he became the industry legend he is today. </span></strong><span>We start with Kent&#8217;s journey from discovering Smalltalk in the early days of personal computing, to helping define modern software engineering practices. We explore the origins of TDD, design patterns, Extreme Programming, and Agile &#8211; along with some lessons learned at Apple and Facebook.</span></p><p><span>Kent explains why he believes software engineering is about </span><em><span>far more</span></em><span> than writing code, why no one yet knows exactly how engineers should work alongside AI agents, and how his &#8220;explore, expand, extract&#8221; framework can help engineers navigate major technology shifts.</span></p><h3>Key observations from Kent</h3><div id="youtube2-ddHQQtjIOpw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;ddHQQtjIOpw&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/ddHQQtjIOpw?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><span>Here are 12 rarely-told stories and observations from Kent:</span></p><p><strong><span>1. Coding is only a small part of software engineering &#8211; the rest can&#8217;t be automated.</span></strong><span> Kent rebuts the claim that coding &#8211; and eventually the whole software engineering craft &#8211; will vanish. He believes coding is only part of what we do, and a small part of it, too. Through your work, you also build confidence, make connections with other people, and develop your personal understanding of the domain. This will remain important, even if we develop our skills in other areas than coding.</span></p><p><strong><span>2. Lesser-known story: fired by Apple. </span></strong><span>Kent joined the tech giant in 1987, drawn in by Smalltalk, whose language was taking off at the time. Xerox had handed the language to a few companies to see who could run with it, and Apple was one. But Apple&#8217;s customers wanted C and Pascal compilers instead, so the Smalltalk project went nowhere. Kent joined a team building a programming language for kids, but says he was eventually fired because he was in &#8220;punk mode&#8221; and wanted to do things his own way, instead of being a team player.</span></p><p><strong><span>3. Kent used to keep a thesaurus close at hand. </span></strong><span>When working at Tektronix in the late 1980s with </span><a href="https://en.wikipedia.org/wiki/Ward_Cunningham"><span>Ward Cunningham</span></a><span> (the creator of the first wiki, and a pioneer in design patterns), they built HotDraw, a graphical editor with a boxes-and-arrows model. For naming core abstractions, Beck chose &#8220;drawing object,&#8221; &#8220;drawing handle,&#8221; etc. But Ward cared intensely about nomenclature and hunted for better vocabulary, so they kept a physical thesaurus which was well thumbed. Beck recalls they became pretty obsessed about the names of things.</span></p><p><strong><span>4. TDD wasn&#8217;t &#8216;invented&#8217; so much as &#8216;rediscovered&#8217; by Kent.</span></strong><span> As a kid, Kent read one of his father&#8217;s programming books from the tape-to-tape era, when an input tape like time cards was fed through a payroll program to produce an output tape, such as one with checks. The book&#8217;s advice was to take a real input tape and manually type the expected output tape before writing the program. He read this, didn&#8217;t understand it, and forgot about it.</span></p><p><span>Years later, Kent built SUnit, a small testing framework, and randomly remembered the input-tape trick, so mapped it onto SUnit. If he followed the pattern, he&#8217;d write the test before the code. He laughed out loud at this because it seemed like such a stupid idea: why write a test that&#8217;s guaranteed to fail, when the classes and methods aren&#8217;t even defined yet? But when he did, he found his anxiety about programming vanished. This is when he became a TDD convert.</span></p><p><strong><span>5. Kent invented Extreme Programming (XP) while on the Chrysler payroll project. </span></strong><span>Kent threw away a codebase that didn&#8217;t work and restarted the project with a new methodology. He paired with others, and used his own ideas for testing. Later, he coined the new  methodology&#8217;s name by deliberately picking one that he knew would be unpopular with the tech establishment of the day: &#8220;extreme programming&#8221; was born.</span></p><p><strong><span>6. The Agile Manifesto came together in a messy way. </span></strong><span>In 2001, a loose group of folks who rejected waterfall development gathered at Snowbird, Utah, to rethink programming. Kent recalls this summit proceeded badly as everyone pushed contradictory ideas. During a break, Martin Fowler and Jim Highsmith stayed behind, and when the others returned, they found the values written on the whiteboard. Kent&#8217;s contribution was the word &#8220;daily&#8221;: &#8220;Business people and developers must work together daily throughout the project.&#8221;</span></p><p><strong><span>7. Calling it &#8220;agile&#8221; was an error. </span></strong><span>Kent objected to the word &#8220;agile&#8221; at the time, and still does today, since nobody claims they prefer &#8220;rigid&#8221; development, and everyone says they&#8217;re &#8220;agile&#8221;, even when they&#8217;re not. He would&#8217;ve preferred a less spacious term, like with &#8220;extreme programming&#8221;: after all, it&#8217;s hard to call yourself an &#8220;extreme programmer&#8221; without actually following that methodology.</span></p><p><strong><span>8. The Dotcom Bust hit very hard. </span></strong><span>The day before the 9/11 terror attack in 2001, Kent had eight months of consulting work booked at top rates and was finishing work on a house in rural Oregon. The next day, everything was canceled, just as big bills fell due. He burned out into depression and was left unable to program for years, in what was a &#8220;lost decade.&#8221;</span></p><p><strong><span>9. At 50, Kent joined Facebook and realized nobody cared about testing or TDD. </span></strong><span>At Facebook, Kent found a company that barely did any form of unit testing, while running a massive, stable, and fast-growing site. He signed up to teach a TDD class at a hackathon &#8212; he wrote the book, after all! The classes either side of his in the schedule both filled up, but the TDD class got zero signups, not even a pity one. He made the decision to forget everything he knew and to relearn software engineering as it was at Facebook. In the end, he stayed seven years.</span></p><p><strong><span>10. Building software products has three phases: explore, expand, extract</span></strong><span>. This is Kent&#8217;s &#8220;3X&#8221; model. &#8216;Explore&#8217; means trying many cheap uncorrelated experiments, &#8216;expand&#8217; involves focusing on the one thing that&#8217;s working and overcoming obstacle after obstacle, while &#8216;extract&#8217; is a repeatable playbook and economies of scale. How you code, hire, and organize differs across each phase.</span></p><p><strong><span>11. Kent has always been an anxious programmer.</span></strong><span> He describes himself as chronically anxious because the more complex the code is, the more he knows it could break. This was the fuel behind testing and TDD, which are approaches designed to soothe an anxious mind.</span></p><p><strong><span>12. Kent sees himself as a &#8220;tree shaker, not a jelly maker.&#8221;</span></strong><span> He starts things like patterns, SUnit, JUnit, TDD, XP, 3X, then pushes them until they take off, before moving on to the next thing. It&#8217;s his defining trait, and may explain his enormous output, and also why he abandoned TDD just as it peaked.</span></p><p><strong><span>+1:</span></strong><span> </span><strong><span>The human part is the most important one in software engineering. </span></strong><span>As Kent explained:</span></p><blockquote><p><span>&#8220;This is the biggest cosmic, practical joke ever. As young people, we were promised: &#8220;Okay, here&#8217;s this computer and once you&#8217;ve completely understand this computer, you&#8217;ll be fine. That&#8217;s all you need to do.&#8221;<br><br>So I set out the first part of my career just to become the best programmer that I could be because that&#8217;s what it would take to be successful. And then you realize: sorry, there&#8217;s this whole human side. Your ability to affect change in the world is gated by your ability to communicate with, to soothe, to understand other human beings. And those are exactly the skills that I thought I didn&#8217;t need to learn!<br><br>So I was promised: just understand the computer and you&#8217;ll be successful. And then someone went &#8220;just kidding, understand people!&#8221; And now I was in a position of being ten years behind.&#8221;</span></p></blockquote><h3><strong>The Pragmatic Engineer deepdives relevant for this episode</strong></h3><ul><li><p><a href="https://newsletter.pragmaticengineer.com/p/measuring-developer-productivity"><span>Measuring developer productivity? A response to McKinsey</span></a><span> &#8211; co-written with Kent Beck</span></p></li><li><p><a href="https://newsletter.pragmaticengineer.com/p/tdd-ai-agents-and-coding-with-kent"><span>TDD, AI agents and coding with Kent Beck</span></a></p></li><li><p><a href="https://newsletter.pragmaticengineer.com/p/paying-down-tech-debt"><span>Paying down tech debt</span></a></p></li><li><p><a href="https://newsletter.pragmaticengineer.com/p/the-past-and-future-of-backend-practices"><span>The past and future of modern backend practices</span></a></p></li></ul><h3><strong>Timestamps</strong></h3><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw">00:00</a> Intro</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=227s">03:47</a> Human engineers aren&#8217;t going away</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=480s">08:00</a> Kent&#8217;s path into tech</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=830s">13:50</a> Undergraduate and graduate studies</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=1041s">17:21</a> Kent&#8217;s first programming job</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=1134s">18:54</a> The rise and fall of Smalltalk</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=1624s">27:04</a> Working with Ward Cunningham</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=2256s">37:36</a> Design patterns</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=2645s">44:05</a> Working at Apple</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=3068s">51:08</a> CRC Cards</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=3569s">59:29</a> Testing tools in the language</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=3862s">1:04:22</a> The C3 project with Martin Fowler</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=4194s">1:09:54</a> Extreme Programming</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=4585s">1:16:25</a> Developing TDD</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=5107s">1:25:07</a> Writing the Agile Manifesto</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=5400s">1:30:00</a> Agile&#8217;s impact</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=5560s">1:32:40</a> Agile&#8217;s downside</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=5852s">1:37:32</a> The Dotcom Bust</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=6270s">1:44:30</a> Lessons from working at Facebook</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=7184s">1:59:44</a> Kent&#8217;s &#8216;Good to Great&#8217; program at Facebook</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=7567s">2:06:07</a> Soft skills engineers need to learn</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=7770s">2:09:30</a> AI and the challenges of acceleration</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=8153s">2:15:53</a> Explore, expand, extract</p><p><a href="https://www.youtube.com/watch?v=ddHQQtjIOpw&amp;t=8553s">2:22:33</a> What Kent is excited about</p><h3><strong>References</strong></h3><p><strong><span>Where to find Kent Beck:</span></strong></p><p><span>&#8226; X: </span><a href="https://x.com/kentbeck"><span>https://x.com/kentbeck</span></a></p><p><span>&#8226; LinkedIn: </span><a href="https://www.linkedin.com/in/kentbeck/"><span>https://www.linkedin.com/in/kentbeck</span></a></p><p><span>&#8226; Website: </span><a href="https://kentbeck.com">https://kentbeck.com</a></p><p><span>&#8226; GitHub: </span><a href="https://github.com/kentbeck"><span>https://github.com/kentbeck</span></a></p><p><span>&#8226;  Newsletter: </span></p><div class="embedded-publication-wrap" data-attrs="{&quot;id&quot;:256838,&quot;name&quot;:&quot;Software Design: Tidy First?&quot;,&quot;logo_url&quot;:null,&quot;base_url&quot;:&quot;https://newsletter.kentbeck.com&quot;,&quot;hero_text&quot;:&quot;Software design is an exercise in human relationships. So are all the other techniques we use to develop software. How can we geeks get better at technique as one way of getting better at relationships?&quot;,&quot;author_name&quot;:&quot;Kent Beck&quot;,&quot;show_subscribe&quot;:true,&quot;logo_bg_color&quot;:&quot;#ffffff&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="EmbeddedPublicationToDOMWithSubscribe"><div class="embedded-publication show-subscribe"><a class="embedded-publication-link-part" native="true" href="https://newsletter.kentbeck.com?utm_source=substack&amp;utm_campaign=publication_embed&amp;utm_medium=web"><span class="embedded-publication-name">Software Design: Tidy First?</span><div class="embedded-publication-hero-text">Software design is an exercise in human relationships. So are all the other techniques we use to develop software. How can we geeks get better at technique as one way of getting better at relationships?</div><div class="embedded-publication-author-name">By Kent Beck</div></a><form class="embedded-publication-subscribe" method="GET" action="https://newsletter.kentbeck.com/subscribe?"><input type="hidden" name="source" value="publication-embed"><input type="hidden" name="autoSubmit" value="true"><input type="email" class="email-input" name="email" placeholder="Type your email..."><input type="submit" class="button primary" value="Subscribe"></form></div></div><p><strong>Mentions during the episode:</strong></p><p><span>&#8226; TDD, AI agents and coding with Kent Beck:</span><a href="https://newsletter.pragmaticengineer.com/p/tdd-ai-agents-and-coding-with-kent"><span> https://newsletter.pragmaticengineer.com/p/tdd-ai-agents-and-coding-with-kent</span></a></p><p><span>&#8226; Anthropic CEO Predicts AI Will End Coding and Software Engineering:</span></p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/GergelyOrosz/status/2048454331645481034&quot;,&quot;full_text&quot;:&quot;The only people who believe any of this are non-coders.\n\nI tried to build a game (an area I&#8217;m an n00b in.) The results are amusingly disastrous - I never before coded a decent game.\n\nBut I&#8217;ll crack out backend services w AI rapidly - because I coded dozens of them before&#8230;&quot;,&quot;username&quot;:&quot;GergelyOrosz&quot;,&quot;name&quot;:&quot;Gergely Orosz&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/673095429748350976/ei5eeouV_normal.png&quot;,&quot;date&quot;:&quot;2026-04-26T17:29:05.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{&quot;full_text&quot;:&quot;Anthropic CEO (Dario Amodei):\n\n\&quot;Coding is going away first, then all of software engineering.\&quot;\n\nWhat do you think about this?&quot;,&quot;username&quot;:&quot;aiedge_&quot;,&quot;name&quot;:&quot;AI Edge&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1910271186442846208/vrYKSYRn_normal.jpg&quot;},&quot;reply_count&quot;:345,&quot;retweet_count&quot;:493,&quot;like_count&quot;:6714,&quot;impression_count&quot;:791521,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><span>&#8226; </span><em><span>Extreme Programming Explained: Embrace Change</span></em><span>:</span><a href="https://www.amazon.com/Extreme-Programming-Explained-Embrace-Change/dp/0321278658"><span> https://www.amazon.com/Extreme-Programming-Explained-Embrace-Change/dp/0321278658</span></a></p><p><span>&#8226; </span><em><span>Tidy First?: A Personal Exercise in Empirical Software Design</span></em><span>:</span><a href="https://www.amazon.com/Tidy-First-Personal-Exercise-Empirical/dp/1098151240"><span> https://www.amazon.com/Tidy-First-Personal-Exercise-Empirical/dp/1098151240</span></a></p><p><span>&#8226; </span><em><span>Test Driven Development: By Example</span></em><span>:</span><a href="https://www.amazon.com/Test-Driven-Development-Kent-Beck/dp/0321146530"><span> https://www.amazon.com/Test-Driven-Development-Kent-Beck/dp/0321146530</span></a></p><p><span>&#8226; Tektronics:</span> <a href="https://www.tek.com/">https://www.tek.com/</a></p><p><span>&#8226; Ward Cunningham on LinkedIn:</span><a href="https://www.linkedin.com/in/wardcunningham"><span> https://www.linkedin.com/in/wardcunningham</span></a></p><p><span>&#8226; Design Principles Behind Smalltalk:</span><a href="https://www.cs.virginia.edu/~evans/cs655/readings/smalltalk.html"><span> https://www.cs.virginia.edu/~evans/cs655/readings/smalltalk.html</span></a></p><p><span>&#8226; Kotlin: </span><a href="https://kotlinlang.org">https://kotlinlang.org</a></p><p><span>&#8226; Swift: </span><a href="https://www.swift.org">https://www.swift.org</a></p><p><span>&#8226; Prolog:</span><a href="https://en.wikipedia.org/wiki/Prolog"><span> https://en.wikipedia.org/wiki/Prolog</span></a></p><p><span>&#8226; The Timeless Way of Building:</span><a href="https://www.amazon.com/Timeless-Way-Building-Christopher-Alexander/dp/0195024028"><span> https://www.amazon.com/Timeless-Way-Building-Christopher-Alexander/dp/0195024028</span></a></p><p><span>&#8226; Notes on the Synthesis of Form:</span><a href="https://www.amazon.com/Notes-Synthesis-Form-Harvard-Paperbacks/dp/0674627512"><span> https://www.amazon.com/Notes-Synthesis-Form-Harvard-Paperbacks/dp/0674627512</span></a></p><p><span>&#8226; Larry Tesler:</span><a href="https://en.wikipedia.org/wiki/Larry_Tesler"><span> https://en.wikipedia.org/wiki/Larry_Tesler</span></a></p><p><span>&#8226; PARC:</span><a href="https://en.wikipedia.org/wiki/PARC_(company)"><span> https://en.wikipedia.org/wiki/PARC_(company)</span></a></p><p><span>&#8226; August 1981 issue of Byte featuring Smalltalk:</span><a href="https://vintageapple.org/byte/pdf/198108_Byte_Magazine_Vol_06-08_Smalltalk.pdf"><span> https://vintageapple.org/byte/pdf/198108_Byte_Magazine_Vol_06-08_Smalltalk.pdf</span></a></p><p><span>&#8226; Class-responsibility-collaboration (CRC) cards:</span><a href="https://en.wikipedia.org/wiki/Class-responsibility-collaboration_card"><span> https://en.wikipedia.org/wiki/Class-responsibility-collaboration_card</span></a></p><p><span>&#8226; MasPar:</span><a href="https://en.wikipedia.org/wiki/MasPar"><span> https://en.wikipedia.org/wiki/MasPar</span></a></p><p><span>&#8226; Cray:</span><a href="https://en.wikipedia.org/wiki/Cray"><span> https://en.wikipedia.org/wiki/Cray</span></a></p><p><span>&#8226; JUnit:</span><a href="https://en.wikipedia.org/wiki/JUnit"><span> https://en.wikipedia.org/wiki/JUnit</span></a></p><p><span>&#8226; Erich Gamma:</span><a href="https://en.wikipedia.org/wiki/Erich_Gamma"><span> https://en.wikipedia.org/wiki/Erich_Gamma</span></a></p><p><span>&#8226; OOPSLA:</span><a href="https://en.wikipedia.org/wiki/OOPSLA"><span> https://en.wikipedia.org/wiki/OOPSLA</span></a></p><p><span>&#8226; C3:</span><a href="https://www.martinfowler.com/bliki/C3.html"><span> https://www.martinfowler.com/bliki/C3.html</span></a></p><p><span>&#8226; How AI will change software engineering &#8211; with Martin Fowler:</span><a href="https://newsletter.pragmaticengineer.com/p/martin-fowler"><span> https://newsletter.pragmaticengineer.com/p/martin-fowler</span></a></p><p><span>&#8226; Cycles of disruption in the tech industry: with software pioneers Kent Beck &amp; Martin Fowler:</span><a href="https://newsletter.pragmaticengineer.com/p/cycles-of-disruption-in-the-tech"><span> https://newsletter.pragmaticengineer.com/p/cycles-of-disruption-in-the-tech</span></a></p><p><span>&#8226; The third golden age of software engineering &#8211; thanks to AI, with Grady Booch:</span><a href="https://newsletter.pragmaticengineer.com/p/the-third-golden-age-of-software"><span> https://newsletter.pragmaticengineer.com/p/the-third-golden-age-of-software</span></a></p><p><span>&#8226; Ivar Jacobson&#8217;s website: </span><a href="https://www.ivarjacobson.com">https://www.ivarjacobson.com</a></p><p><span>&#8226; James Rumbaugh:</span><a href="https://en.wikipedia.org/wiki/James_Rumbaugh"><span> https://en.wikipedia.org/wiki/James_Rumbaugh</span></a></p><p><span>&#8226; Ron Jeffries&#8217; website: </span><a href="https://ronjeffries.com">https://ronjeffries.com</a></p><p><span>&#8226; The Agile Manifesto:</span><a href="https://agilealliance.org/agile101/the-agile-manifesto"><span> https://agilealliance.org/agile101/the-agile-manifesto</span></a></p><p><span>&#8226; Jim Highsmith on LinkedIn:</span><a href="https://www.linkedin.com/in/jhighsmith"><span> https://www.linkedin.com/in/jhighsmith</span></a></p><p><span>&#8226; Gusto: </span><a href="https://gusto.com">https://gusto.com</a></p><p>&#8212;</p><p>Production and marketing by <a href="https://penname.co/">Pen Name</a>. </p><p></p>]]></content:encoded></item><item><title><![CDATA[Impressions from visiting OpenAI, Anthropic, & Cursor]]></title><description><![CDATA[A peek into where software engineering is headed from inside the sector&#8217;s leading AI labs. Agents running in the cloud are a major trend, while coding harnesses are spreading beyond the craft]]></description><link>https://newsletter.pragmaticengineer.com/p/impressions-from-visiting-openai</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/impressions-from-visiting-openai</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Tue, 30 Jun 2026 17:21:05 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!JLz_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17f00be6-8fd8-474c-9e1f-9dab109ef86f_2048x1536.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em><span>Scheduling note: this week, I&#8217;m in San Francisco at the </span><a href="https://www.ai.engineer/worldsfair/2026"><span>AI Engineer&#8217;s World Fair</span></a><span>, so there won&#8217;t be an edition of The Pulse on Thursday. However, tomorrow (Wednesday) there will be a special podcast episode &#8211; the lengthiest, most detailed one yet &#8211; with software engineering legend, Kent Beck.</span></em></p><p><span>In recent days, I&#8217;ve visited the offices of OpenAI, Anthropic, and Cursor, in San Francisco. Onsite, I talked with software folks working on the model side to learn more about how their way of building software is changing. This article is based on observations from those visits, including some new developments that I reckon may be adopted industry-wide.</span></p><p><span>We cover:</span></p><ol><li><p><strong><span>Next mega-trend? Agents running in the cloud to go mainstream. </span></strong><span>OpenAI, Anthropic, and Cursor are all-in on cloud agents and expect demand for them to increase massively.</span></p></li><li><p><strong><span>Mass adoption of coding harnesses by non-developers.</span></strong><span> At OpenAI, more than 95% of non-engineers use Codex, not ChatGPT. Is it a sign of things to come across tech?</span></p></li><li><p><strong><span>Will the main task of engineers be to make agents more efficient? </span></strong><span>Ever more engineering work is about building environments for agents to execute more efficiently at Anthropic and Cursor.</span></p></li><li><p><strong><span>Next trend? Companies aggressively optimize spend-per-token. </span></strong><span>AI spending by software engineers is so high that it makes sense for platform teams to slash per-token cost. A case study from Coinbase.</span></p></li></ol><h2><span>1. Next mega-trend? Agents running in the cloud to go mainstream</span></h2><p><span>Last week, Andrej Karpathy employed the phrase &#8220;new paradigm&#8221; to describe using Claude Tag &#8211; a way to mention Claude in Slack and have it kick off tasks &#8211; to work with AI:</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_!3smK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6848d9d-a3c8-4486-8d7d-9d2ee55edd85_1180x1044.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3smK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6848d9d-a3c8-4486-8d7d-9d2ee55edd85_1180x1044.png 424w, https://substackcdn.com/image/fetch/$s_!3smK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6848d9d-a3c8-4486-8d7d-9d2ee55edd85_1180x1044.png 848w, https://substackcdn.com/image/fetch/$s_!3smK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6848d9d-a3c8-4486-8d7d-9d2ee55edd85_1180x1044.png 1272w, https://substackcdn.com/image/fetch/$s_!3smK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6848d9d-a3c8-4486-8d7d-9d2ee55edd85_1180x1044.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3smK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6848d9d-a3c8-4486-8d7d-9d2ee55edd85_1180x1044.png" width="1180" height="1044" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c6848d9d-a3c8-4486-8d7d-9d2ee55edd85_1180x1044.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1044,&quot;width&quot;:1180,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3smK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6848d9d-a3c8-4486-8d7d-9d2ee55edd85_1180x1044.png 424w, https://substackcdn.com/image/fetch/$s_!3smK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6848d9d-a3c8-4486-8d7d-9d2ee55edd85_1180x1044.png 848w, https://substackcdn.com/image/fetch/$s_!3smK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6848d9d-a3c8-4486-8d7d-9d2ee55edd85_1180x1044.png 1272w, https://substackcdn.com/image/fetch/$s_!3smK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6848d9d-a3c8-4486-8d7d-9d2ee55edd85_1180x1044.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><span>Andrej Karpathy </span><a href="https://x.com/karpathy/status/2069547676849557725?s=20"><span>on X</span></a></em></figcaption></figure></div><p><span>There was plenty of pushback against this claim on social media; after all, it&#8217;s </span><em><span>just</span></em><span> a Slack integration with Claude, right? I also thought this until I asked </span><a href="https://www.linkedin.com/in/david-hershey/"><span>David Hershey</span></a><span> at Anthropic&#8217;s Applied AI unit about it while visiting the company&#8217;s offices. He explained in detail what makes this particular Slack integration different from using something like Claude Code:</span></p><ul><li><p><strong><span>No additional setup. </span></strong><span>For Claude Code to work well, it should be connected to internal MCP servers, with the right </span><a href="https://code.claude.com/docs/en/skills"><span>skills</span></a><span> on your local machine. Of course, at larger companies this setup is at least partially automated, but devs often need to do tweaking.</span></p></li><li><p><strong><span>No &#8220;tool context-switching.</span></strong><span>&#8221; Just mention it in Slack! Of course, opening Claude Code is not a big effort, but it&#8217;s still more work than just typing it out in Slack, and kicking off work.</span></p></li><li><p><strong><span>Routine work made easier.</span></strong><span> David has &#8220;Claude playing Pok&#233;mon&#8221; as his side project. Every time a new model comes out, he kicks off a run of his script on it. Previously, this took a few minutes to set up every time, and then it ran on his machine for hours. With this new Slack integration, it&#8217;s just one command.</span></p></li></ul><p><span>My sense is that the excitement here is less about the Slack integration itself, and more to do with the fact that it&#8217;s easy to kick off one or more AIs that no longer run on a local machine. You can skip the setup entirely.</span></p><p><strong><span>&#8216;Claude Managed Agents&#8217; is a big focus at Anthropic.</span></strong><span> While there, I met Katelyn Lesse, head of engineering for Claude Platform, who explained that </span><a href="https://www.anthropic.com/engineering/managed-agents"><span>Claude Managed Agents</span></a><span> is a large, complex project which her team built over a six-month period. It&#8217;s a hosted service to execute long-running agents on various cloud providers.</span></p><h3><span>Cloud agents are the &#8220;big deal&#8221;, not the Slack integration</span></h3><p><span>Also last week, I had the opportunity to attend a private AI builders event, where Peter Steinberger discussed his workflow.</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_!JLz_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17f00be6-8fd8-474c-9e1f-9dab109ef86f_2048x1536.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JLz_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17f00be6-8fd8-474c-9e1f-9dab109ef86f_2048x1536.jpeg 424w, https://substackcdn.com/image/fetch/$s_!JLz_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17f00be6-8fd8-474c-9e1f-9dab109ef86f_2048x1536.jpeg 848w, https://substackcdn.com/image/fetch/$s_!JLz_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17f00be6-8fd8-474c-9e1f-9dab109ef86f_2048x1536.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!JLz_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17f00be6-8fd8-474c-9e1f-9dab109ef86f_2048x1536.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JLz_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17f00be6-8fd8-474c-9e1f-9dab109ef86f_2048x1536.jpeg" width="1456" height="1092" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/17f00be6-8fd8-474c-9e1f-9dab109ef86f_2048x1536.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1092,&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_!JLz_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17f00be6-8fd8-474c-9e1f-9dab109ef86f_2048x1536.jpeg 424w, https://substackcdn.com/image/fetch/$s_!JLz_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17f00be6-8fd8-474c-9e1f-9dab109ef86f_2048x1536.jpeg 848w, https://substackcdn.com/image/fetch/$s_!JLz_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17f00be6-8fd8-474c-9e1f-9dab109ef86f_2048x1536.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!JLz_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17f00be6-8fd8-474c-9e1f-9dab109ef86f_2048x1536.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Peter Steinberger covers how he uses AI coding agents</figcaption></figure></div><p><span>He talked about how he has gotten really tired of having several OpenClaw agents running on his local machine, which heat up the CPU and slow down his whole system. So, he built </span><a href="https://crabbox.sh/"><span>Crabbox</span></a><span> as a way to run OpenClaw agents in the cloud:</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_!bJdZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8899addf-5c9d-4382-a501-8b27fe4e20e1_2048x1470.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bJdZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8899addf-5c9d-4382-a501-8b27fe4e20e1_2048x1470.png 424w, https://substackcdn.com/image/fetch/$s_!bJdZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8899addf-5c9d-4382-a501-8b27fe4e20e1_2048x1470.png 848w, https://substackcdn.com/image/fetch/$s_!bJdZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8899addf-5c9d-4382-a501-8b27fe4e20e1_2048x1470.png 1272w, https://substackcdn.com/image/fetch/$s_!bJdZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8899addf-5c9d-4382-a501-8b27fe4e20e1_2048x1470.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bJdZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8899addf-5c9d-4382-a501-8b27fe4e20e1_2048x1470.png" width="1456" height="1045" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8899addf-5c9d-4382-a501-8b27fe4e20e1_2048x1470.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1045,&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_!bJdZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8899addf-5c9d-4382-a501-8b27fe4e20e1_2048x1470.png 424w, https://substackcdn.com/image/fetch/$s_!bJdZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8899addf-5c9d-4382-a501-8b27fe4e20e1_2048x1470.png 848w, https://substackcdn.com/image/fetch/$s_!bJdZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8899addf-5c9d-4382-a501-8b27fe4e20e1_2048x1470.png 1272w, https://substackcdn.com/image/fetch/$s_!bJdZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8899addf-5c9d-4382-a501-8b27fe4e20e1_2048x1470.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><span>Crabbox: remote agents for OpenClaw</span></em></figcaption></figure></div><p><span>Suddenly, the same solution of cloud agents has emerged in separate places &#8211; at Anthropic and with Peter&#8217;s OpenClaw &#8211; in response to issues caused by locally-running agents. I also learned that cloud agents are becoming a big deal at OpenAI and Cursor, too.</span></p><h3><span>OpenAI bets big on Cloud Agents</span></h3><p><span>OpenAI acquired Ona, (formerly Gitpod), the leader in cloud development environments (CDEs). Back in 2021, CDEs were built for developers to develop software faster, and they also happen to be the perfect primitive for agents to run in a sandboxed cloud environment. From the </span><a href="https://openai.com/index/openai-to-acquire-ona/"><span>acquisition announcement by OpenAI</span></a><span> (emphasis mine):</span></p><blockquote><p><span>&#8220;As Codex becomes more capable, its most valuable work is unfolding over hours or days, rather than minutes. </span><strong><span>We believe people should be able to delegate more ambitious work without remaining tied to the machine where it began. </span></strong><span>The work should continue beyond the initial session, with Codex making it possible to stay connected and check progress, provide direction, make decisions, and review results from anywhere.</span></p><p><span>Ona will help us do that. Its technology provides secure, persistent environments where agents can access the tools, systems, and context they need to make progress over time.</span></p><p><span>By bringing Ona to OpenAI, we will expand Codex beyond work tied to a single device or active session and help more organizations deploy agents securely in production.&#8220;</span></p></blockquote><p><span>At OpenAI&#8217;s offices, I asked engineers there if their focus is shifting to cloud-based agents. Their answer: it very much is. This is a fairly recent development and they&#8217;re hiring engineers for the Cloud Agents team. Here&#8217;s </span><a href="https://openai.com/careers/software-engineer-cloud-agents-san-francisco/"><span>one job ad</span></a><span> that&#8217;s currently live:</span></p><blockquote><p><span>&#8220;We are looking for an experienced software engineer to help build and scale our cloud agent platform. You will design and operate systems for orchestrating agents at scale. You will work closely with product engineers on ChatGPT, API, and Codex to define the right abstractions and enable them to ship products quickly. Strong backend or infrastructure experience is important; experience with Python, Rust, distributed systems, cloud infrastructure, or product platforms is especially helpful.&#8221;</span></p></blockquote><h3><span>Cursor: running agents in the cloud is the future</span></h3><p><span>At Cursor, I spent an hour with cofounder Sualeh Asif (formerly the CTO, now Chief Product Officer). Cursor </span><a href="https://cursor.com/docs/cloud-agent"><span>released Cloud Agents</span></a><span> at the end of last year, and is starting to focus a lot more on this area. Sualeh revealed some interesting details about working with cloud agents:</span></p><ul><li><p><strong><span>Agents in the cloud don&#8217;t have a way to &#8220;complain.&#8221; </span></strong><span>With running an agent locally, when it gets warnings or errors, it surfaces them to a human in its response, who instructs it to do X or Y. However, there&#8217;s no such loop for a long-running task on the cloud! Cursor came up with the idea for the model &#8220;confess&#8221; in regular interviews, and the &#8220;confessions&#8221; are shared with the infra team to improve the agents&#8217; environment.</span></p></li><li><p><strong><span>Long-running agents have their own challenges. </span></strong><span>What happens when a node terminates, midway through; how do you move agent execution from one node to the other? There are new, nontrivial engineering challenges the team needs to solve.</span></p></li></ul><p><span>Only yesterday, (Monday, 29 June), Cursor </span><a href="https://cursor.com/blog/ios-mobile-app#handoff-between-local-and-cloud"><span>launched</span></a><span> its iOS app that enables the building of software from anywhere.</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_!4sZw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa37878e-12ce-4277-bca0-47eb6afd9fe6_930x588.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4sZw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa37878e-12ce-4277-bca0-47eb6afd9fe6_930x588.png 424w, https://substackcdn.com/image/fetch/$s_!4sZw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa37878e-12ce-4277-bca0-47eb6afd9fe6_930x588.png 848w, https://substackcdn.com/image/fetch/$s_!4sZw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa37878e-12ce-4277-bca0-47eb6afd9fe6_930x588.png 1272w, https://substackcdn.com/image/fetch/$s_!4sZw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa37878e-12ce-4277-bca0-47eb6afd9fe6_930x588.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4sZw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa37878e-12ce-4277-bca0-47eb6afd9fe6_930x588.png" width="930" height="588" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aa37878e-12ce-4277-bca0-47eb6afd9fe6_930x588.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:588,&quot;width&quot;:930,&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_!4sZw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa37878e-12ce-4277-bca0-47eb6afd9fe6_930x588.png 424w, https://substackcdn.com/image/fetch/$s_!4sZw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa37878e-12ce-4277-bca0-47eb6afd9fe6_930x588.png 848w, https://substackcdn.com/image/fetch/$s_!4sZw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa37878e-12ce-4277-bca0-47eb6afd9fe6_930x588.png 1272w, https://substackcdn.com/image/fetch/$s_!4sZw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa37878e-12ce-4277-bca0-47eb6afd9fe6_930x588.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><span>Building software on a smartphone needs cloud agents. Source: </span><a href="https://cursor.com/blog/ios-mobile-app"><span>Cursor</span></a></em></figcaption></figure></div><p><span>This product is built on top of cloud agents to allow for long-running tasks, the company said:</span></p><blockquote><p><span>&#8220;Cloud agents run in isolated virtual machines with full development environments to test, verify, and demo work. Since they operate asynchronously with their own tools and resources, cloud agents can run for longer and iterate toward merge-ready PRs without intervention.</span></p><p><span>To take advantage of these capabilities, send a local plan to a cloud agent or move active agents to the cloud to keep running. You can move the cloud session back to your computer to test changes locally before merging&#8221;.</span></p></blockquote><h3><span>Why are cloud agents suddenly a thing?</span></h3><p><span>It figures that running AI agents in the cloud is practical: there&#8217;s less setup involved, several can run in parallel, and the cloud is a better, more convenient place for long-running agents than a personal laptop is; i.e., having to keep the lid open even when walking around the office.</span></p><p><span>But why is this happening now? My hypothesis is that a mix of factors are at play:</span></p><ul><li><p><strong><span>Coding models got &#8216;good enough&#8217;. </span></strong><span>Before Opus 4.5 / GPT-5.4, AI models could not really code autonomously, so running them for long tasks was pointless!</span></p></li><li><p><strong><span>Infra for AI coding agents has matured. </span></strong><span>Ways of giving more context to agents have improved: things like MCP and skills became mainstream and better understood.</span></p></li><li><p><strong><span>The context window is bigger.</span></strong><span> Today&#8217;s models have context windows of up to 1 million tokens, meaning that more complex instructions, code, and context can be passed in. It&#8217;s hard to have agents run for a longer time without access to a large context window.</span></p></li><li><p><strong><span>Cloud providers have much more GPU capacity. </span></strong><span>Every cloud provider has been building GPU clusters in the last few years, and now there&#8217;s enough that these AI agents can make use of this infra.</span></p></li></ul><h2><span>2. Mass adoption of coding harnesses by non-developers?</span></h2><p><span>At OpenAI, I also met </span><a href="https://x.com/ajambrosino"><span>Andrew Ambrosino</span></a><span>, who was the first engineer on the Codex team. Our time together got off to an ideal start, with Andrew saying he needed to show me something incredible:</span></p>
      <p>
          <a href="https://newsletter.pragmaticengineer.com/p/impressions-from-visiting-openai">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Tech interviews with NeetCode]]></title><description><![CDATA[NeetCode shares his journey from Amazon and Google to building a startup, and why deep expertise still matters in the age of AI.]]></description><link>https://newsletter.pragmaticengineer.com/p/tech-interviews-with-neetcode</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/tech-interviews-with-neetcode</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Wed, 24 Jun 2026 17:32:34 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/203299374/cca1f76cadc9b2226221a725cb53ec03.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<h3>Stream the latest episode</h3><p><strong>Listen and watch now on <a href="https://youtu.be/xafwfGVBxos">YouTube</a>, <a href="https://open.spotify.com/episode/7rZyX6V3Fc3U4nKe8J0Jih">Spotify</a></strong>, <strong>and <a href="https://podcasts.apple.com/us/podcast/tech-interviews-with-neetcode/id1769051199?i=1000774074969">Apple</a>.</strong> See the episode transcript at the top of this page, and timestamps for the episode at the bottom.</p><h3><strong>Brought to You by</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!n08S!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4aa00181-983e-4747-8240-67654eae98f4_1600x140.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!n08S!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4aa00181-983e-4747-8240-67654eae98f4_1600x140.png 424w, https://substackcdn.com/image/fetch/$s_!n08S!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4aa00181-983e-4747-8240-67654eae98f4_1600x140.png 848w, https://substackcdn.com/image/fetch/$s_!n08S!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4aa00181-983e-4747-8240-67654eae98f4_1600x140.png 1272w, https://substackcdn.com/image/fetch/$s_!n08S!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4aa00181-983e-4747-8240-67654eae98f4_1600x140.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!n08S!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4aa00181-983e-4747-8240-67654eae98f4_1600x140.png" width="1456" height="127" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4aa00181-983e-4747-8240-67654eae98f4_1600x140.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:127,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:32913,&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://newsletter.pragmaticengineer.com/i/203299374?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4aa00181-983e-4747-8240-67654eae98f4_1600x140.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_!n08S!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4aa00181-983e-4747-8240-67654eae98f4_1600x140.png 424w, https://substackcdn.com/image/fetch/$s_!n08S!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4aa00181-983e-4747-8240-67654eae98f4_1600x140.png 848w, https://substackcdn.com/image/fetch/$s_!n08S!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4aa00181-983e-4747-8240-67654eae98f4_1600x140.png 1272w, https://substackcdn.com/image/fetch/$s_!n08S!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4aa00181-983e-4747-8240-67654eae98f4_1600x140.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p><strong><span>&#8226; </span><a href="https://antithesis.com/pragmatic"><span>Antithesis</span></a></strong><span> &#8211; If you&#8217;re using agents to code, the problem isn&#8217;t writing the code but making sure it didn&#8217;t break anything. Antithesis runs your whole system in a hostile environment and identifies hard-to-find bugs before users hit them in production. With Antithesis, teams like Jane Street, Fly.io, and the etcd community use agents safely and ship better code, faster. </span><a href="https://antithesis.com/pragmatic"><span>Learn more.</span></a></p><p><strong><span>&#8226; </span><a href="http://sentry.io/pragmatic"><span>Sentry</span></a></strong><span> &#8211; application monitoring software built by developers, for developers. Sentry&#8217;s </span><a href="https://sentry.io/lp/seer/utm_source=pragmatic&amp;utm_medium=paid-community&amp;utm_campaign=ai-fy27q1-seerlaunch&amp;utm_content=recording-coreread-freetrial&amp;code=pragmatic"><span>Seer AI agent</span></a><span> is growing on me, as a way to debug errors faster. Same with Sentry&#8217;s MCP server. </span><a href="http://sentry.io/pragmatic"><span>Check out Sentry</span></a><span>.</span></p><p><strong><span>&#8226; </span><a href="https://cloud.google.com/run?e=48754805&amp;utm_source=&amp;utm_medium=&amp;utm_campaign=the_pragmatic_engineer"><span>Google Cloud Run</span></a></strong><span> &#8211; a fully managed platform that runs your code directly on top of Google&#8217;s scalable infrastructure. Run frontend and backend services, batch jobs, host LLMs, and agents without managing infrastructure. Oh, it has automatic zonal failover out of the box &#8211; something that Coinbase </span><a href="https://blog.pragmaticengineer.com/coinbase-fail/"><span>could have used</span></a><span> a few weeks back! </span><a href="https://cloud.google.com/run?e=48754805&amp;utm_source=&amp;utm_medium=&amp;utm_campaign=the_pragmatic_engineer"><span>Get started</span></a><span>.</span></p><h3><strong>In this episode</strong></h3><p><span>Navdeep Singh &#8211; oftentimes better known as NeetCode &#8211; is the creator of NeetCode.io, one of the most popular coding interview preparation platforms and YouTube channels for software engineers. Before building NeetCode full-time, he worked as a software engineer at Amazon and Google.</span></p><p><span>In this episode of The Pragmatic Engineer, I sit down with Neet to discuss his path from Amazon and Google to building his own startup, why he left Amazon after just two months, what he learned at Google, and the decision to leave a stable engineering career to bet on himself. We also discuss what coding interview preparation teaches beyond passing interviews, the value of going deep on difficult problems, and why systems thinking and domain expertise remain essential engineering skills in the age of AI.</span></p><p><span>Throughout the conversation, NeetCode makes the case that learning hard things is one of the </span><em><span>single best </span></em><span>investments an engineer can make, helping build the judgment and expertise that remain valuable no matter how the tools change.</span></p><h3>Key observations from Neet</h3><p><span>Here are 10 interesting takeaways from our chat:</span></p><div id="youtube2-xafwfGVBxos" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;xafwfGVBxos&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/xafwfGVBxos?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><span>1. Companies have no real method for evaluating engineers &#8211; and likely never did</span></strong><span>. Neet believes the leetcode-style interview process has persisted because it scales well at large tech companies that need to train hundreds or thousands of interviewers, not because it predicts job performance well.</span></p><p><strong><span>2. The CAP theorem&#8217;s &#8220;two-out-of-three&#8221; framing is widely taught, but technically shaky.</span></strong><span> Neet believes this theory of distributed data systems is incomplete, and says he felt validated when researcher and author Martin Kleppmann </span><a href="https://martin.kleppmann.com/2015/09/17/critique-of-the-cap-theorem.html"><span>criticized it</span></a><span>. It&#8217;s a reminder to think independently and not accept theories without understanding them.</span></p><p><strong><span>3. Amazon&#8217;s intense culture left Neet reluctant to ask questions &#8211; which paradoxically, helped at Google.</span></strong><span> In Neet&#8217;s first job, he got used to working alone and not seeking help when needed, and continued this working style at Google. His manager there interpreted that behavior as independence, and as a result, he won rapid promotion from L3 to L4 (mid-level engineering role).</span></p><p><strong><span>4. The </span><a href="https://www.youtube.com/c/neetcode"><span>NeetCode</span></a><span> YouTube channel took off after he said he&#8217;d have to post less. </span></strong><span>Before viewers knew Neet had got a software engineering job at Google, his audience was small. But it turned out that announcing he&#8217;d have to post less for this reason boosted his channel! Suddenly, lots of people wanted to know how he&#8217;d landed the role.</span></p><p><strong><span>5. Cheating tools are helping to resurrect in-person, whiteboard interviews at Google. </span></strong><span>Neet notes Google has restarted onsite coding interviews because it&#8217;s the only way interviewers can be sure that candidates aren&#8217;t using AI-powered cheating tools which make data structure and algorithms (DSA) interviews easy to pass.</span></p><p><strong><span>6. Neet finds AI most valuable as a tech debt and refactoring assistant. </span></strong><span>He&#8217;s using AI to clean up years&#8217; worth of low-quality code on NeetCode&#8217;s backend, which also validates the decision to take shortcuts in the knowledge they can be corrected later.</span></p><p><strong><span>7. &#8216;Effort&#8217; is becoming the differentiator as AI makes everything else cheap.</span></strong><span> Neet says how you can prompt almost anything, but the capacity to be engaged with and care about your work, and to defend decisions you make, cannot be prompted by an AI tool. These depend on personal qualities like effort and dedication.</span></p><p><strong><span>8. Announcements of the death of coding are exaggerated. </span></strong><span>Despite dramatic improvements in the performance of AI models, Neet does not foresee the majority of engineers being laid off. In fact, he sees the opposite: devs are busier than ever.</span></p><p><strong><span>9. Humans are likely to remain better at weighing up tradeoffs than LLMs are. </span></strong><span>It&#8217;s a fact that LLMs have become a lot better at coding, but Neet doubts they will be much help in decisions involving judgments about tradeoffs.</span></p><p><strong><span>10. When hiring for NeetCode, personality traits and motivation matter more than coding skill. </span></strong><span>Neet&#8217;s best recent hire is still an undergrad with little coding experience, but does exceptionally well thanks to possessing high agency. Neet says: &#8220;even if they have no idea how to start it, by a week later, they&#8217;ll have learned everything about it.&#8221;</span></p><h3><strong>The Pragmatic Engineer deepdives relevant for this episode</strong></h3><p><span>&#8226; </span><a href="https://newsletter.pragmaticengineer.com/p/learnings-from-conducting-1000-interviews"><span>Learnings from conducting ~1,000 interviews at Amazon</span></a></p><p><span>&#8226; </span><a href="https://newsletter.pragmaticengineer.com/p/how-to-get-unstuck-during-coding-interviews"><span>How experienced engineers get unstuck in coding interviews</span></a></p><p><span>&#8226; </span><a href="https://newsletter.pragmaticengineer.com/p/the-reality-of-tech-interviews"><span>The Reality of Tech Interviews in 2025</span></a></p><p><span>&#8226; </span><a href="https://newsletter.pragmaticengineer.com/p/tech-hiring-inflection-point"><span>Tech hiring: is this an inflection point?</span></a></p><p><span>&#8226; </span><a href="https://newsletter.pragmaticengineer.com/p/ai-fakers"><span>AI fakers exposed in tech dev recruitment: postmortem</span></a></p><h3><strong>Timestamps</strong></h3><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos">00:00</a> Intro</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=177s">02:57</a> Neet&#8217;s take on coding interviews</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=401s">06:41</a> Getting into tech</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=536s">08:56</a> Why Neet isn&#8217;t a fan of the CAP theorem</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=792s">13:12</a> Quitting Amazon after two months</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=1102s">18:22</a> Google vs Amazon</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=1346s">22:26</a> The origins of NeetCode</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=1527s">25:27</a> Leaving Google to go all in on NeetCode</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=1922s">32:02</a> Why Neet doesn&#8217;t fix every bug</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=2366s">39:26</a> The value of coding interview prep</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=2577s">42:57</a> Systems thinking and domain expertise</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=2848s">47:28</a> Hiring at Big Tech</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=3135s">52:15</a> Tech stack at Neetcode</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=3477s">57:57</a> The NeetCode redesign contest</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=3706s">1:01:46</a> The future of software engineers</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=4144s">1:09:04</a> Hot takes: AGI, AI skill erosion, personality traits</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=4969s">1:22:49</a> &#8220;Maybe some people should just give up&#8221;</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=5079s">1:24:39</a> How to be a standout engineer</p><p><a href="https://www.youtube.com/watch?v=xafwfGVBxos&amp;t=5275s">1:27:55</a> Book recommendation</p><h3><strong>References</strong></h3><p><strong><span>Where to find Navdeep Singh (NeetCode):</span></strong></p><p><span>&#8226; X: </span><a href="https://x.com/neetcode1"><span>https://x.com/neetcode1</span></a></p><p><span>&#8226; LinkedIn: </span><a href="https://www.linkedin.com/in/navdeep-singh-3aaa14161"><span>https://www.linkedin.com/in/navdeep-singh-3aaa14161</span></a></p><p><span>&#8226; YouTube: </span><a href="https://www.youtube.com/c/neetcode"><span>https://www.youtube.com/c/neetcode</span></a></p><p><span>&#8226; Website: </span><a href="https://neetcode.io">https://neetcode.io</a></p><p><strong>Mentions during the episode:</strong></p><p><span>&#8226; A critique of the CAP theorem: </span><a href="https://martin.kleppmann.com/2015/09/17/critique-of-the-cap-theorem.html"><span>https://martin.kleppmann.com/2015/09/17/critique-of-the-cap-theorem.html</span></a></p><p><span>&#8226; Designing Data-intensive Applications with Martin Kleppmann: </span><a href="https://newsletter.pragmaticengineer.com/p/designing-data-intensive-applications"><span>https://newsletter.pragmaticengineer.com/p/designing-data-intensive-applications</span></a></p><p><span>&#8226; PACELC design principle: </span><a href="https://en.wikipedia.org/wiki/PACELC_design_principle"><span>https://en.wikipedia.org/wiki/PACELC_design_principle</span></a></p><p><span>&#8226; Amazon Chime: </span><a href="https://aws.amazon.com/chime/getting-started"><span>https://aws.amazon.com/chime/getting-started</span></a></p><p><span>&#8226; Musk&#8217;s 5 Step Design Process: </span><a href="https://modelthinkers.com/mental-model/musks-5-step-design-process"><span>https://modelthinkers.com/mental-model/musks-5-step-design-process</span></a></p><p><span>&#8226; AI Engineering with Chip Huyen: </span><a href="https://newsletter.pragmaticengineer.com/p/ai-engineering-with-chip-huyen"><span>https://newsletter.pragmaticengineer.com/p/ai-engineering-with-chip-huyen</span></a></p><p><span>&#8226; Angular: </span><a href="https://angular.dev">https://angular.dev</a></p><p><span>&#8226; Firebase: </span><a href="https://firebase.google.com">https://firebase.google.com</a></p><p><span>&#8226; TypeScript: </span><a href="https://www.typescriptlang.org">https://www.typescriptlang.org</a></p><p><span>&#8226; An update on recent Claude Code quality reports: </span><a href="https://www.anthropic.com/engineering/april-23-postmortem"><span>https://www.anthropic.com/engineering/april-23-postmortem</span></a></p><p><span>&#8226; Building Claude Code with Boris Cherny: </span><a href="https://newsletter.pragmaticengineer.com/p/building-claude-code-with-boris-cherny"><span>https://newsletter.pragmaticengineer.com/p/building-claude-code-with-boris-cherny</span></a></p><p><span>&#8226; Sora: </span><a href="https://en.wikipedia.org/wiki/Sora_(text-to-video_model)"><span>https://en.wikipedia.org/wiki/Sora_(text-to-video_model)</span></a></p><p><span>&#8226; Attention is all you need: </span><a href="https://arxiv.org/abs/1706.03762"><span>https://arxiv.org/abs/1706.03762</span></a></p><p><span>&#8226; The End of Programming as We Know It: </span><a href="https://www.oreilly.com/radar/the-end-of-programming-as-we-know-it"><span>https://www.oreilly.com/radar/the-end-of-programming-as-we-know-it</span></a></p><p><span>&#8226; Satya Nadella on X: </span><a href="https://x.com/satyanadella"><span>https://x.com/satyanadella</span></a></p><p><span>&#8226; Replit: </span><a href="https://replit.com">https://replit.com</a></p><p><span>&#8226; Lovable: </span><a href="https://lovable.dev">https://lovable.dev</a></p><p><span>&#8226; 37signals: </span><a href="https://37signals.com">https://37signals.com</a></p><p><span>&#8226; DHH&#8217;s new way of writing code: </span><a href="https://newsletter.pragmaticengineer.com/p/dhhs-new-way-of-writing-code"><span>https://newsletter.pragmaticengineer.com/p/dhhs-new-way-of-writing-code</span></a></p><p><span>&#8226; MongoDB: </span><a href="https://www.mongodb.com">https://www.mongodb.com</a></p><p><span>&#8226; Maybe some people should just give up: </span></p><div id="youtube2-rsoEipuwXiI" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;rsoEipuwXiI&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/rsoEipuwXiI?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>&#8212;</p><p>Production and marketing by <a href="https://penname.co/">Pen Name</a>. </p><p></p>]]></content:encoded></item><item><title><![CDATA[Slow down to speed up: so much has changed in 6 months’ time]]></title><description><![CDATA[An overview of what&#8217;s changed in engineering during the last six months, how various tech companies are changing how they work, and why slowing down could be a sensible strategy]]></description><link>https://newsletter.pragmaticengineer.com/p/slow-down-to-speed-up</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/slow-down-to-speed-up</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Tue, 23 Jun 2026 15:30:26 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/5wks1W-auKY" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em><span>Scheduling note: there will be no edition of The Pulse on Thursday as I&#8217;m in San Francisco for the next week and a half, visiting AI labs and startups, and attending the </span><a href="https://www.ai.engineer/worldsfair/2026"><span>AI Engineer World Fair</span></a><span> from next Monday. For the podcast and Tuesday articles, it&#8217;s business as usual.</span></em></p><p><span>Three weeks ago, at </span><a href="https://craft-conf.com/"><span>Craft Conference</span></a><span>, in Budapest, Hungary, I opened the event with a keynote titled &#8216;Slow Down to Speed Up&#8217;.</span></p><p><span>As with most of my talks, it came together in stages, including with some input from full subscribers to the Pragmatic Engineer, with whom I shared my thinking in advance, in &#8216;</span><a href="https://newsletter.pragmaticengineer.com/p/ideas-slow-down-to-speed-up-when"><span>Ideas: slow down to speed up when working with AI agents</span></a><span>&#8217;. </span><em><span>Thank you for all the comments!</span></em></p><p><span>As fate would have it, just two days beforehand, social media giant Meta appositely provided a real-world case study for my talk, with its </span><a href="https://newsletter.pragmaticengineer.com/i/202307236/4-most-embarrassing-ever-outage"><span>most embarrassing outage of all time</span></a><span>: users could simply ask the Meta AI to change the email of any account, and the bot happily complied &#8211; even if the account belonged to someone else entirely &#8211; including a former US president. It was a timely example to kick off the talk with.</span><em><span> Check out the full keynote that&#8217;s available to </span><a href="https://youtu.be/5wks1W-auKY"><span>view on YouTube</span></a><span>:</span></em></p><div id="youtube2-5wks1W-auKY" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;5wks1W-auKY&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/5wks1W-auKY?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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://youtu.be/5wks1W-auKY&quot;,&quot;text&quot;:&quot;Watch the keynote video&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://youtu.be/5wks1W-auKY"><span>Watch the keynote video</span></a></p><p><span>In this article, I summarize the key parts of my Craft Conference keynote in detail, and some responses received at the event. Full subscribers also have access to the slides, </span><a href="https://newsletter.pragmaticengineer.com/i/40654455/reports-and-slides"><span>here</span></a><span>, and at the foot of this article.</span></p><p><span>We cover:</span></p><ol><li><p><strong><span>Meta: &#8220;AI psychosis&#8221; in effect? </span></strong><span>Meta has been destroying its engineering org, and an obsessive focus on AI seems to be one reason for it. For more on this question, check out this </span><a href="https://newsletter.pragmaticengineer.com/p/why-is-meta-destroying-its-engineering"><span>deep dive</span></a><span>.</span></p></li><li><p><strong><span>Everything&#8217;s changed in six months.</span></strong><span> From around November last year, things changed with a more capable generation of AI agents like Opus 4.5 and GPT-5.4.</span></p></li><li><p><strong><span>How are tech companies changing how they work?</span></strong><span> Anthropic, OpenAI, Google, Uber, startups, and traditional companies.</span></p></li><li><p><strong><span>Trends</span></strong><span>. Individual productivity is up, but team productivity&#8217;s flat, tokenmaxxing and tooling adoption, vanishing middle management, CEOs and CTOs back to coding, and more.</span></p></li><li><p><strong><span>Trends across software. </span></strong><span>Falling software quality, GitHub&#8217;s constant reliability woes, AI slop overwhelming devs who care about quality, and more.</span></p></li><li><p><strong><span>Advice for software engineers and engineering leaders. </span></strong><span>Suggestions to help future-proof a career.</span></p></li><li><p><strong><span>Feedback. </span></strong><span>&#8220;It&#8217;s happening here too!&#8221; is a common theme, and relief for some that it&#8217;s not unique to their own workplace.</span></p></li></ol><h2><span>1. Meta: &#8220;AI psychosis&#8221; in effect?</span></h2><p><span>I thought it was a made-up story when I read that Meta had enabled account takeovers via a &#8220;zero auth&#8221; policy; i.e., simply asking the Meta AI bot was sufficient to change any account&#8217;s email address. After all, shipping such a regression would fly in the face of security measures, code reviews, automated testing, and metrics. Plus, the company has dedicated Integrity teams whose mission statement is to ensure something like this never happens&#8230; And yet, this bug shipped.</span></p><p><span>It went undetected by anyone at Meta, and high-profile accounts like that of former US president, Barack Obama, were taken over as a result. Instagram&#8217;s dedicated Integrity team seems to have discovered the embarrassing issue via the news.</span></p><p><span>As mentioned, it was two days before the Craft keynote, so there was enough time to ask around at Instagram and Meta. Engineers at the company there told me this disaster was caused by AI-generated, AI-reviewed code, along with layoffs, and by forced reassignments from Integrity teams and elsewhere onto AI labeling and related duties.</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_!zjyL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59abcfc-a72d-4957-b4e0-9fd6bde46c98_2048x1365.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zjyL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59abcfc-a72d-4957-b4e0-9fd6bde46c98_2048x1365.jpeg 424w, https://substackcdn.com/image/fetch/$s_!zjyL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59abcfc-a72d-4957-b4e0-9fd6bde46c98_2048x1365.jpeg 848w, https://substackcdn.com/image/fetch/$s_!zjyL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59abcfc-a72d-4957-b4e0-9fd6bde46c98_2048x1365.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!zjyL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59abcfc-a72d-4957-b4e0-9fd6bde46c98_2048x1365.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zjyL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59abcfc-a72d-4957-b4e0-9fd6bde46c98_2048x1365.jpeg" width="1456" height="970" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c59abcfc-a72d-4957-b4e0-9fd6bde46c98_2048x1365.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:970,&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_!zjyL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59abcfc-a72d-4957-b4e0-9fd6bde46c98_2048x1365.jpeg 424w, https://substackcdn.com/image/fetch/$s_!zjyL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59abcfc-a72d-4957-b4e0-9fd6bde46c98_2048x1365.jpeg 848w, https://substackcdn.com/image/fetch/$s_!zjyL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59abcfc-a72d-4957-b4e0-9fd6bde46c98_2048x1365.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!zjyL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc59abcfc-a72d-4957-b4e0-9fd6bde46c98_2048x1365.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><span>Talking Meta at Craft Conference</span></em></figcaption></figure></div><p><span>The problem at Meta seems to be that leadership is aggressively pushing AI, while withdrawing resources and headcount from areas responsible for security, quality, and reliability. Since last week&#8217;s </span><a href="https://newsletter.pragmaticengineer.com/p/why-is-meta-destroying-its-engineering"><span>deepdive</span></a><span> into what&#8217;s been happening behind the scenes was published, I&#8217;ve learned further details:</span></p><ul><li><p><span>Integrity teams at WhatsApp </span><a href="https://newsletter.pragmaticengineer.com/i/202609979/orgs-hit-hard-by-layoffs"><span>have been hit hard by layoffs</span></a><span> and enforced data-labeling reassignments</span></p></li><li><p><span>Instagram&#8217;s design team suffered a 44% cut in headcount during layoffs</span></p></li><li><p><span>The Developer Documentation and Support team had a full 95% headcount reduction during layoffs</span></p></li><li><p><span>Data labeling at the ADO group </span><a href="https://newsletter.pragmaticengineer.com/i/202609979/1-meta-follow-up"><span>goes beyond</span></a><span> &#8220;just&#8221; labeling; there are many AI training tasks to do.  But these are repetitive, unless you get really creative.</span></p></li></ul><p><span>Based on everything I heard from talking with Meta folks, AI-induced behavior was indeed at the heart of this outage. AI-generated, AI-reviewed code, and security teams being gutted, were also factors in the beyond-embarrassing incident. As reported in last week&#8217;s deepdive:</span></p><ul><li><p><span>Instagram&#8217;s Trust and Safety Team lost around 50% of its staff to data labeling and layoffs. Some of the most senior folks were drafted onto AI training tasks.</span></p></li><li><p><span>AI-generated changes with zero human input, with just an additional AI code review, have been very common in recent months across the codebase. The change that caused this outage looked like one of these</span></p></li><li><p><span>Normally, the Trust and Safety team would be on top of monitoring and alerting of security breaches, but it is currently in full disarray due to rapid, internal disorganization&#8221;.</span></p></li></ul><p><span>If major changes like data labeling assignments and staff tracking are undone, then perhaps things at Meta could return to normal. But so far, the most being done is that leadership has boosted budgets for snacks, travel, and events. Hardly the change needed to restore morale and the former culture!</span></p><p><span>The comparison to the Lumon corporation in the hit show, Severance, was duly 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_!1pjG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9951c023-462a-48cb-aa5e-53e0545828d7_1186x1528.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1pjG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9951c023-462a-48cb-aa5e-53e0545828d7_1186x1528.png 424w, https://substackcdn.com/image/fetch/$s_!1pjG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9951c023-462a-48cb-aa5e-53e0545828d7_1186x1528.png 848w, https://substackcdn.com/image/fetch/$s_!1pjG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9951c023-462a-48cb-aa5e-53e0545828d7_1186x1528.png 1272w, https://substackcdn.com/image/fetch/$s_!1pjG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9951c023-462a-48cb-aa5e-53e0545828d7_1186x1528.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1pjG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9951c023-462a-48cb-aa5e-53e0545828d7_1186x1528.png" width="1186" height="1528" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9951c023-462a-48cb-aa5e-53e0545828d7_1186x1528.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1528,&quot;width&quot;:1186,&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_!1pjG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9951c023-462a-48cb-aa5e-53e0545828d7_1186x1528.png 424w, https://substackcdn.com/image/fetch/$s_!1pjG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9951c023-462a-48cb-aa5e-53e0545828d7_1186x1528.png 848w, https://substackcdn.com/image/fetch/$s_!1pjG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9951c023-462a-48cb-aa5e-53e0545828d7_1186x1528.png 1272w, https://substackcdn.com/image/fetch/$s_!1pjG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9951c023-462a-48cb-aa5e-53e0545828d7_1186x1528.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><span>Source: </span><a href="https://x.com/secondfret/status/2067348925858934999?s=20"><span>Josh Johnson</span></a></em></figcaption></figure></div><p><strong><span>Meta&#8217;s worst-ever outage can be interpreted as a warning</span></strong><span> about what happens when there&#8217;s so much focus on AI that the basic health of a company&#8217;s main &#8211; money-spinning &#8211; products is neglected. Instagram, WhatsApp, and Facebook generate the bulk of revenue for Meta, but the company is reallocating more engineers to training the coding model, and aggressively cutting the headcounts of vital orgs to do so &#8211; up to the point of not having oncall coverage for key services, and security teams being too stretched to do their jobs.</span></p><p><span>Am I missing some insight about why it&#8217;s more important to build a state-of-the-art, likely-closed AI model that&#8217;s good at coding, than it is to keep operating revenue-generating businesses with stable infra?</span></p><h2><span>2. Everything&#8217;s changed in six months</span></h2><p><span>Independent, experienced software engineers with zero affiliation to AI labs have been saying for a few months that how we do software engineering has been transformed.</span></p><p><span>David Heinemeier Hansson (DHH), creator of Ruby on Rails </span><a href="https://x.com/dhh/status/2007504187568074843?s=20"><span>in January</span></a><span>:</span></p><blockquote><p><span>&#8221;Just [in] summer 2025, I spoke with Lex Fridman about not letting AI write any code directly, but it turns out part of this resistance was simply based on the models not being good enough at the time! I spent more time rewriting what it wrote, than if I&#8217;d done it from scratch. That has now flipped.&#8221;</span></p></blockquote><p><span>Simon Willison, creator of Django, </span><a href="https://simonw.substack.com/p/i-think-anthropic-and-openai-have"><span>in May</span></a><span> pinpointed the start of the change to late last year:</span></p><blockquote><p><span>&#8220;</span><strong><span>The models released in November 2025 elevated agents to being genuinely useful.</span></strong><span> We&#8217;ve had six months to get used to that idea now; it&#8217;s no wonder companies are beginning to spend real money on this technology.&#8221;</span></p></blockquote><p><strong><span>Teams using agents now ship 5x as many pull requests as two years ago.</span></strong><span> Here&#8217;s data from Linear:</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_!CCFv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee67b29-e96c-4ec4-ac45-c9a0c018feb8_1780x786.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CCFv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee67b29-e96c-4ec4-ac45-c9a0c018feb8_1780x786.png 424w, https://substackcdn.com/image/fetch/$s_!CCFv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee67b29-e96c-4ec4-ac45-c9a0c018feb8_1780x786.png 848w, https://substackcdn.com/image/fetch/$s_!CCFv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee67b29-e96c-4ec4-ac45-c9a0c018feb8_1780x786.png 1272w, https://substackcdn.com/image/fetch/$s_!CCFv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee67b29-e96c-4ec4-ac45-c9a0c018feb8_1780x786.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CCFv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee67b29-e96c-4ec4-ac45-c9a0c018feb8_1780x786.png" width="1456" height="643" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cee67b29-e96c-4ec4-ac45-c9a0c018feb8_1780x786.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:643,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Screenshot 2026-06-04 at 00.07.06.png&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="Screenshot 2026-06-04 at 00.07.06.png" srcset="https://substackcdn.com/image/fetch/$s_!CCFv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee67b29-e96c-4ec4-ac45-c9a0c018feb8_1780x786.png 424w, https://substackcdn.com/image/fetch/$s_!CCFv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee67b29-e96c-4ec4-ac45-c9a0c018feb8_1780x786.png 848w, https://substackcdn.com/image/fetch/$s_!CCFv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee67b29-e96c-4ec4-ac45-c9a0c018feb8_1780x786.png 1272w, https://substackcdn.com/image/fetch/$s_!CCFv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcee67b29-e96c-4ec4-ac45-c9a0c018feb8_1780x786.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Comparing numbers of pull requests for teams that use AI agents with Linear, vs those that don&#8217;t. Source: Linear</figcaption></figure></div><p><strong><span>Devs using AI harnesses are producing 2.5x as much code versus 18 months ago. </span></strong><span>Data from Cursor shows that their users, on average, went from adding 3,500 lines of code in January 2025 to 8,600 today:</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_!Wn0P!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77326a72-5765-4ca0-8938-25366d60e467_1462x764.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Wn0P!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77326a72-5765-4ca0-8938-25366d60e467_1462x764.png 424w, https://substackcdn.com/image/fetch/$s_!Wn0P!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77326a72-5765-4ca0-8938-25366d60e467_1462x764.png 848w, https://substackcdn.com/image/fetch/$s_!Wn0P!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77326a72-5765-4ca0-8938-25366d60e467_1462x764.png 1272w, https://substackcdn.com/image/fetch/$s_!Wn0P!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77326a72-5765-4ca0-8938-25366d60e467_1462x764.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Wn0P!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77326a72-5765-4ca0-8938-25366d60e467_1462x764.png" width="1456" height="761" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/77326a72-5765-4ca0-8938-25366d60e467_1462x764.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:761,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Screenshot 2026-06-04 at 00.12.01.png&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="Screenshot 2026-06-04 at 00.12.01.png" srcset="https://substackcdn.com/image/fetch/$s_!Wn0P!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77326a72-5765-4ca0-8938-25366d60e467_1462x764.png 424w, https://substackcdn.com/image/fetch/$s_!Wn0P!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77326a72-5765-4ca0-8938-25366d60e467_1462x764.png 848w, https://substackcdn.com/image/fetch/$s_!Wn0P!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77326a72-5765-4ca0-8938-25366d60e467_1462x764.png 1272w, https://substackcdn.com/image/fetch/$s_!Wn0P!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77326a72-5765-4ca0-8938-25366d60e467_1462x764.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><span>Source: </span><a href="https://cursor.com/insights"><span>Cursor</span></a></em></figcaption></figure></div><p><strong><span>The size of pull requests is up 3x versus 18 months ago</span></strong><span>. Also from Cursor:</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_!VaTO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F373d75b5-dc2e-4ee7-b487-f867c235b7af_1504x820.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VaTO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F373d75b5-dc2e-4ee7-b487-f867c235b7af_1504x820.png 424w, https://substackcdn.com/image/fetch/$s_!VaTO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F373d75b5-dc2e-4ee7-b487-f867c235b7af_1504x820.png 848w, https://substackcdn.com/image/fetch/$s_!VaTO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F373d75b5-dc2e-4ee7-b487-f867c235b7af_1504x820.png 1272w, https://substackcdn.com/image/fetch/$s_!VaTO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F373d75b5-dc2e-4ee7-b487-f867c235b7af_1504x820.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VaTO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F373d75b5-dc2e-4ee7-b487-f867c235b7af_1504x820.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/373d75b5-dc2e-4ee7-b487-f867c235b7af_1504x820.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;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Screenshot 2026-06-04 at 00.14.27.png&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="Screenshot 2026-06-04 at 00.14.27.png" srcset="https://substackcdn.com/image/fetch/$s_!VaTO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F373d75b5-dc2e-4ee7-b487-f867c235b7af_1504x820.png 424w, https://substackcdn.com/image/fetch/$s_!VaTO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F373d75b5-dc2e-4ee7-b487-f867c235b7af_1504x820.png 848w, https://substackcdn.com/image/fetch/$s_!VaTO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F373d75b5-dc2e-4ee7-b487-f867c235b7af_1504x820.png 1272w, https://substackcdn.com/image/fetch/$s_!VaTO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F373d75b5-dc2e-4ee7-b487-f867c235b7af_1504x820.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><span>Line goes up: more lines per PR than ever, today. Source: </span><a href="https://cursor.com/insights"><span>Cursor</span></a></em></figcaption></figure></div><p><strong><span>More AI changes are accepted without human review. </span></strong><span>Data from Cursor shows a big jump in changes being accepted without human review from around February this year, when Opus 4.7 and GPT 5.5 launched:</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_!g3dj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef9732b-9411-445b-af5d-64f8bb026d7a_2048x1365.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!g3dj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef9732b-9411-445b-af5d-64f8bb026d7a_2048x1365.jpeg 424w, https://substackcdn.com/image/fetch/$s_!g3dj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef9732b-9411-445b-af5d-64f8bb026d7a_2048x1365.jpeg 848w, https://substackcdn.com/image/fetch/$s_!g3dj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef9732b-9411-445b-af5d-64f8bb026d7a_2048x1365.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!g3dj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef9732b-9411-445b-af5d-64f8bb026d7a_2048x1365.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!g3dj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef9732b-9411-445b-af5d-64f8bb026d7a_2048x1365.jpeg" width="1456" height="970" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eef9732b-9411-445b-af5d-64f8bb026d7a_2048x1365.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:970,&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_!g3dj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef9732b-9411-445b-af5d-64f8bb026d7a_2048x1365.jpeg 424w, https://substackcdn.com/image/fetch/$s_!g3dj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef9732b-9411-445b-af5d-64f8bb026d7a_2048x1365.jpeg 848w, https://substackcdn.com/image/fetch/$s_!g3dj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef9732b-9411-445b-af5d-64f8bb026d7a_2048x1365.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!g3dj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef9732b-9411-445b-af5d-64f8bb026d7a_2048x1365.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><span>Less human input than ever, as outlined at the Craft Conference. Source: </span><a href="https://cursor.com/insights"><span>Cursor</span></a></em></figcaption></figure></div><p><strong><span>We&#8217;re seeing a </span></strong><em><strong><span>lot</span></strong></em><strong><span> more code generated, and less of it than ever being reviewed by devs. </span></strong><span>In the relatively short time since AI agents became </span><em><span>really</span></em><span> good last November, there are more pull requests generated by devs, those pull requests are getting better, and code reviews are harder to keep up with. And so, reviews are less stringent and more changes are shipped to production sans human review! </span><em><span>As per my discussions with Meta engineers, these kinds of AI-generated, AI-reviewed pull requests [at Meta, they&#8217;re called diffs] are what caused the most recent, embarrassing outage at Instagram.</span></em></p><h2><span>3. How are tech companies changing how they work?</span></h2><p><span>Details from a few larger tech companies:</span></p><p><strong><span>Anthropic: all-in on AI agents. </span></strong><span>In March, Boris Cherny, creator of Claude Code, </span><a href="https://newsletter.pragmaticengineer.com/p/building-claude-code-with-boris-cherny"><span>was on the Pragmatic Engineer podcast</span></a><span> and shared some details:</span></p><ul><li><p><span>He personally runs ~5x agents parallel, and ships 20&#8211;30 PRs/day</span></p></li><li><p><span>Product requirement documents (PRDs) are dead &amp; prototypes have replaced them inside Anthropic</span></p></li><li><p><span>~100% of Claude Code was generated by Claude in March</span></p></li><li><p><span>~70-90% of code inside Anthropic was generated by Claude</span></p></li><li><p><span>Claude Cowork &#8211; another billion-dollar product in terms of revenue potential &#8211; was built in just 10 days</span></p></li></ul><p><span>Since then, Boris has </span><a href="https://x.com/rohanpaul_ai/status/2063347508831764647?s=20"><span>shared</span></a><span> that his workflow has changed to setting up loops to run agents.</span></p><p><strong><span>OpenAI: moving much faster with AI agents. </span></strong><span>OpenAI&#8217;s Codex team was </span><a href="https://www.youtube.com/watch?v=Bo6Gtq3nMXc"><span>on the main stage</span></a><span> at The Pragmatic Summit in February. Tibo Sottiaux (head of engineering, Codex, OpenAI) shared interesting details on how software development is done in the Codex team:</span></p><ul><li><p><span>There&#8217;s a &#8220;fix this&#8221; button integrated into the internal OpenAI mobile app. It makes one-shot fixes to bug reports, which devs review and can merge</span></p></li><li><p><span>AI code review for all code changes. With a tiered approach, some changes can be merged with just AI review, and more important ones need an extra human review</span></p></li><li><p><span>Most devs run several agents in parallel, often walking around with their laptop lids open, so the machine doesn&#8217;t enter sleep mode and suspend agents</span></p></li><li><p><span>Code isn&#8217;t really written by hand anymore on the Codex team, and is also less common on other teams too</span></p></li><li><p><span>&#8220;Taste&#8221; is becoming a core skill for working at the company</span></p></li><li><p><span>Codex improves itself: it runs its own test suite, runs improvement tasks overnight, and during team meetings it takes actions on topics discussed</span></p></li></ul><p><strong><span>Google: AI widespread. </span></strong><span>Gemini is not as capable at coding as Claude or Codex, as acknowledged by Google&#8217;s CEO, but it&#8217;s widely used companywide. The less capable coding model could be hurting AI adoption compared to other companies.</span></p><p><strong><span>Uber: in-house AI infra. </span></strong><span>We covered in-depth </span><a href="https://newsletter.pragmaticengineer.com/p/how-uber-uses-ai-for-development"><span>how Uber uses AI for development</span></a><span>, touching on internal systems like:</span></p><p><span>Uber&#8217;s MCP Gateway:</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_!86xc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfdfadc9-6d82-4960-a524-68f652453116_1342x1050.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!86xc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfdfadc9-6d82-4960-a524-68f652453116_1342x1050.png 424w, https://substackcdn.com/image/fetch/$s_!86xc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfdfadc9-6d82-4960-a524-68f652453116_1342x1050.png 848w, https://substackcdn.com/image/fetch/$s_!86xc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfdfadc9-6d82-4960-a524-68f652453116_1342x1050.png 1272w, https://substackcdn.com/image/fetch/$s_!86xc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfdfadc9-6d82-4960-a524-68f652453116_1342x1050.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!86xc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfdfadc9-6d82-4960-a524-68f652453116_1342x1050.png" width="1342" height="1050" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dfdfadc9-6d82-4960-a524-68f652453116_1342x1050.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1050,&quot;width&quot;:1342,&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_!86xc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfdfadc9-6d82-4960-a524-68f652453116_1342x1050.png 424w, https://substackcdn.com/image/fetch/$s_!86xc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfdfadc9-6d82-4960-a524-68f652453116_1342x1050.png 848w, https://substackcdn.com/image/fetch/$s_!86xc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfdfadc9-6d82-4960-a524-68f652453116_1342x1050.png 1272w, https://substackcdn.com/image/fetch/$s_!86xc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfdfadc9-6d82-4960-a524-68f652453116_1342x1050.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><span>Uber&#8217;s MCP Gateway</span></em></figcaption></figure></div><p>Uber Agent Builder:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lJ3T!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b7b50b1-2fbe-4fbe-8175-1fd78742b9dc_1374x1400.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lJ3T!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b7b50b1-2fbe-4fbe-8175-1fd78742b9dc_1374x1400.png 424w, https://substackcdn.com/image/fetch/$s_!lJ3T!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b7b50b1-2fbe-4fbe-8175-1fd78742b9dc_1374x1400.png 848w, https://substackcdn.com/image/fetch/$s_!lJ3T!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b7b50b1-2fbe-4fbe-8175-1fd78742b9dc_1374x1400.png 1272w, https://substackcdn.com/image/fetch/$s_!lJ3T!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b7b50b1-2fbe-4fbe-8175-1fd78742b9dc_1374x1400.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lJ3T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b7b50b1-2fbe-4fbe-8175-1fd78742b9dc_1374x1400.png" width="1374" height="1400" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7b7b50b1-2fbe-4fbe-8175-1fd78742b9dc_1374x1400.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1400,&quot;width&quot;:1374,&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_!lJ3T!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b7b50b1-2fbe-4fbe-8175-1fd78742b9dc_1374x1400.png 424w, https://substackcdn.com/image/fetch/$s_!lJ3T!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b7b50b1-2fbe-4fbe-8175-1fd78742b9dc_1374x1400.png 848w, https://substackcdn.com/image/fetch/$s_!lJ3T!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b7b50b1-2fbe-4fbe-8175-1fd78742b9dc_1374x1400.png 1272w, https://substackcdn.com/image/fetch/$s_!lJ3T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b7b50b1-2fbe-4fbe-8175-1fd78742b9dc_1374x1400.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Uber&#8217;s Agent Builder: a no-code experience to build agents</figcaption></figure></div><p>The AIFX command line interface:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tRVQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ad64cc-74f4-45e4-be0d-110cbfa09122_1980x1136.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tRVQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ad64cc-74f4-45e4-be0d-110cbfa09122_1980x1136.png 424w, https://substackcdn.com/image/fetch/$s_!tRVQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ad64cc-74f4-45e4-be0d-110cbfa09122_1980x1136.png 848w, https://substackcdn.com/image/fetch/$s_!tRVQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ad64cc-74f4-45e4-be0d-110cbfa09122_1980x1136.png 1272w, https://substackcdn.com/image/fetch/$s_!tRVQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ad64cc-74f4-45e4-be0d-110cbfa09122_1980x1136.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tRVQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ad64cc-74f4-45e4-be0d-110cbfa09122_1980x1136.png" width="1456" height="835" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b8ad64cc-74f4-45e4-be0d-110cbfa09122_1980x1136.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:835,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:932547,&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://newsletter.pragmaticengineer.com/i/203257304?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ad64cc-74f4-45e4-be0d-110cbfa09122_1980x1136.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_!tRVQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ad64cc-74f4-45e4-be0d-110cbfa09122_1980x1136.png 424w, https://substackcdn.com/image/fetch/$s_!tRVQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ad64cc-74f4-45e4-be0d-110cbfa09122_1980x1136.png 848w, https://substackcdn.com/image/fetch/$s_!tRVQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ad64cc-74f4-45e4-be0d-110cbfa09122_1980x1136.png 1272w, https://substackcdn.com/image/fetch/$s_!tRVQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8ad64cc-74f4-45e4-be0d-110cbfa09122_1980x1136.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Uber&#8217;s AIFX command line tool</figcaption></figure></div><p>Minion: background agents</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bCSQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddffc676-68f3-42b1-8380-b6f2091580c2_1351x737.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bCSQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddffc676-68f3-42b1-8380-b6f2091580c2_1351x737.png 424w, https://substackcdn.com/image/fetch/$s_!bCSQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddffc676-68f3-42b1-8380-b6f2091580c2_1351x737.png 848w, https://substackcdn.com/image/fetch/$s_!bCSQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddffc676-68f3-42b1-8380-b6f2091580c2_1351x737.png 1272w, https://substackcdn.com/image/fetch/$s_!bCSQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddffc676-68f3-42b1-8380-b6f2091580c2_1351x737.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bCSQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddffc676-68f3-42b1-8380-b6f2091580c2_1351x737.png" width="1351" height="737" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ddffc676-68f3-42b1-8380-b6f2091580c2_1351x737.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:737,&quot;width&quot;:1351,&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_!bCSQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddffc676-68f3-42b1-8380-b6f2091580c2_1351x737.png 424w, https://substackcdn.com/image/fetch/$s_!bCSQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddffc676-68f3-42b1-8380-b6f2091580c2_1351x737.png 848w, https://substackcdn.com/image/fetch/$s_!bCSQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddffc676-68f3-42b1-8380-b6f2091580c2_1351x737.png 1272w, https://substackcdn.com/image/fetch/$s_!bCSQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddffc676-68f3-42b1-8380-b6f2091580c2_1351x737.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><span>Uber&#8217;s Minion system: web interface&#8217;s appearance</span></em></figcaption></figure></div><p>Code Inbox:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!58dy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fea6f1-4615-484a-a93e-589a6ad921b7_1456x901.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!58dy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fea6f1-4615-484a-a93e-589a6ad921b7_1456x901.png 424w, https://substackcdn.com/image/fetch/$s_!58dy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fea6f1-4615-484a-a93e-589a6ad921b7_1456x901.png 848w, https://substackcdn.com/image/fetch/$s_!58dy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fea6f1-4615-484a-a93e-589a6ad921b7_1456x901.png 1272w, https://substackcdn.com/image/fetch/$s_!58dy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fea6f1-4615-484a-a93e-589a6ad921b7_1456x901.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!58dy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fea6f1-4615-484a-a93e-589a6ad921b7_1456x901.png" width="1456" height="901" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/90fea6f1-4615-484a-a93e-589a6ad921b7_1456x901.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:901,&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_!58dy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fea6f1-4615-484a-a93e-589a6ad921b7_1456x901.png 424w, https://substackcdn.com/image/fetch/$s_!58dy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fea6f1-4615-484a-a93e-589a6ad921b7_1456x901.png 848w, https://substackcdn.com/image/fetch/$s_!58dy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fea6f1-4615-484a-a93e-589a6ad921b7_1456x901.png 1272w, https://substackcdn.com/image/fetch/$s_!58dy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fea6f1-4615-484a-a93e-589a6ad921b7_1456x901.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><span>Uber&#8217;s Code Inbox</span></em></figcaption></figure></div><p><span>Smart Assignments as a neat feature of Code Inbox:</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_!mJYV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61073e2b-f26c-4421-8d3d-60c381c1b492_956x692.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mJYV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61073e2b-f26c-4421-8d3d-60c381c1b492_956x692.png 424w, https://substackcdn.com/image/fetch/$s_!mJYV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61073e2b-f26c-4421-8d3d-60c381c1b492_956x692.png 848w, https://substackcdn.com/image/fetch/$s_!mJYV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61073e2b-f26c-4421-8d3d-60c381c1b492_956x692.png 1272w, https://substackcdn.com/image/fetch/$s_!mJYV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61073e2b-f26c-4421-8d3d-60c381c1b492_956x692.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mJYV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61073e2b-f26c-4421-8d3d-60c381c1b492_956x692.png" width="956" height="692" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/61073e2b-f26c-4421-8d3d-60c381c1b492_956x692.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:692,&quot;width&quot;:956,&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_!mJYV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61073e2b-f26c-4421-8d3d-60c381c1b492_956x692.png 424w, https://substackcdn.com/image/fetch/$s_!mJYV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61073e2b-f26c-4421-8d3d-60c381c1b492_956x692.png 848w, https://substackcdn.com/image/fetch/$s_!mJYV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61073e2b-f26c-4421-8d3d-60c381c1b492_956x692.png 1272w, https://substackcdn.com/image/fetch/$s_!mJYV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61073e2b-f26c-4421-8d3d-60c381c1b492_956x692.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><span>Smart assignment settings for Code Inbox</span></em></figcaption></figure></div><p>Risk Profiles: another smart feature inside Code Inbox:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dbo4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F411ad35f-d8ea-470f-b480-82fc0bcce7bc_996x812.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dbo4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F411ad35f-d8ea-470f-b480-82fc0bcce7bc_996x812.png 424w, https://substackcdn.com/image/fetch/$s_!dbo4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F411ad35f-d8ea-470f-b480-82fc0bcce7bc_996x812.png 848w, https://substackcdn.com/image/fetch/$s_!dbo4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F411ad35f-d8ea-470f-b480-82fc0bcce7bc_996x812.png 1272w, https://substackcdn.com/image/fetch/$s_!dbo4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F411ad35f-d8ea-470f-b480-82fc0bcce7bc_996x812.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dbo4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F411ad35f-d8ea-470f-b480-82fc0bcce7bc_996x812.png" width="996" height="812" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/411ad35f-d8ea-470f-b480-82fc0bcce7bc_996x812.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:812,&quot;width&quot;:996,&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_!dbo4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F411ad35f-d8ea-470f-b480-82fc0bcce7bc_996x812.png 424w, https://substackcdn.com/image/fetch/$s_!dbo4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F411ad35f-d8ea-470f-b480-82fc0bcce7bc_996x812.png 848w, https://substackcdn.com/image/fetch/$s_!dbo4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F411ad35f-d8ea-470f-b480-82fc0bcce7bc_996x812.png 1272w, https://substackcdn.com/image/fetch/$s_!dbo4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F411ad35f-d8ea-470f-b480-82fc0bcce7bc_996x812.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Code Inbox estimates the riskiness of a code change, and brings attention to it</figcaption></figure></div><p>uReview, Uber&#8217;s AI code review tool:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4R6L!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb907a1b0-8a71-4baa-a9e2-0b895d82cc06_1456x1007.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4R6L!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb907a1b0-8a71-4baa-a9e2-0b895d82cc06_1456x1007.png 424w, https://substackcdn.com/image/fetch/$s_!4R6L!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb907a1b0-8a71-4baa-a9e2-0b895d82cc06_1456x1007.png 848w, https://substackcdn.com/image/fetch/$s_!4R6L!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb907a1b0-8a71-4baa-a9e2-0b895d82cc06_1456x1007.png 1272w, https://substackcdn.com/image/fetch/$s_!4R6L!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb907a1b0-8a71-4baa-a9e2-0b895d82cc06_1456x1007.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4R6L!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb907a1b0-8a71-4baa-a9e2-0b895d82cc06_1456x1007.png" width="1456" height="1007" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b907a1b0-8a71-4baa-a9e2-0b895d82cc06_1456x1007.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1007,&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_!4R6L!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb907a1b0-8a71-4baa-a9e2-0b895d82cc06_1456x1007.png 424w, https://substackcdn.com/image/fetch/$s_!4R6L!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb907a1b0-8a71-4baa-a9e2-0b895d82cc06_1456x1007.png 848w, https://substackcdn.com/image/fetch/$s_!4R6L!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb907a1b0-8a71-4baa-a9e2-0b895d82cc06_1456x1007.png 1272w, https://substackcdn.com/image/fetch/$s_!4R6L!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb907a1b0-8a71-4baa-a9e2-0b895d82cc06_1456x1007.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">AI&#8217;s comments can be rated by usefulness</figcaption></figure></div><p>Autocover and Shepherd for large-scale migrations:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DvQf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce6bee21-20ea-476f-a2f7-6705c8cd8a12_1456x1352.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DvQf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce6bee21-20ea-476f-a2f7-6705c8cd8a12_1456x1352.png 424w, https://substackcdn.com/image/fetch/$s_!DvQf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce6bee21-20ea-476f-a2f7-6705c8cd8a12_1456x1352.png 848w, https://substackcdn.com/image/fetch/$s_!DvQf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce6bee21-20ea-476f-a2f7-6705c8cd8a12_1456x1352.png 1272w, https://substackcdn.com/image/fetch/$s_!DvQf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce6bee21-20ea-476f-a2f7-6705c8cd8a12_1456x1352.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DvQf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce6bee21-20ea-476f-a2f7-6705c8cd8a12_1456x1352.png" width="1456" height="1352" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ce6bee21-20ea-476f-a2f7-6705c8cd8a12_1456x1352.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1352,&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_!DvQf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce6bee21-20ea-476f-a2f7-6705c8cd8a12_1456x1352.png 424w, https://substackcdn.com/image/fetch/$s_!DvQf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce6bee21-20ea-476f-a2f7-6705c8cd8a12_1456x1352.png 848w, https://substackcdn.com/image/fetch/$s_!DvQf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce6bee21-20ea-476f-a2f7-6705c8cd8a12_1456x1352.png 1272w, https://substackcdn.com/image/fetch/$s_!DvQf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce6bee21-20ea-476f-a2f7-6705c8cd8a12_1456x1352.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Shepherd generates a pull request using a Minion AI agent. Part 2 of the diff (pull request) generated, with code changes</figcaption></figure></div><p><strong><span>Uber is a good case for learning how much of internal developer infra needs to be rebuilt in order to work well with AI agents.</span></strong><span> Uber built all the tools above because they needed new, better ways to integrate AI agents into the developer workflow, but couldn&#8217;t find anything that worked up to requirements. I&#8217;d also point out how much time and effort Uber invested in making code review more efficient. Devs are, indeed, getting overloaded with AI code reviews and Uber&#8217;s Code Inbox tries to separate the </span><em><span>important</span></em><span> pieces of code to review from </span><em><span>unimportant</span></em><span> ones.</span></p><p><strong><span>Startups are jumping into using AI agents, although their integrations are more basic. </span></strong><span>In preparation for the keynote, I talked with several startups about their AI usage. Harnesses like Claude Code, Codex, Cursor, OpenCode and others are popular, and I also noticed most startups are heavily integrating AI agents into Slack, so devs can kick off bugfixes or small feature requests straight from the chat tool.</span></p><p><span>I observed startups being the most likely to experiment with new AI dev tools; from code review, all the way to AI incident management tools.</span></p><p><strong><span>&#8220;Traditional&#8221; companies are also heavily investing in AI dev tools. </span></strong><span>At the recent Pragmatic Summit in San Francisco, Laura Tacho </span><a href="https://newsletter.pragmaticengineer.com/i/188235220/2-data-vs-hype-how-orgs-actually-win-with-ai"><span>shared</span></a><span> interesting details:</span></p><ul><li><p><span>In February, 18,000 Cisco developers used Codex for complex migrations, code review, and refactoring. This was </span><em><span>very</span></em><span> early &#8211; Codex was just starting to gain industry-wide adoption!</span></p></li><li><p><span>JP Morgan Chase built a multi-agent framework for annotation, using multiple specialized agents to label customer interaction data, and judge agents to aggregate and rank results. These are pretty advanced use cases!</span></p></li></ul><p><span>In general, &#8220;traditional&#8221; companies do not seem to be lagging behind in using, paying for, and adopting AI agents and AI developer tools.</span></p><h2><span>4. Industry trends</span></h2><p><span>There are trends I&#8217;ve observed around the adoption of AI dev tools:</span></p>
      <p>
          <a href="https://newsletter.pragmaticengineer.com/p/slow-down-to-speed-up">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The Pulse: Big implications of US banning Anthropic’s new model, Fable]]></title><description><![CDATA[Also: a follow-up on Meta destroying its own engineering culture, the SpaceX IPO, SpaceX buys Cursor, Cursor&#8217;s GitHub competitor, and more.]]></description><link>https://newsletter.pragmaticengineer.com/p/the-pulse-big-implications-of-us</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/the-pulse-big-implications-of-us</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Thu, 18 Jun 2026 17:11:03 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!SNKX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F744904b3-18f6-46e7-a260-659673fed299_1186x1528.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>The Pulse is a series covering events, insights, and trends within Big Tech and startups. Notice an interesting event or trend? Hit reply and share it with me.</em></p><p>Today, we cover:</p><ol><li><p><strong>Meta follow-up. </strong>A follow-up on Tuesday&#8217;s deepdive into Meta&#8217;s ongoing demolition of its own engineering org. Non-engineering teams lost more than 10% of their staff, while Integrity teams were already stretched before the cuts and reallocation.</p></li><li><p><strong>Big implications of the US banning Anthropic&#8217;s new model, Fable. </strong>The US government wants only US citizens to be able to use Fable. That could make China more influential as other countries and non-US companies look to capable open models &#8211; most of which come from China.</p></li><li><p><strong>SpaceX, Cursor, Continue. </strong>Elon Musk became a trillionaire with SpaceX&#8217;s IPO, while SpaceX acquired Cursor, and Cursor acquired Continue. SpaceX looks like it wants to go head-on against Anthropic and OpenAI.</p></li><li><p><strong>Industry Pulse. </strong>Gemini lead quits for OpenAI, Epic Games&#8217; new open source version control system, Microsoft considers dropping OpenAI for DeepSeek, research confirms LLMs amplify existing expertise, and more. </p></li></ol><h2><span>1. Meta follow-up</span></h2><p><span>Tuesday&#8217;s article </span><a href="https://newsletter.pragmaticengineer.com/p/why-is-meta-destroying-its-engineering"><span>about Meta destroying its engineering culture</span></a><span> made quite the splash in terms of comments and debate online. From inside Meta, there was positive feedback on the accuracy of the deepdive into the situation, and there were also a few helpful clarifications and new information which I&#8217;m happy to publish here:</span></p>
      <p>
          <a href="https://newsletter.pragmaticengineer.com/p/the-pulse-big-implications-of-us">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[CI/CD with Robert Erez]]></title><description><![CDATA[Robert Erez of Octopus Deploy joins me to discuss Kubernetes, GitOps, progressive delivery, AI in CI/CD, and the evolving practices behind modern software delivery.]]></description><link>https://newsletter.pragmaticengineer.com/p/cicd-with-robert-erez</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/cicd-with-robert-erez</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Wed, 17 Jun 2026 16:41:01 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/202192974/853dbd59a9e16209cab02390aedb8a33.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<h3>Stream the latest episode</h3><p><strong>Listen and watch now on <a href="https://youtu.be/2x0eq5oDOJY">YouTube</a>, <a href="https://open.spotify.com/episode/0U7CodzNgOe0PxLHmRYfmo">Spotify</a>, and <a href="https://podcasts.apple.com/us/podcast/ci-cd-with-robert-erez/id1769051199?i=1000773146557">Apple</a>.</strong> See the episode transcript at the top of this page, and timestamps for the episode at the bottom.</p><h3><strong>Brought to You by</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YCsL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YCsL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 424w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 848w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1272w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YCsL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png" width="1280" height="80" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:80,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:33236,&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://newsletter.pragmaticengineer.com/i/197401883?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.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_!YCsL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 424w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 848w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1272w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p><strong>&#8226; <a href="https://antithesis.com/pragmatic">Antithesis</a></strong> &#8211; <span>if you're using agents to code, the problem isn't writing the code but making sure it didn't break anything. Antithesis goes beyond code review and runs your whole system in faster than real-time and identifies hard to find bugs before your users hit them in production. Antithesis enables teams like Jane Street, Fly.io,  and the etcd community to use agents safely and ship better code, faster. </span><a href="https://antithesis.com/pragmatic"><span>Learn more</span></a></p><p><strong>&#8226; <a href="https://workos.com/">WorkOS</a></strong> &#8211; make your app and agents Enterprise Ready, with SSO, SCIM, RBAC, and more. <a href="https://workos.com/">Get started.</a></p><p><strong>&#8226; <a href="https://turbopuffer.com/pragmatic">turbopuffer</a></strong> &#8211; a vector and full-text search engine built on object storage. It&#8217;s fast, cheap, and extremely scalable. The teams building the smartest AI products out there &#8212; Cursor, Notion, Cognition, Anthropic &#8212; they <a href="https://turbopuffer.com/pragmatic">all run on turbopuffer</a>.</p><h3><strong>In this episode</strong></h3><p>Robert Erez is a principal engineer at Octopus Deploy, and a longtime expert in CI/CD, deployment systems, and software delivery. Rob and I were also once colleagues on the Skype web team, working on large-scale deployments and release processes.</p><p>In this episode of<em> The</em> <em>Pragmatic Engineer</em>, I sit down with Rob to discuss how teams deploy software safely and efficiently at scale. We cover Kubernetes, GitOps, platform engineering, progressive delivery, feature flags, cloud development environments, and the growing role of AI in CI/CD workflows. We also get into the tradeoffs in different deployment approaches, why self-hosted software still matters for some organizations, and the recent evolution of software delivery practices.</p><h3>Key observations on deployments and CI/CD from the conversation with Rob</h3><p>Here are 10 interesting takeaways from our chat:</p><div id="youtube2-2x0eq5oDOJY" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;2x0eq5oDOJY&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/2x0eq5oDOJY?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>1. Roll forward, never backwards. </strong>When a system has state &#8211; which typically means it uses databases &#8211; then doing a rollback can leave the code talking to a schema that&#8217;s no longer in sync. Rob&#8217;s advice is to not treat a failure in v2 as a trip back to v1, but rather as a push to v3 with the fix in it.</p><p><strong>2. GitOps isn&#8217;t actually about Git.</strong> None of the four pillars of GitOps &#8211; 1) declarative, 2) versioned and immutable, 3) pulled, not pushed, 4) continuously reconciled  &#8211; require Git, although Git can work under these constraints. Yet, the term  &#8216;GitOps&#8217; has made the industry dogmatic about cramming <em>everything</em> into a repo &#8211; even things like secrets that absolutely shouldn&#8217;t be there!</p><p><strong>3. Continuous deployment can be overkill; continuous delivery is more practical. </strong>Shipping every single change to prod (continuous deployment) is not as necessary as many people think, Rob says, and there&#8217;s often more value in continuous delivery, where changes flow through testing and the deployment process itself is validated. With continuous delivery, you can decide whether to push to production automatically, or click a button once a week.</p><p><strong>4. Feature toggles are a better safety net than rollbacks.</strong> When something breaks in production, reaching for a toggle to switch a feature off enables you to &#8220;stop the bleeding&#8221; and then calmly diagnose an issue. Rolling back a feature flag is less nerve-jangling than scrambling to force a redeployment in the middle of the night!</p><p><strong>5. One problem with feature flags is that they&#8217;re addictive.</strong> On the other hand, the ease with which feature flags are added can create a hygiene crisis if they&#8217;re continuously added, but not removed. Treat feature-toggle cleanups like a form of gardening and &#8220;weed&#8221; rolled-out toggles from the codebase.</p><p><strong>6. A Git repo can be a bottleneck at scale.</strong> Rob mentions that some companies run thousands of independent Kubernetes clusters that pull state from a Git repository. But such clusters can get throttled by the repo, forcing them into workarounds. Pull-based GitOps doesn&#8217;t scale infinitely for free.</p><p><strong>7. A sizable number of major institutions remain on-prem &#8211; and this won&#8217;t change. </strong>Banks, other financial bodies, and governments, demand full control over their hardware, upgrades, and downtime. That&#8217;s why Rob expects this segment won&#8217;t move to cloud-based SaaS.</p><p><strong>8. Platform teams work at larger companies. </strong>These teams earn their keep in big organizations with multiple teams and projects because they offer ways of bringing sanity and focus.</p><p><strong>9. There&#8217;s a trend of ephemeral environments replacing test/staging environments. </strong>Companies used to have a few testers fighting over a handful of static test environments, but today, it&#8217;s trivial to spin up a full environment, per-feature branch, pre-merge. This is an &#8220;ephemeral&#8221; environment for evaluating that things work, which is then torn down once something is merged. It helps speed up the feedback process.</p><p><strong>10. AI shifts the CI/CD calculus from speed to risk.</strong> Today, shaving ten minutes off the CI build-time matters because a long-running build blocks human devs. But this time saving will be insignificant when an AI agent writes most of the code and &#8220;babysits&#8221; a slow pipeline without context switching. Then, the new priority will be to reduce the risk of an AI agent shipping a bug to production, so it will make much more sense to run extra, more thorough, tests &#8211; and also even slower ones.</p><h3><strong>The Pragmatic Engineer deepdives relevant for this episode</strong></h3><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/kubernetes-and-retiring-at-the-top">Kubernetes and retiring at the top</a> with Kelsey Hightower</p><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/the-past-and-future-of-backend-practices">The past and future of modern backend practices</a></p><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/microsoft-ai-dev-tools">Microsoft is dogfooding AI dev tools&#8217; future</a></p><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/how-kubernetes-is-built-with-kat">How Kubernetes is built</a> with Kat Cosgrove</p><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/how-linux-is-built-with-greg-kroah">How Linux is built</a><strong> </strong>with Greg KH</p><h3><strong>Timestamps</strong></h3><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY">00:00</a> Intro</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=129s">02:09</a> Canary deployments at Skype</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=301s">05:01</a> Joining at Octopus Deploy</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=375s">06:15</a> Continuous deployment</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=626s">10:26</a> Why Kubernetes won</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=951s">15:51</a> Kubernetes on-prem</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=1130s">18:50</a> How GitOps works</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=1500s">25:00</a> The uses and limitations of GitOps</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=1864s">31:04</a> The rise of platform teams</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=2151s">35:51</a> How AI is changing CI/CD</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=2389s">39:49</a> Progressive delivery explained</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=2851s">47:31</a> Rollbacks and roll-forwards</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=3014s">50:14</a> Feature flags</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=3272s">54:32</a> How development environments are evolving</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=3460s">57:40</a> Cloud development environments (CDEs)</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=3825s">1:03:45</a> Self-hosting CI/CD</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=4165s">1:09:25</a> Getting started with progressive delivery</p><p><a href="https://www.youtube.com/watch?v=2x0eq5oDOJY&amp;t=4275s">1:11:15</a> Book recommendations</p><h3><strong>References</strong></h3><p><strong>Where to find Robert Erez:</strong></p><p>&#8226; X: <a href="https://x.com/no_erez">https://x.com/no_erez</a></p><p>&#8226; LinkedIn: <a href="https://www.linkedin.com/in/roberterez">https://www.linkedin.com/in/roberterez</a></p><p><strong>Mentions during the episode:</strong></p><p>&#8226; Skype: <a href="https://en.wikipedia.org/wiki/Skype">https://en.wikipedia.org/wiki/Skype</a></p><p>&#8226; Canary deployments: <a href="https://docs.aws.amazon.com/whitepapers/latest/overview-deployment-options/canary-deployments.html">https://docs.aws.amazon.com/whitepapers/latest/overview-deployment-options/canary-deployments.html</a></p><p>&#8226; Octopus Deploy: <a href="https://octopus.com">https://octopus.com</a></p><p>&#8226; Paul Stovell on LinkedIn: <a href="http://linkedin.com/in/paulstovell">linkedin.com/in/paulstovell</a></p><p>&#8226; Kubernetes: <a href="https://kubernetes.io">https://kubernetes.io</a></p><p>&#8226; How Kubernetes is Built with Kat Cosgrove: <a href="https://newsletter.pragmaticengineer.com/p/how-kubernetes-is-built-with-kat">https://newsletter.pragmaticengineer.com/p/how-kubernetes-is-built-with-kat</a></p><p>&#8226; Kubernetes and retiring at the top with Kelsey Hightower: <a href="https://newsletter.pragmaticengineer.com/p/kubernetes-and-retiring-at-the-top">https://newsletter.pragmaticengineer.com/p/kubernetes-and-retiring-at-the-top</a></p><p>&#8226; Docker: <a href="https://www.docker.com">https://www.docker.com</a></p><p>&#8226; HashiCorp: <a href="https://www.hashicorp.com">https://www.hashicorp.com</a></p><p>&#8226; Mitchell Hashimoto&#8217;s new way of writing code: <a href="https://newsletter.pragmaticengineer.com/p/mitchell-hashimoto">https://newsletter.pragmaticengineer.com/p/mitchell-hashimoto</a></p><p>&#8226; Terraform: <a href="https://developer.hashicorp.com/terraform">https://developer.hashicorp.com/terraform</a></p><p>&#8226; GitOps: <a href="https://about.gitlab.com/topics/gitops/">https://about.gitlab.com/topics/gitops/</a></p><p>&#8226; Cursor: <a href="https://cursor.com">https://cursor.com</a></p><p>&#8226; <em>The Phoenix Project: A Novel About IT, DevOps, and Helping Your Business Win</em>: <a href="https://www.amazon.com/Phoenix-Project-DevOps-Helping-Business/dp/0988262592">https://www.amazon.com/Phoenix-Project-DevOps-Helping-Business/dp/0988262592</a></p><p>&#8226; <em>Radical Candor: Be a Kick-Ass Boss Without Losing Your Humanity</em>: <a href="https://www.amazon.com/Radical-Candor-Kick-Ass-Without-Humanity/dp/1250103509">https://www.amazon.com/Radical-Candor-Kick-Ass-Without-Humanity/dp/1250103509</a></p><p>&#8226; <em>Diaspora</em>: <a href="https://www.amazon.com/Diaspora-Novel-Greg-Egan/dp/1597805424">https://www.amazon.com/Diaspora-Novel-Greg-Egan/dp/1597805424</a></p><p>&#8226; <em>Schild&#8217;s Ladder</em>: <a href="https://www.amazon.com/Schilds-Ladder-Novel-Greg-Egan/dp/1597805440">https://www.amazon.com/Schilds-Ladder-Novel-Greg-Egan/dp/1597805440</a></p><p>&#8226; <em>The Clockwork Rocket: Orthogonal Book One</em>: <a href="https://www.amazon.com/Clockwork-Rocket-Orthogonal-Book-One/dp/0575095148">https://www.amazon.com/Clockwork-Rocket-Orthogonal-Book-One/dp/0575095148</a></p><p>&#8212;</p><p>Production and marketing by <a href="https://penname.co/">Pen Name</a>. </p><p></p>]]></content:encoded></item><item><title><![CDATA[Why is Meta destroying its engineering organization?]]></title><description><![CDATA[Leadership at the social media giant has been on an AI-fueled rampage through its engineering org. We report what&#8217;s happened]]></description><link>https://newsletter.pragmaticengineer.com/p/why-is-meta-destroying-its-engineering</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/why-is-meta-destroying-its-engineering</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Tue, 16 Jun 2026 16:27:43 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/eabe4407-76aa-47a3-a8cb-1d955c05bf03_1972x1072.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi &#8211; this is Gergely with a free issue of the Pragmatic Engineer Newsletter. In every issue, I cover challenges at Big Tech and startups through the lens of senior engineers and engineering leaders. Subscribe to get deepdives like this in your inbox, weekly:</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.pragmaticengineer.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.pragmaticengineer.com/subscribe?"><span>Subscribe now</span></a></p><p><em>Many subscribers expense this newsletter to their learning and development budget. If you have such a budget, here&#8217;s<a href="https://blog.pragmaticengineer.com/request-to-expense-the-pragmatic-engineer-newsletter/"> an email you could send to your manager</a>.</em></p><div><hr></div><p>For two decades, Meta had a unique, high-performance engineering org; right up until around April of this year. For the first 20 years of the company&#8217;s existence, it had a &#8220;move-fast-and-break-things&#8221; culture, and in the early 2020s this shifted to a &#8220;move-fast-with-stable-infra&#8221; one. Engineers I know at the company were empowered to do good work, focus on impact, and to balance business interests with solid engineering.</p><p>But in the past few weeks, all that has changed, as if the leadership has been following detailed blueprints on how to demolish a proven, successful engineering culture in the most ruthlessly efficient way possible.</p><p>For the past few weeks, I&#8217;ve been <a href="https://newsletter.pragmaticengineer.com/i/196795826/3-meta-forcefully-assigns-engineers-to-data-labelling-pre-layoff">sharing</a> how bad things are inside the social media company for engineers in one of Silicon Valley&#8217;s most prestigious workplaces. In this article, we walk through what&#8217;s happened, and ask what&#8217;s going through the minds of leadership who are reducing software engineering there from <a href="https://newsletter.pragmaticengineer.com/p/profit-centers-cost-centers">the profit center</a> that it was between 2004 until very recently, to the disdained cost center that it has become in just a few weeks.</p><p>We cover:</p><ol><li><p>Meta&#8217;s pre-AI engineering culture</p></li><li><p>Investing in AI and pressing engineers to always use it</p></li><li><p>Core engineering folks feel treated like trash</p></li><li><p>Most embarrassing-ever outage</p></li><li><p>Internal mess</p></li><li><p>Self-inflicted wounds</p></li><li><p>Is &#8220;AI psychosis&#8221; just a Meta issue?</p></li></ol><h2>1. Meta&#8217;s pre-AI engineering culture</h2><p>I&#8217;d split Meta&#8217;s engineering culture into two eras: &#8220;move fast and break things&#8221;, and then &#8220;move fast with stable infra.&#8221;</p><h3>&#8220;Move fast and break things&#8221;</h3><p>In the 2010s, Facebook&#8217;s unconventional engineering culture had grown somewhat legendary in the tech industry, as the company went against conventional best practices and succeeded massively.</p><p>In 2012, when Facebook hit the billion-users landmark, the company produced a small physical book about its culture which was placed on employees&#8217; desks. Presented with retro propaganda design, it was dubbed the &#8220;little red book&#8221;, co-opting the name of a famous volume of the thoughts of Chairman Mao, (1964).</p><p>At around 70 pages long, Facebook&#8217;s version codified its engineering culture: speed, fearlessness, taking ownership, and thinking outside of the box.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4O-q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe21ca23a-f069-489a-9bf0-fa882e94b9b6_1968x1518.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4O-q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe21ca23a-f069-489a-9bf0-fa882e94b9b6_1968x1518.png 424w, https://substackcdn.com/image/fetch/$s_!4O-q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe21ca23a-f069-489a-9bf0-fa882e94b9b6_1968x1518.png 848w, https://substackcdn.com/image/fetch/$s_!4O-q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe21ca23a-f069-489a-9bf0-fa882e94b9b6_1968x1518.png 1272w, https://substackcdn.com/image/fetch/$s_!4O-q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe21ca23a-f069-489a-9bf0-fa882e94b9b6_1968x1518.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4O-q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe21ca23a-f069-489a-9bf0-fa882e94b9b6_1968x1518.png" width="1456" height="1123" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e21ca23a-f069-489a-9bf0-fa882e94b9b6_1968x1518.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1123,&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_!4O-q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe21ca23a-f069-489a-9bf0-fa882e94b9b6_1968x1518.png 424w, https://substackcdn.com/image/fetch/$s_!4O-q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe21ca23a-f069-489a-9bf0-fa882e94b9b6_1968x1518.png 848w, https://substackcdn.com/image/fetch/$s_!4O-q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe21ca23a-f069-489a-9bf0-fa882e94b9b6_1968x1518.png 1272w, https://substackcdn.com/image/fetch/$s_!4O-q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe21ca23a-f069-489a-9bf0-fa882e94b9b6_1968x1518.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>From the Little Red Book. Source: <a href="https://v1.benbarry.com/project/facebooks-book">Ben Barry</a></em></figcaption></figure></div><p>Back then, mantras in Facebook&#8217;s little red book were also in print across campus, and included:</p><ul><li><p>Move Fast and Break Things</p></li><li><p>Done is Better Than Perfect</p></li><li><p>Fail Harder</p></li><li><p>What Would You Do If You Weren&#8217;t Afraid?</p></li><li><p>Every Day Feels Like a Week</p></li><li><p>The Wright Brothers Did Not Have Pilot Licenses</p></li><li><p>The Foolish Wait</p></li><li><p>Fortune Favors the Bold</p></li></ul><p>There was genuine focus on building good products. Also from the book:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4-Pa!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facc1bcd4-cad8-4d13-882a-b9e9bbd8ff55_2048x1522.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4-Pa!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facc1bcd4-cad8-4d13-882a-b9e9bbd8ff55_2048x1522.png 424w, https://substackcdn.com/image/fetch/$s_!4-Pa!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facc1bcd4-cad8-4d13-882a-b9e9bbd8ff55_2048x1522.png 848w, https://substackcdn.com/image/fetch/$s_!4-Pa!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facc1bcd4-cad8-4d13-882a-b9e9bbd8ff55_2048x1522.png 1272w, https://substackcdn.com/image/fetch/$s_!4-Pa!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facc1bcd4-cad8-4d13-882a-b9e9bbd8ff55_2048x1522.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4-Pa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facc1bcd4-cad8-4d13-882a-b9e9bbd8ff55_2048x1522.png" width="1456" height="1082" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/acc1bcd4-cad8-4d13-882a-b9e9bbd8ff55_2048x1522.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1082,&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_!4-Pa!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facc1bcd4-cad8-4d13-882a-b9e9bbd8ff55_2048x1522.png 424w, https://substackcdn.com/image/fetch/$s_!4-Pa!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facc1bcd4-cad8-4d13-882a-b9e9bbd8ff55_2048x1522.png 848w, https://substackcdn.com/image/fetch/$s_!4-Pa!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facc1bcd4-cad8-4d13-882a-b9e9bbd8ff55_2048x1522.png 1272w, https://substackcdn.com/image/fetch/$s_!4-Pa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facc1bcd4-cad8-4d13-882a-b9e9bbd8ff55_2048x1522.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>More from Facebook&#8217;s Little Red Book</em></figcaption></figure></div><h3>&#8220;Move fast with stable infra&#8221; culture</h3><p>In 2022, I did what is one of the longest deepdives we&#8217;ve published on the topic of <a href="https://newsletter.pragmaticengineer.com/p/facebook">Meta&#8217;s engineering culture</a>. By then, things had evolved, and much of any former recklessness was gone, replaced by the principle of moving fast, but with stable infra. Here&#8217;s how I described Meta&#8217;s engineering culture then:</p><blockquote><p>&#8220;<strong>The culture is incredibly engineering-centric: much more than most of Big Tech. </strong>This might come from Mark Zuckerberg being an engineer himself, or because much of the innovation in the early days of Facebook came from engineers.</p><p><strong>Focus on individual impact.</strong> Impact has been the bread and butter of the focus at Facebook. This is very true since the early days, and the focus on generating impact remains.</p><p>One detail in common with most Big Tech firms is that both the engineering culture and general culture focus so much on individual impact. This results in some people focusing on short-term, measurable wins and assuming that teamwork and split wins between groups might be less rewarded.</p><p><strong>The lack of rigid processes.</strong> Facebook seems to have the least amount of processes or standardization across all of Big Tech. Don&#8217;t even try to compare it to<a href="https://newsletter.pragmaticengineer.com/p/amazon?s=w"> Amazon&#8217;s engineering culture</a> and the countless formal processes there. But even compared to companies like Google, Microsoft or Uber, Facebook&#8217;s processes are much looser. Most of this comes from the engineering-centric nature of the company and engineers disliking processes.</p><p><strong>Surprisingly little emphasis on testing, documentation or code comments.</strong> You&#8217;ll find shockingly little automated testing and documentation at Facebook, compared to the rest of Big Tech. Inline code comments are also very rare.</p><p><strong>A founder-engineer driven company. </strong>Facebook is one of the few Big Tech firms whose founder is an engineer, and still is the CEO. Netflix is the other one where founder and co-CEO Reed Hastings was also a software engineer before starting the company. Amazon was the other example of this until recently, but it&#8217;s not the case at Google or Apple. There are good examples of smaller companies like Cloudflare, but they&#8217;re all younger than Facebook.</p><p><strong>Bootcamp</strong>. A unique onboarding process, unlike what any other Big Tech firms offer. We cover this more in the<a href="https://newsletter.pragmaticengineer.com/i/55330545/bootcamp-and-onboarding"> Bootcamp &amp; onboarding section.</a>&#8221;</p></blockquote><p>Also, Facebook, as a product, has one of the <a href="https://newsletter.pragmaticengineer.com/p/shipping-to-production">most sophisticated auto rollout systems</a> in the industry. Instagram has a battle-tested infrastructure where it was almost trivial <a href="https://newsletter.pragmaticengineer.com/p/building-the-threads-app">to launch a new social network (Threads)</a> with 100 million users served in its first week.</p><p>Engineers whom I knew inside the company are capable, motivated, and product-minded, and their work was appreciated. CEO, Mark Zuckerberg, was influential: he personally coded the first version of Facebook, had stayed close to engineering, and valued software engineers very much. Engineers there felt they were working inside a profit center.</p><h2>2. Investing in AI and pressing engineers to always use it</h2><p>Meta has been the only company among the big five of Apple, Microsoft, Amazon, Google, and itself not to own a hardware platform or operating system. Apple has the iPhone, iPad and Macs, Google has Android, ChromeOS and Pixel phones, Microsoft has Windows, and Amazon has the Kindle.</p><p>Stepping back, it looks as though the Mark Zuckerberg of today has resolved not to miss a platform opportunity, after the company failed to build its own mobile OS or mobile phone during the 2010s.</p><p>This is one reason for investing so much in virtual reality (VR) with Oculus, and in augmented reality with the Meta Glasses. Facebook changed its name to Meta in 2021, back when it looked like VR &#8211; and the metaverse &#8211; could be massive. Billions was spent on ensuring Meta would be the market leader in this space. But once again, VR didn&#8217;t go mainstream; since the end of the pandemic, popular interest in the segment has died down considerably.</p><p>When it became clear that AI would become a mega-trend in 2022, Zuckerberg didn&#8217;t miss it: he assembled the internal FAIR group (Fundamental AI Research team) as well as a GenAI product organization and released a series of open-weight AI models:</p><ul><li><p><strong>Llama 1</strong>: released in Feb 2023, three months after ChatGPT, built by FAIR</p></li><li><p><strong>Llama 2</strong>: in June 2023, built by the GenAI product organization (as well as all subsequent Llama models)</p></li><li><p><strong>Llama 3</strong>: in April 2024. This model was Meta&#8217;s most competitive LLM of all, and gained momentum in adoption across the industry</p></li><li><p><strong>Llama 4</strong>: in April 2025. This model was <a href="https://newsletter.pragmaticengineer.com/i/161033486/metas-latest-llama-release-disappoints">deeply disappointing</a></p></li></ul><p><strong>In June that year, Meta acquired a 49% stake in Scale AI to reboot its AI efforts </strong>for a whopping $14.8B, and brought in Scale AI&#8217;s CEO, Alexandr Wang to take over Meta&#8217;s AI strategy. The acquisition of Chinese startup Manus AI for $2B is currently in question after China <a href="https://newsletter.pragmaticengineer.com/i/196004322/china-blocks-meta-from-buying-manus">blocked</a> the deal from being completed.</p><p>Based on the investment made into Scale AI and Wang, it&#8217;s pretty clear that Meta &#8211; and Zuckerberg &#8211; is determined to build a state-of-the-art LLM that can be competitive with the latest versions of Claude and ChatGPT. But Meta has to start pretty much from scratch, and it&#8217;s up to Alexandr Wang to deliver.</p><p>Scale AI brings in a very specific kind of expertise to Meta, as one of the best in the industry in:</p><ul><li><p><strong>Training data and labeling: </strong>Scale started, and is still best known, as a provider of high-quality labeled datasets for machine learning and AI training, including code, text, image, video, etc.</p></li><li><p><strong>RLHF and fine-tuning: </strong>A RLHF (reinforcement learning from human feedback) flow which Scale runs, where people give feedback for foundation models, as a &#8220;human in the loop&#8221; data engine that many leading AI labs use to create better LLMs.</p></li></ul><p>Wang seems to have a very broad reign to do what he has been an expert in: creating training data, doing data labeling and RLHF. This is being pulled off with the labor of Meta&#8217;s engineering workforce, and by surveilling it.</p><p><strong>Problem #1: Tracking keystrokes and mouse clicks, with no option to opt out. </strong>In late April, Meta told engineers they were being enrolled into a system that tracks every keystroke and click, to produce training data for Meta&#8217;s new AI. There&#8217;s no way to opt out.</p><p>Needless to say, this is invasive and raises privacy questions: If you log into your personal bank account, does the tool track you? What about when you&#8217;re writing a personal email, or responding to a personal call? Meta held no consultation and there are no workarounds; just a top-down decision being pushed through.</p><p>This month, Reuters <a href="https://www.reuters.com/world/meta-scales-back-ai-mouse-clicks-tool-citing-employee-concerns-2026-06-02/">reported</a> that people&#8217;s concerns there are finally being heard:</p><blockquote><p>&#8220;Meta is dialing back elements of its plan to collect employee mouse movements, keystrokes and other actions for use as AI &#8203;training data, it said in an internal memo on Tuesday, following weeks &#8203;of angry pushback from staffers.</p><p>New controls will allow employees to pause &#8288;the data collection for up to 30 minutes at a time and &#8203;request exemptions from the initiative, according to the memo, authored by Stephane Kasriel, &#8203;a vice president in Meta&#8217;s AI model-building Superintelligence Labs unit.&#8221;</p></blockquote><p>From talking with current Meta engineers, I understand the logging system has not been rolled out in the UK due to data protection regulation.</p><p><strong>Problem #2: 30-50% of engineers on core teams have been forcefully reassigned to data labeling </strong>and RLHF, upsetting folks even more.<strong> </strong>Also starting in late April, product engineering teams received a mandate from above, whereby 30-50% of engineers were to leave the team and join the ADO org (Agent Data Optimisation).</p><p><strong>&#8220;Forceful&#8221; reassignment is very relevant here because of Meta&#8217;s traditional engineering culture. </strong>Between its founding in 2004 and until last year, Meta gave engineers autonomy to choose where they work and what they work on. This was structural to how the company worked:</p><ul><li><p>Engineers were not hired for a specific team (save for at the Staff+, levels, in some cases). They were hired to the company</p></li><li><p>During a 6-week bootcamp, new hires got familiar with Meta&#8217;s engineering culture and chose a team</p></li><li><p>Team matching meant talking with multiple teams who had headcount, doing small work with them, and finding a match</p></li><li><p>Internal transfers were easy, and often initiated by engineers</p></li></ul><p>Team selection via bootcamp started to die down in around 2024, but any Meta engineer with at least two years&#8217; tenure knows that previously they chose what to work on, and of course, could pick the most impactful thing to work on. And then, out of the blue, they&#8217;re assigned to a division where the impact is not clear, the work is menial, and doing it too long will surely hurt their career prospects.</p><p><strong>&#8220;Data labeling&#8221; is more involved work, even though a bit repetitive.</strong> There are labeling tasks, where you create a website, then look at it and decide if it looks good or not, and give this feedback: this is the &#8220;typical&#8221; data labeling. But this is the less frequent type of work. But then there are more involved AI training tasks, which looks like this:</p><ul><li><p>Come up with a task that the AI should do</p></li><li><p>Then write the tests that confirm the result</p></li><li><p>Package all of this up into a Docker container, using <a href="https://github.com/harbor-framework/harbor">Harbor framework</a></p></li><li><p>Then read the code that the AI writes - often doing this based on feedback from several models, and give it feedback</p></li></ul><p>This work is not easy to do &#8212; and you can see why you need good software engineers to do it! &#8212; but it gets repetitive really quickly. Most engineers who I talked to said that they found it hard to do this work motivated day-in, day-out. Then again, I did talk with an engineer inside the org who said that by varying the technologies they use, and challenging themselves, they found this work motivating and interesting! This engineer expects there to be more software engineering work coming up, after the phase of training passes. <em>There&#8217;s a lesson here: when life gives you lemons, you can either complain about it, or you can make lemonade, like this dev has done so.</em></p><p>This training work is secretive across the AI industry, and vendors are offering $100+ per hour for devs to do this type of work. There are rumors across the industry that OpenAI and Anthropic spends more on these training environments (to make the models great at coding) than the model training run itself!</p><p><strong>Infrastructure and security teams were hit especially hard by reassignments. </strong>I talked with several engineers in infra orgs, who had 30-50% of their teams drafted into the ADO org. And in some cases, it was the best engineers who left.</p><p>One engineer told me that the whole situation feels like the movie, The Hunger Games, when tributes are randomly selected and then removed from their environment, to something completely different. Except, at Meta, many more folks are being affected, with between three and five from a 10-person team going from building products used by hundreds of millions, to giving human feedback on AI-generated GitHub repos, over and over. So, a wider impact than in the Hunger Games, but with less drastic consequences.</p><p><strong>Around 6,500 people are in the ADO org, more than at OpenAI and Anthropic. </strong>Roughly four to five thousand of these are software engineers. Meta has around 25,000 engineers, meaning that one in every 5-6 software engineers may now find themselves doing data labeling full time.</p><p>As you can imagine, people are actively open to new positions, and nobody is updating their job title on LinkedIn and elsewhere to &#8220;data labeling at Meta.&#8221;</p><p>I&#8217;ve spoken with people in this role and they don&#8217;t like doing it, and feel upset about the top-down decision making. The silver lining is that they still have a job, have retained their salary, and were not part of layoffs. They still have time to leave Meta for something that pays comparably and is not a data labeling job.</p><h2>3. Core engineering folks feel treated like trash</h2><p><strong>Problem #3: a month-long waiting game, stoking fear across the company. </strong>On 20 April, Reuters <a href="https://www.reuters.com/world/meta-targets-may-20-first-wave-layoffs-additional-cuts-later-2026-2026-04-17/">reported</a> that Meta planned to lay off 10% of staff in a month&#8217;s time, and Meta confirmed the news, meaning there was a period of four weeks when everyone knew that they could be unemployed very soon.</p><p>Forced reassignments to data labeling started to happen. As I covered <a href="https://newsletter.pragmaticengineer.com/i/196795826/3-meta-forcefully-assigns-engineers-to-data-labelling-pre-layoff">at the time:</a></p><blockquote><p>&#8220;Understandably, there are mixed feelings about this redeployment [to data labeling], with layoffs coming soon. On Wednesday, 20 May, Meta will announce layoffs. Perhaps those moved to do data labeling could actually be &#8220;safer&#8221; than colleagues on product teams. Of course, this is speculation, but it would be cruel if Meta cut devs reassigned to data labeling.&#8221;</p></blockquote><p><strong>Problem #4: Performance review is hyper-aggressive at Meta, so devs optimize all metrics. </strong>The internal performance review process, PSC (Performance Summary Cycle), is very stringent, compared to Google and Apple, I&#8217;ve learned. Managers inside Meta &#8220;fight&#8221; over the pay packets of their employees, which involves &#8220;knocking down&#8221; the packet of engineers on other teams, so their direct reports are ranked higher. It&#8217;s common to weaponize metrics in this process &#8211; be that business impact, the number of code reviews, number of lines of code written, pre-AI (see <a href="https://newsletter.pragmaticengineer.com/p/the-coding-machine-at-meta">our Coding Machine archetype podcast</a> on this.)</p><p>Quotas are handed down to managers for the splits of the workforce to be put in each &#8216;bucket&#8217;, and the internal politics gets heated as managers try to get their reports into higher buckets.</p><p>After a few years, engineers at Meta learn that the best way to not get a bad PSC rating is to have all metrics &#8211; impact, code committed, and other numbers &#8211; higher than their peers&#8217; are. <em>Learn more about <a href="https://newsletter.pragmaticengineer.com/p/performance-calibrations">the internal politics of performance calibrations.</a></em></p><p><strong>Problem #5: tokens are measured as part of perf, so devs aggressively optimize for it. </strong>When layoffs were confirmed, engineers also learned that managers shall inspect token count during perf reviews. This raised worries that those with low token counts might be marked as underperformers and dismissed.</p><p>So, what is the natural reaction to this as an engineer at Meta? They started using AI tools for the sake of generating more tokens. This happened while Meta had an internal token leaderboard, encouraging tokenmaxxing. As I wrote <a href="https://newsletter.pragmaticengineer.com/i/194426825/1-tokenmaxxing-weird-new-trend">on 16 April:</a></p><blockquote><p>&#8220;As per The Information, Meta employees <a href="http://reported">used</a> a total of 60.2 trillion AI tokens (!!) in 30 days. If this was charged at Anthropic&#8217;s API prices, it would cost $900M. Of course, Meta is likely purchasing tokens at a discount, but that could still come in at $100M+ &#8211; in large part from senseless &#8220;tokenmaxxing&#8221;.&#8221;</p></blockquote><p><strong>The biggest problem: people stop caring about real work and focus on performative work. </strong>Let&#8217;s check the four ingredients that Meta&#8217;s leadership has decided to introduce to their workplace:</p><ol><li><p>Tracking the keyboards and mouse clicks of all engineers, where legally possible</p></li><li><p>Reassign a good chunk of engineers to fulltime data labeling</p></li><li><p>Let staff know that 10% of them will be laid off</p></li><li><p>Have a culture where devs optimize for any and all metrics measured during PSC</p></li><li><p>Measure token usage as part of PSC</p></li></ol><p>Shake this mix up well, and what do you get? Two things:</p><ol><li><p><strong>Everyone overuses AI to boost their personal stats. </strong>An engineering workforce that pretends to work with as much AI, and as little human input, as possible. It&#8217;s a strange incentive where an outage caused by a failure to review code properly is not grounds for dismissal, but writing code by hand &#8211; instead of having an AI agent write it &#8211; could cost you your job</p></li><li><p><strong>Every longer-tenured engineer is seeking a new job, or at least considering it.</strong> Those who have been around at Meta longer term have seen enough. Let me describe this visually:</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rXjq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a19e01d-9126-456c-8369-f2663ff69cdc_1590x1074.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rXjq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a19e01d-9126-456c-8369-f2663ff69cdc_1590x1074.png 424w, https://substackcdn.com/image/fetch/$s_!rXjq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a19e01d-9126-456c-8369-f2663ff69cdc_1590x1074.png 848w, https://substackcdn.com/image/fetch/$s_!rXjq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a19e01d-9126-456c-8369-f2663ff69cdc_1590x1074.png 1272w, https://substackcdn.com/image/fetch/$s_!rXjq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a19e01d-9126-456c-8369-f2663ff69cdc_1590x1074.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rXjq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a19e01d-9126-456c-8369-f2663ff69cdc_1590x1074.png" width="1456" height="983" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9a19e01d-9126-456c-8369-f2663ff69cdc_1590x1074.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:983,&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_!rXjq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a19e01d-9126-456c-8369-f2663ff69cdc_1590x1074.png 424w, https://substackcdn.com/image/fetch/$s_!rXjq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a19e01d-9126-456c-8369-f2663ff69cdc_1590x1074.png 848w, https://substackcdn.com/image/fetch/$s_!rXjq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a19e01d-9126-456c-8369-f2663ff69cdc_1590x1074.png 1272w, https://substackcdn.com/image/fetch/$s_!rXjq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a19e01d-9126-456c-8369-f2663ff69cdc_1590x1074.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Why pretty much every engineer at Meta is looking for a way out, visualised</figcaption></figure></div><p>Fresh data seems to confirm that starting in May, a <em>lot</em> more engineers at Meta are looking for an &#8220;out.&#8221; Here&#8217;s how signups to leading Big Tech interview preparation service <a href="http://interviewing.io">interviewing.io</a> from Meta have changed over the last year and a half: we can see a massive jump in May vs the year before, as shared by founder and CEO <a href="https://x.com/alinelernerLLC">Aliner Lerner </a>with us:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fEQS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad3ffe5-21c8-4052-bf15-50c7e286e550_1614x1160.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fEQS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad3ffe5-21c8-4052-bf15-50c7e286e550_1614x1160.png 424w, https://substackcdn.com/image/fetch/$s_!fEQS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad3ffe5-21c8-4052-bf15-50c7e286e550_1614x1160.png 848w, https://substackcdn.com/image/fetch/$s_!fEQS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad3ffe5-21c8-4052-bf15-50c7e286e550_1614x1160.png 1272w, https://substackcdn.com/image/fetch/$s_!fEQS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad3ffe5-21c8-4052-bf15-50c7e286e550_1614x1160.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fEQS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad3ffe5-21c8-4052-bf15-50c7e286e550_1614x1160.png" width="1456" height="1046" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6ad3ffe5-21c8-4052-bf15-50c7e286e550_1614x1160.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1046,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:187267,&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://newsletter.pragmaticengineer.com/i/202307236?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad3ffe5-21c8-4052-bf15-50c7e286e550_1614x1160.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_!fEQS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad3ffe5-21c8-4052-bf15-50c7e286e550_1614x1160.png 424w, https://substackcdn.com/image/fetch/$s_!fEQS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad3ffe5-21c8-4052-bf15-50c7e286e550_1614x1160.png 848w, https://substackcdn.com/image/fetch/$s_!fEQS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad3ffe5-21c8-4052-bf15-50c7e286e550_1614x1160.png 1272w, https://substackcdn.com/image/fetch/$s_!fEQS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad3ffe5-21c8-4052-bf15-50c7e286e550_1614x1160.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><span>Signups to interviewing.io&#8217;s interview prep service from Meta. Source: </span><a href="http://interviewing.io"><span data-color="rgb(17, 85, 204)" style="color: rgb(17, 85, 204);">interviewing.io</span></a><span data-color="rgb(17, 85, 204)" style="color: rgb(17, 85, 204);">.</span></figcaption></figure></div><p><em>(We covered more data from interviewing.io and other interesting data sources in the  deepdive <a href="https://newsletter.pragmaticengineer.com/p/the-job-market-in-2026-part-2">State of the software engineering job market in 2026</a>)</em></p><p>To its credit, Meta has given out generous retention equity packages to several engineers considered key on the remaining teams. These packages make it harder to get matching compensation elsewhere. Still, I talked to one engineer who got an equity top-up, and said that this approach helped him decide to leave as soon as possible because he feels bitter about the lack of autonomy and having no control over things.</p><h2>4. Most embarrassing-ever outage</h2><p>Meta&#8217;s core infra and security teams have suddenly found themselves severely understaffed. Most folks are pushing AI-generated code merged with AI-only reviews, without paying much attention to quality. After all, they&#8217;re dealing with the possibility of unemployment, while firefighting to operate a team without its best engineers whose headcount has been cut in half, all with the knowledge that AI usage could affect their own job security.</p><p><strong>Two weeks ago, on 30 May, the most embarrassing outage in Meta&#8217;s history happened. </strong>Here&#8217;s software engineer Siddharth Sundharam&#8217;s <a href="https://www.0xsid.com/blog/meta-account-takeover-fiasco">summary</a> (emphasis mine):</p><blockquote><p>&#8220;Yesterday, a slew of Instagram accounts, including some high profile ones like the Obama White House account, seemingly got hacked.</p><p>Look, I&#8217;m no spring chicken. I&#8217;ve spent almost a decade and a half identifying vulnerabilities and exploits at unicorn scale, but this is hands down the most unserious, &#8220;almost too stupid to be true&#8221; of them all.</p><p>The Takeover Flow:</p><p>Step 01: Faking the Location &amp; Initiating Support. All the attacker needs to kick this off is your account username. Then, they hop on a VPN or proxy close to your city so Instagram&#8217;s security algorithms don&#8217;t suspect a thing. (You can quite easily get this from your public profile or &#8220;About&#8221; section or a hundred other ways.) Once it looks like the request is coming from the correct region, they tell the Meta support AI that the account is hacked and ask it to send the verification codes to an arbitrary email address they control.</p><p>Step 02: That&#8217;s It. Really, that&#8217;s it.</p><p><strong>The first proper zero auth password reset I&#8217;ve seen in production.</strong> There appears to be no additional check as to whether the email being given is actually something the user has used before. Once the AI sends the security code to the attacker&#8217;s email, the attacker passes it right back to complete the verification. The platform hands over a fresh password reset link, granting full ownership to the attacker.&#8221;</p></blockquote><p>This is a security breach in which Meta left its extra-secure, reinforced front door unlocked, so that anyone could come in, and there was no alarm to notify anybody when it happened! It seemed Meta only noticed when users started reporting it on social media!</p><p><strong>From talking with folks inside Meta, I&#8217;ve learned that AI was at the heart of this outage. </strong>AI-generated, AI-reviewed code, and security teams being gutted were together the cause of this beyond-embarrassing incident. I poked around, and here&#8217;s what I gathered:</p><ul><li><p>Instagram&#8217;s Trust and Safety Team lost around 50% of its staff to data labeling and layoffs. Some of the most senior folks were drafted onto AI training tasks.</p></li><li><p>AI-generated changes that saw no human input, just another AI code review, were very common during the last two months, across the codebase. The change that caused this outage looked like one of these</p></li><li><p>Normally, the Trust and Safety team would be on top of monitoring and alerting of security breaches,  but it is currently in full disarray due to rapid, internal disorganization.</p></li></ul><p><strong>Meta&#8217;s Chief Security Officer resigned the very next day. </strong>The outage was resolved on Monday, 1 June, and an investigation started as part of the SEV process. On Tuesday, Meta&#8217;s Chief Information and Security Officer (CISO), Guy Rosen, <a href="https://www.bloomberg.com/news/articles/2026-06-02/meta-s-rosen-former-head-of-election-integrity-to-depart">announced</a> his departure.</p><p>Coincidence? I suspect not: the CISO might have stepped down if they warned against the Security org being gutted but were then ignored, and so no longer trusts leadership. I also imagine the CISO didn&#8217;t have the idea to move a good half of Instagram&#8217;s security team over to data labeling.</p><p><em>As a note, the previously worst outage was all Meta services going down for seven hours <a href="https://en.wikipedia.org/wiki/2021_Facebook_outage">in 2021</a>, due to a DNS / BGP configuration issue. It was a bad outage, but Meta handled the follow up well, in my opinion. After that 2021 outage, Meta <a href="https://engineering.fb.com/2021/10/04/networking-traffic/outage/">shared a postmortem and apology</a>. It has not done so for the latest Instagram account takeover outage.</em></p><h2>5. Internal mess</h2><p>Wired <a href="https://www.wired.com/story/mark-zuckerberg-meta-employee-meeting-interrupt-ai/?_sp=2e37591b-dcf6-4632-bbf6-bc7c570a4b65.1781609124066">shares more details</a> on just how bad the situation is inside Meta, right now:</p><blockquote><p>&#8220;Someone interrupted a livestreamed, employee-only presentation at Meta earlier this week with an expletive-filled outburst about &#8220;being the company&#8217;s bitch,&#8221; according to a recording heard by WIRED. The individual then asked the people leading the call to write to a specific Meta AI executive and &#8220;tell him that he&#8217;s a piece of shit.&#8221;</p><p>The incident, which took place on a call open to thousands of employees, reflects growing frustration inside the company&#8217;s Applied AI team, which was formed in March to support the work of AI researchers at Meta Superintelligence Labs. Three current employees tell WIRED there is widespread dissatisfaction with how Meta assembled the unit of about 6,500 engineers and product managers and the drudgework they allege they have been assigned to improve AI models.</p><p>&#8220;It&#8217;s literally the gulag,&#8221; one of the employees claims. &#8220;You have zero purpose in life all of a sudden, you barely interact with anyone, you just have these tasks every week.&#8221;</p></blockquote><p>There&#8217;s more: Meta&#8217;s Chief Product Officer, Chris Cox, reportedly admitted to staff that Meta&#8217;s upper leadership (the folks above him, meaning the C-level at Meta) created the mess. Also from Wired:</p><blockquote><p>During a meeting this week open to all employees at Instagram, Meta chief product officer Chris Cox addressed the &#8220;difficult&#8221; and &#8220;brutal&#8221; environment created by the &#8220;insanity of this company&#8221; in the past few months, according to a recording heard by WIRED. Cox applauded Instagram employees for launching features and serving around 2 billion users amid what he compared to &#8220;running a marathon in the middle of a hailstorm and then, like, your teammate gets replaced and then we&#8217;re recording you.&#8221;</p><p>&#8220;It&#8217;s like what the fuck,&#8221; he said, drawing laughs, before repeating himself. &#8220;It is like what the fuck.&#8221;</p></blockquote><h2>6. Self-inflicted wounds</h2><p>So, is there an ultimate source of the &#8220;insanity of this company&#8221;, as CPO Chris Cox put it? Engineers whom I talked to point the finger at two individuals: Mark Zuckerberg and Alexandr Wang. Zuckerberg has full control over the business, and has made the decisions to reallocate a good part of engineering folks to data labeling, to roll out tracking software, and to lay off 10% of staff when Meta achieved record revenue and profits. As the CEO, the buck clearly stops with him.</p><p>But it&#8217;s hard to unsee that &#8211; outside of layoffs &#8211; everything that Meta is doing is taken from the Scale AI playbook, and that surely comes from Wang:</p><ul><li><p>Mandatory keystroke and mouse tracking to generate training data</p></li><li><p>Forced data labeling with 4,500+ engineers is to generate high-quality RLHF, surely for Meta&#8217;s under-construction coding LLM</p></li><li><p>Taking away the best engineers from the heart of the business is surely signed off by Mark Zuckerberg, believing that it is more important for Meta to train a coding AI than it is to operate its core business like Instagram, Facebook or Messenger reliably. Oh, did I mention that on Saturday (12 June) Facebook and Instagram <a href="https://www.tomsguide.com/news/live/meta-instagram-facebook-messenger-down-6-12-2026-live-updates">had another SEV0</a>, that is, a full-on outage?</p></li></ul><p>Before all this happened, Meta <a href="https://newsletter.pragmaticengineer.com/i/195258143/3-morale-at-meta-hits-all-time-low">was on track</a> to overtake Google as the world&#8217;s #1 ads business by the end of the year. But for some reason, Mark Zuckerberg decided that building a coding LLM is more important.</p><p><strong>Meta&#8217;s leadership is now trying to undo all the damage they have done. </strong>Wired reports that Meta CTO, Andrew Bosworth, <a href="https://www.wired.com/story/andrew-bosworth-meta-employees-unrest/">admitted</a> to staff that the AI reorg was atrocious and committed to better communication in the future.</p><p>To me, it looks obvious that Zuckerberg doesn&#8217;t care how engineers feel about the massive changes, and that Bosworth likely ignored the chaos, all while engineers know for a fact that the next AI model matters more than they do to the business. Bosworth also said that employees will have access to AI coaching tools.<em> Very considerate, given the situation!</em></p><p>Based on all I&#8217;ve learned, Meta&#8217;s engineering culture is dead because leadership has made it clear that engineering at the company is <a href="https://newsletter.pragmaticengineer.com/p/profit-centers-cost-centers">a cost center</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_!uzPs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F220f78ee-73a9-4d1a-bfbd-371f36315d97_1678x1092.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uzPs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F220f78ee-73a9-4d1a-bfbd-371f36315d97_1678x1092.png 424w, https://substackcdn.com/image/fetch/$s_!uzPs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F220f78ee-73a9-4d1a-bfbd-371f36315d97_1678x1092.png 848w, https://substackcdn.com/image/fetch/$s_!uzPs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F220f78ee-73a9-4d1a-bfbd-371f36315d97_1678x1092.png 1272w, https://substackcdn.com/image/fetch/$s_!uzPs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F220f78ee-73a9-4d1a-bfbd-371f36315d97_1678x1092.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uzPs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F220f78ee-73a9-4d1a-bfbd-371f36315d97_1678x1092.png" width="1456" height="948" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/220f78ee-73a9-4d1a-bfbd-371f36315d97_1678x1092.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:948,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2270482,&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://newsletter.pragmaticengineer.com/i/202307236?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F220f78ee-73a9-4d1a-bfbd-371f36315d97_1678x1092.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_!uzPs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F220f78ee-73a9-4d1a-bfbd-371f36315d97_1678x1092.png 424w, https://substackcdn.com/image/fetch/$s_!uzPs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F220f78ee-73a9-4d1a-bfbd-371f36315d97_1678x1092.png 848w, https://substackcdn.com/image/fetch/$s_!uzPs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F220f78ee-73a9-4d1a-bfbd-371f36315d97_1678x1092.png 1272w, https://substackcdn.com/image/fetch/$s_!uzPs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F220f78ee-73a9-4d1a-bfbd-371f36315d97_1678x1092.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Nice while it lasted</em></figcaption></figure></div><p>Needless to say, I hope my assessment is way off, but I&#8217;ve seen nothing yet from Mark Zuckerberg and Alexandr Wang &#8211; the two executives creating this current mess &#8211; to suggest it is.<em> There may be a short time period where, if major changes like data labeling assignments and staff tracking are undone, then things at Meta could return to normal. The longer the current conditions persist, the more tenured engineers will surely leave.</em></p><h2>7. Is &#8220;AI psychosis&#8221; just a Meta issue?</h2><p>It&#8217;s tragic to see a technical founder at Meta so focused on AI that he neglects the engineers who built the heart of his company. But is Meta a one-off exception?</p><p>Mitchell Hashimoto (creator of Ghostty, founder of HashiCorp) <a href="https://x.com/mitchellh/status/2055380239711457578?s=20">says</a> he is seeing similar behavior by other founders (emphasis mine:)</p><blockquote><p>&#8220;<strong>I strongly believe there are entire companies right now under heavy &#8220;AI psychosis&#8221; and it&#8217;s impossible to have rational conversations about it with them.</strong> I can&#8217;t name any specific people because they include personal friends I deeply respect, but I worry about how this plays out.</p><p>I lived through the great MTBF vs MTTR (mean-time-between-failure vs. mean-time-to-recovery) reckoning of infrastructure during the transition to cloud and cloud automation. All those arguments are rearing their ugly heads again but now it&#8217;s... the whole software development industry (maybe the whole world, really).</p><p>It&#8217;s frightening, because &#8216;psychosis folks&#8217; operate under an almost absolute &#8220;MTTR is all you need&#8221; mentality: &#8220;it&#8217;s fine to ship bugs because the agents will fix them so quickly and at a scale humans can&#8217;t do!&#8221; We learned in infrastructure that MTTR is great but you can&#8217;t yeet resilient systems entirely.</p><p>The main issue is I don&#8217;t even know how to bring this up to people I know personally, because bringing this topic up leads to immediate dismissals like &#8220;no no, it has full test coverage&#8221;, or &#8220;bug reports are going down&#8221; or something, which just don&#8217;t paint the whole picture.</p><p>We already learned this lesson once in infrastructure: you can automate yourself into a very resilient catastrophe machine. Systems can appear healthy by local metrics while globally becoming incomprehensible. Bug reports can go down while latent risk explodes. Test coverage can rise while semantic understanding falls. Changes happen so fast that nobody notices the underlying architecture decaying.</p><p>I worry.&#8221;</p></blockquote><p>The takeover outage at Instagram was exactly like this: the engineering team dropped the quality bar for AI-generated and AI-reviewed code, probably expecting that they could recover quickly from failures. And they did indeed recover&#8230; after the damage was done, high-profile Instagram accounts were hacked, and the system was compromised, all very publicly.</p><p>Mitchell highlights the specific concern of founders over-estimating the capabilities of AI, and consequently casting aside sensible safeguards when shipping code to production.</p><h2>Takeaways</h2><p>Most of us probably have something to learn from the disastrous events at Meta caused by hyper-focus on AI to the exclusion of people who are the lifeblood of that company.<strong> </strong>In some good news, I&#8217;m hearing that in the UK, some of the 10% layoffs have suddenly been cancelled: at the end of the mandatory consultation period, several infra and security teams are learning that no engineers on their team will be let go, as originally expected.</p><p>Meta has a booming business, and is already a beneficiary of AI via increased ads revenue. Meanwhile, my Facebook feed is filled with fake, AI-generated videos, with hundreds of comments from bots and people who seemingly don&#8217;t realize it&#8217;s AI. It all seems like just more content for Meta to show ads next to.</p><p>And yet, despite business booming, Meta&#8217;s leadership has gone on a crusade to inflict the most damage possible on its engineering org. Apparently, they&#8217;re now learning that most of it was pointless.</p><p><strong>If you&#8217;re in a leadership position and feeling the temptation to make drastic org changes for AI-related reasons, take a deep breath and see where it left Meta. </strong>Meanwhile, If you&#8217;re an engineer at a company whose leadership is over-indexing on AI, consider forwarding this article as additional context.</p><p>If you&#8217;re hiring standout engineers who are extremely hands-on with AI, then it&#8217;s never been easier to get talent from Meta, than right now. Every engineer I know at the company is an extremely early adopter of AI, and knows how to build products and AI infra. These folks have soured on the company and its leadership. Meta&#8217;s loss of talent will be the gain of other startups and the rest of Big Tech; it&#8217;s one benefit of AI that&#8217;s probably a bit unexpected &#8211; not least of all by Meta!</p><p>It seems like the old mantra of &#8220;move fast and break things&#8221; has now extended to Meta&#8217;s engineering org itself, with the company&#8217;s rush to over-invest in AI, so it will avoid missing the latest mega-trend in the tech industry.</p>]]></content:encoded></item><item><title><![CDATA[The Pulse: Did Anthropic’s new model just boost rival Codex’s market share?]]></title><description><![CDATA[Anthropic&#8217;s new model, Fable, has restrictions many users find unacceptable. Also: a new trend of smart model routing, Coinbase&#8217;s core service has no automatic cross-zone failover, and more.]]></description><link>https://newsletter.pragmaticengineer.com/p/did-anthropics-new-model-just-boost</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/did-anthropics-new-model-just-boost</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Thu, 11 Jun 2026 16:26:58 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!TeI_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0e46905-09eb-42df-ba51-722c91d4fb63_1316x1018.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>The Pulse is a series covering events, insights, and trends within Big Tech and startups. Notice an interesting event or trend? Hit reply and share it with me.</em></p><p>Today, we cover:</p><ol><li><p><strong>Anthropic alienates customers with Fable&#8217;s data retention and nerf policies. </strong>Anthropic&#8217;s latest mode, Fable, stores customer prompts and data for 30+ days and performs worse if Anthropic thinks devs&#8217; usage could potentially pose a commercial threat. The launch is an urgent reminder to have an off-ramp from Claude if you want to be able to vote with your feet.</p></li><li><p><strong>New trend: smart model routing. </strong>Are there any &#8216;intelligent&#8217; router solutions out there which select the right model for the right task? I looked into it, and there are a few options. More suggestions welcome!</p></li><li><p><strong>Reliability fail: No automated zone failover for Coinbase&#8217;s global trading service. </strong>Back in 2016, Uber had a cross-region failover for its core business. Ten years later, Coinbase does not, so it&#8217;s little wonder the platform suffered an embarrassing 10-hour outage. The big mess is a head scratcher.</p></li><li><p><strong>Industry pulse. </strong>Anthropic and OpenAI file for IPOs, open source project quits GitHub after maintainer banned without appeal, Opendoor &#8220;reshores&#8221; jobs from India to the US with AI-native engineers, and more.</p></li><li><p><strong>Are LLMs eroding software engineering skills? </strong>A software engineer admits they feel increasingly useless due to how capable LLMs are, in an article that has resonated with lots of folks. My sense is that we give too much credit to LLMs, while underestimating our own capabilities and understanding.</p></li></ol><h2>1. Anthropic&#8217;s new model release is a reminder to have an off-ramp plan from Claude</h2>
      <p>
          <a href="https://newsletter.pragmaticengineer.com/p/did-anthropics-new-model-just-boost">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[State of the software engineering job market in 2026, part 2]]></title><description><![CDATA[Deepdive into the tech jobs market with exclusive data revealing AI labs are more attractive than Big Tech, native mobile & frontend roles are declining, management&#8217;s &#8220;great flattening&#8221;, and more]]></description><link>https://newsletter.pragmaticengineer.com/p/the-job-market-in-2026-part-2</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/the-job-market-in-2026-part-2</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Tue, 09 Jun 2026 16:35:53 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!6pbI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d04df85-7afe-471e-8b70-a8f9e83800df_2048x1452.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>What&#8217;s going on in today&#8217;s job market? We try to answer that big question in this second part of our deepdive into the tech employment market, following <strong><a href="https://newsletter.pragmaticengineer.com/p/state-of-the-job-market-2026">Part 1 on the tech jobs market in 2026</a>,</strong> published two weeks ago.</p><p>First of all, a big thank you to partner teams for sharing exclusive details for this deepdive:</p><ul><li><p><strong><a href="http://interviewing.io">Interviewing.io</a></strong>: anonymous mock interviews with engineers from top companies. Thanks to founder and CEO, Aline Lerner.</p></li><li><p><strong><a href="http://workforce.ai">Workforce.ai</a>,</strong> built by Live Data Technologies, which monitors 1M+ job changes and 300M+ employment validations monthly, across companies, roles, levels, functions, industries, and locations. Special thanks to Alex Hamilton for his input.</p></li><li><p><strong><a href="https://www.signalfire.com/">SignalFire</a></strong>: a VC firm with a standout data analysis team. Ordinarily, their data is used to give their portfolio companies a major commercial advantage, but they made an exception to share some for this article. Special thanks to Asher Bantock.</p></li><li><p><strong><a href="https://www.trueup.io/">TrueUp</a></strong>: a platform that scans every open job in Big Tech, top startups, and scaleups, typically paying in the top two tiers of the trimodal software engineering compensation model. Thanks, Amit Taylor.</p></li></ul><p>Today, we cover:</p><ol><li><p><strong>Top AI labs are now more attractive than Big Tech.</strong> Anthropic is most in demand among job candidates for interview preparation services. Along with OpenAI, it&#8217;s almost certainly the place with the most competition for jobs in tech.</p></li><li><p><strong>Harder for new grads &amp; interns to get hired. </strong>Data shows that intern intakes have fallen, even as software engineering recruitment recovers. Large tech companies take on half as many interns as before, and candidates&#8217; work and educational backgrounds matter more than ever.</p></li><li><p><strong>Mobile and frontend demand drops, AI &amp; FDE surges. </strong>Frontend engineer titles are disappearing fastest across the industry, followed by native iOS and Android ones.</p></li><li><p><strong>AI engineering comp &gt; software engineering comp.</strong> AI engineers are more in demand than software engineers, and get higher compensation offers, especially with equity. At the 80th percentile in the US, $300K+ base salaries are the norm now for senior engineers.</p></li><li><p><strong>Management&#8217;s &#8220;great flattening&#8221; continues. </strong>There are fewer engineering managers for each engineer across the industry, and fewer VP of engineering and director of engineering posts at Big Tech.</p></li><li><p><strong>Big Tech seniority &amp; tenure keep rising.</strong> Since the end of zero interest rates in 2023, it&#8217;s as if there&#8217;s fewer ways to tempt Big Tech workers to switch jobs, so they remain in situ.</p></li><li><p><strong>Interview preparation signups: what do they indicate? </strong>Companies doing mass layoffs tend to see the biggest surge in devs signing up to practice interviews. A list of the top 20 companies from where engineers are preparing to interview elsewhere.</p></li><li><p><strong>Where engineers go after Big Tech. </strong>From Amazon, they go pretty much everywhere. From Google, Apple &amp; Meta, it&#8217;s mostly to AI labs. Microsoft is where the most ex-workers become their own bosses by working for themselves next.</p></li></ol><p>As a reminder, <strong><a href="https://newsletter.pragmaticengineer.com/p/state-of-the-job-market-2026">in Part 1,</a></strong> we covered:</p><ul><li><p>Software engineering recruitment: trending up, mostly</p></li><li><p>Big Tech and publicly-traded companies</p></li><li><p>Who&#8217;s hiring the most software engineers?</p></li><li><p>AI engineering: explosive demand</p></li><li><p>Who&#8217;s hiring the most AI engineers?</p></li><li><p>Is AI engineering replacing software engineering hiring?</p></li></ul><p>Let&#8217;s get into the latest data:</p><h2>1. Top AI labs now more attractive than Big Tech</h2><p>In Part 1 of this mini-series, we cover the <a href="https://newsletter.pragmaticengineer.com/i/199358573/4-ai-engineering-explosive-demand">exploding</a> demand for AI engineering:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Cq3z!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf7df771-58ec-466d-af9b-b7c281eb1af6_2048x1223.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Cq3z!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf7df771-58ec-466d-af9b-b7c281eb1af6_2048x1223.png 424w, https://substackcdn.com/image/fetch/$s_!Cq3z!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf7df771-58ec-466d-af9b-b7c281eb1af6_2048x1223.png 848w, https://substackcdn.com/image/fetch/$s_!Cq3z!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf7df771-58ec-466d-af9b-b7c281eb1af6_2048x1223.png 1272w, https://substackcdn.com/image/fetch/$s_!Cq3z!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf7df771-58ec-466d-af9b-b7c281eb1af6_2048x1223.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Cq3z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf7df771-58ec-466d-af9b-b7c281eb1af6_2048x1223.png" width="1456" height="869" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bf7df771-58ec-466d-af9b-b7c281eb1af6_2048x1223.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:869,&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_!Cq3z!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf7df771-58ec-466d-af9b-b7c281eb1af6_2048x1223.png 424w, https://substackcdn.com/image/fetch/$s_!Cq3z!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf7df771-58ec-466d-af9b-b7c281eb1af6_2048x1223.png 848w, https://substackcdn.com/image/fetch/$s_!Cq3z!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf7df771-58ec-466d-af9b-b7c281eb1af6_2048x1223.png 1272w, https://substackcdn.com/image/fetch/$s_!Cq3z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf7df771-58ec-466d-af9b-b7c281eb1af6_2048x1223.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Source: <a href="https://www.trueup.io/">TrueUp</a></em></figcaption></figure></div><p>AI engineering job openings have increased 60% in the past year at top companies, while software engineering openings grew by 7% in the same places. We also found that Big Tech is significantly growing AI engineering headcount:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xt6D!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbdb3bd7-3f9b-499c-ba4e-9a17d3e616b3_1873x1440.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xt6D!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbdb3bd7-3f9b-499c-ba4e-9a17d3e616b3_1873x1440.png 424w, https://substackcdn.com/image/fetch/$s_!xt6D!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbdb3bd7-3f9b-499c-ba4e-9a17d3e616b3_1873x1440.png 848w, https://substackcdn.com/image/fetch/$s_!xt6D!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbdb3bd7-3f9b-499c-ba4e-9a17d3e616b3_1873x1440.png 1272w, https://substackcdn.com/image/fetch/$s_!xt6D!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbdb3bd7-3f9b-499c-ba4e-9a17d3e616b3_1873x1440.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xt6D!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbdb3bd7-3f9b-499c-ba4e-9a17d3e616b3_1873x1440.png" width="1456" height="1119" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dbdb3bd7-3f9b-499c-ba4e-9a17d3e616b3_1873x1440.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1119,&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_!xt6D!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbdb3bd7-3f9b-499c-ba4e-9a17d3e616b3_1873x1440.png 424w, https://substackcdn.com/image/fetch/$s_!xt6D!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbdb3bd7-3f9b-499c-ba4e-9a17d3e616b3_1873x1440.png 848w, https://substackcdn.com/image/fetch/$s_!xt6D!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbdb3bd7-3f9b-499c-ba4e-9a17d3e616b3_1873x1440.png 1272w, https://substackcdn.com/image/fetch/$s_!xt6D!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbdb3bd7-3f9b-499c-ba4e-9a17d3e616b3_1873x1440.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>AI engineering headcount growth at Big Tech. We look into Microsoft&#8217;s spike <a href="https://newsletter.pragmaticengineer.com/i/199358573/what-happened-in-mid-2025-at-microsoft">in Part 1.</a> Source: Workforce.ai</em></figcaption></figure></div><h3>Anthropic: most in demand</h3><p>New data suggests that the two biggest AI labs are attracting the most candidates to apply for their AI engineering roles, which is pretty predictable.</p><p><a href="http://interviewing.io">Interviewing.io</a> is a job interview preparation service which offers coaching for clients who are getting ready for interviews at specific companies. Based on the number of mentions by clients, Anthropic is the one most candidates are preparing for with paid coaching, and it&#8217;s not even close:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6pbI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d04df85-7afe-471e-8b70-a8f9e83800df_2048x1452.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6pbI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d04df85-7afe-471e-8b70-a8f9e83800df_2048x1452.png 424w, https://substackcdn.com/image/fetch/$s_!6pbI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d04df85-7afe-471e-8b70-a8f9e83800df_2048x1452.png 848w, https://substackcdn.com/image/fetch/$s_!6pbI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d04df85-7afe-471e-8b70-a8f9e83800df_2048x1452.png 1272w, https://substackcdn.com/image/fetch/$s_!6pbI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d04df85-7afe-471e-8b70-a8f9e83800df_2048x1452.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6pbI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d04df85-7afe-471e-8b70-a8f9e83800df_2048x1452.png" width="1456" height="1032" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2d04df85-7afe-471e-8b70-a8f9e83800df_2048x1452.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1032,&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_!6pbI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d04df85-7afe-471e-8b70-a8f9e83800df_2048x1452.png 424w, https://substackcdn.com/image/fetch/$s_!6pbI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d04df85-7afe-471e-8b70-a8f9e83800df_2048x1452.png 848w, https://substackcdn.com/image/fetch/$s_!6pbI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d04df85-7afe-471e-8b70-a8f9e83800df_2048x1452.png 1272w, https://substackcdn.com/image/fetch/$s_!6pbI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d04df85-7afe-471e-8b70-a8f9e83800df_2048x1452.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Most popular employers in coaching prep. Source: <a href="http://interviewing.io">interviewing.io</a></em></figcaption></figure></div><p>It&#8217;s also notable that OpenAI (16% of candidates) gets around the same share as Google (17%) and other large tech companies (17%). Combined, Anthropic and OpenAI account for 51% of all interviewing.io coaching requests. For context, interviewing.io only added coaching for frontier labs 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_!ooWY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9f08f71-3c32-402e-9459-e3346146041e_1584x1312.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ooWY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9f08f71-3c32-402e-9459-e3346146041e_1584x1312.png 424w, https://substackcdn.com/image/fetch/$s_!ooWY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9f08f71-3c32-402e-9459-e3346146041e_1584x1312.png 848w, https://substackcdn.com/image/fetch/$s_!ooWY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9f08f71-3c32-402e-9459-e3346146041e_1584x1312.png 1272w, https://substackcdn.com/image/fetch/$s_!ooWY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9f08f71-3c32-402e-9459-e3346146041e_1584x1312.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ooWY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9f08f71-3c32-402e-9459-e3346146041e_1584x1312.png" width="1456" height="1206" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c9f08f71-3c32-402e-9459-e3346146041e_1584x1312.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1206,&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_!ooWY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9f08f71-3c32-402e-9459-e3346146041e_1584x1312.png 424w, https://substackcdn.com/image/fetch/$s_!ooWY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9f08f71-3c32-402e-9459-e3346146041e_1584x1312.png 848w, https://substackcdn.com/image/fetch/$s_!ooWY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9f08f71-3c32-402e-9459-e3346146041e_1584x1312.png 1272w, https://substackcdn.com/image/fetch/$s_!ooWY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9f08f71-3c32-402e-9459-e3346146041e_1584x1312.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Weekly coaching demand for Anthropic vs OpenAI. Source: <a href="http://interviewing.io">interviewing.io</a></em></figcaption></figure></div><p>There are a few potential causes of the surge of interest in Anthropic:</p><ul><li><p><strong>OpenAI replaces Anthropic as AI supplier for the US&#8217;s novel &#8216;Department of War&#8217;. </strong>In early March, the US Government controversially declared Anthropic a &#8220;supply chain risk&#8221;, and appointed OpenAI as its<a href="https://newsletter.pragmaticengineer.com/i/190020609/anthropic-versus-department-of-war"> AI supplier</a>, after Anthropic raised concerns about the future use of AI in mass surveillance and fully autonomous weapons. This raised suspicions that OpenAI agreed to cross &#8216;red lines&#8217;.</p></li><li><p><strong>Anthropic&#8217;s market dominance continues.</strong> Claude Code is the most popular developer tool, as found by our AI tooling survey <a href="https://newsletter.pragmaticengineer.com/p/ai-tooling-2026">in February</a>. It seems little has changed.</p></li><li><p><strong>Anthropic&#8217;s value exceeds OpenAI&#8217;s.</strong> In March, Anthropic <a href="https://www.cnbc.com/2026/05/28/anthropic-open-ai-startup-value.html">raised</a> a $65B funding round at a $965B valuation, making it more valuable than OpenAI for the first time.</p></li><li><p><strong>Anthropic files to go public first. </strong>Last week, Anthropic <a href="https://www.anthropic.com/news/confidential-draft-s1-sec">filed</a> to go public, beating OpenAI which <a href="https://www.reuters.com/technology/openai-files-us-ipo-after-anthropic-ai-giants-head-public-markets-2026-06-08/">has done so a week later.</a></p></li></ul><p>Anthropic also recruited the most in-demand AI researcher, Andrej Karpathy, <a href="https://newsletter.pragmaticengineer.com/i/198733941/andrej-karpathy-joins-anthropic">in May</a>. My sense is that between the two labs, Anthropic has more momentum for the time being, and has perhaps acquired a &#8216;halo effect&#8217; with its seemingly principled stance. It&#8217;s not surprising that it&#8217;s attracting more candidates.</p><h3>Where are AI labs hiring from?</h3><p>We looked into the sources of recruits to the three most in-demand AI labs: Anthropic, OpenAI, and Google DeepMind. Here&#8217;s what we found:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JX6C!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F518f80bc-c98b-4927-8d71-a3030970abd0_2048x1823.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JX6C!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F518f80bc-c98b-4927-8d71-a3030970abd0_2048x1823.png 424w, https://substackcdn.com/image/fetch/$s_!JX6C!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F518f80bc-c98b-4927-8d71-a3030970abd0_2048x1823.png 848w, https://substackcdn.com/image/fetch/$s_!JX6C!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F518f80bc-c98b-4927-8d71-a3030970abd0_2048x1823.png 1272w, https://substackcdn.com/image/fetch/$s_!JX6C!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F518f80bc-c98b-4927-8d71-a3030970abd0_2048x1823.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JX6C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F518f80bc-c98b-4927-8d71-a3030970abd0_2048x1823.png" width="1456" height="1296" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/518f80bc-c98b-4927-8d71-a3030970abd0_2048x1823.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1296,&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_!JX6C!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F518f80bc-c98b-4927-8d71-a3030970abd0_2048x1823.png 424w, https://substackcdn.com/image/fetch/$s_!JX6C!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F518f80bc-c98b-4927-8d71-a3030970abd0_2048x1823.png 848w, https://substackcdn.com/image/fetch/$s_!JX6C!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F518f80bc-c98b-4927-8d71-a3030970abd0_2048x1823.png 1272w, https://substackcdn.com/image/fetch/$s_!JX6C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F518f80bc-c98b-4927-8d71-a3030970abd0_2048x1823.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Where top AI labs recruit from, and where folks go next. Source: <a href="http://workforce.ai">workforce.ai</a></em></figcaption></figure></div><p><strong>Where Anthropic hires from,</strong> in order of popularity:</p><ol><li><p>Google (often Google DeepMind)</p></li><li><p>Meta</p></li><li><p>Stripe</p></li><li><p>Microsoft</p></li><li><p>Amazon (AWS)</p></li><li><p>Databricks</p></li></ol><p><strong>OpenAI</strong>:</p><ol><li><p>Google</p></li><li><p>Meta</p></li><li><p>Apple</p></li><li><p>Stripe</p></li><li><p>Statsig (after OpenAI acquired Statsig)</p></li><li><p>Microsoft</p></li><li><p>Amazon (mostly AWS)</p></li><li><p>Databricks</p></li><li><p>Airbnb</p></li><li><p>NVIDIA</p></li></ol><p><strong>Google DeepMind:</strong></p><ol><li><p>Internal transfer</p></li><li><p>Meta</p></li><li><p>Microsoft</p></li><li><p>Amazon</p></li><li><p>Windsurf</p></li></ol><p><strong>Anthropic has the highest retention rate of all AI labs. </strong>Data from SignalFire found the 2-year retention rate (percentage of employees who stay 2 years) is:</p><ul><li><p>OpenAI: 67%. This is consistent with the rest of Big Tech</p></li><li><p>Google DeepMind: 78%. Well above the rest of Big Tech</p></li><li><p>Anthropic: 80%. Standout, industry-wide!</p></li></ul><p>Consistent with SignalFire&#8217;s 2025 finding, OpenAI 2-year retention was 67% (FAANG-level) versus Anthropic (80%), and DeepMind (78%).</p><h2>2. Harder for graduates &amp; interns to get hired</h2><p>It&#8217;s well known that it&#8217;s getting harder to be hired as an early-career engineer, and new data underlines this.</p><h3>Intern intakes down since 2022</h3><p>Live Data Technologies looked at software engineer vs engineering intern hiring trends at 30-80 US-based tech companies, pinned to 2019 hiring numbers (100% being that year&#8217;s total number of hires). <em>The spread is wide because Live Data Technologies selects the top few dozen companies that meet their criteria for a &#8220;large public tech company&#8221; in their database.</em></p><p><em>The findings:</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_!AwMR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a8c03fc-2d93-46b9-8f1d-f7ea03f39fa5_1986x1976.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AwMR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a8c03fc-2d93-46b9-8f1d-f7ea03f39fa5_1986x1976.png 424w, https://substackcdn.com/image/fetch/$s_!AwMR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a8c03fc-2d93-46b9-8f1d-f7ea03f39fa5_1986x1976.png 848w, https://substackcdn.com/image/fetch/$s_!AwMR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a8c03fc-2d93-46b9-8f1d-f7ea03f39fa5_1986x1976.png 1272w, https://substackcdn.com/image/fetch/$s_!AwMR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a8c03fc-2d93-46b9-8f1d-f7ea03f39fa5_1986x1976.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AwMR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a8c03fc-2d93-46b9-8f1d-f7ea03f39fa5_1986x1976.png" width="1456" height="1449" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6a8c03fc-2d93-46b9-8f1d-f7ea03f39fa5_1986x1976.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1449,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:630932,&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://newsletter.pragmaticengineer.com/i/201325168?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a8c03fc-2d93-46b9-8f1d-f7ea03f39fa5_1986x1976.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_!AwMR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a8c03fc-2d93-46b9-8f1d-f7ea03f39fa5_1986x1976.png 424w, https://substackcdn.com/image/fetch/$s_!AwMR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a8c03fc-2d93-46b9-8f1d-f7ea03f39fa5_1986x1976.png 848w, https://substackcdn.com/image/fetch/$s_!AwMR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a8c03fc-2d93-46b9-8f1d-f7ea03f39fa5_1986x1976.png 1272w, https://substackcdn.com/image/fetch/$s_!AwMR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a8c03fc-2d93-46b9-8f1d-f7ea03f39fa5_1986x1976.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Intern hiring is falling, but not software engineering recruitment. Source: Live Data Technologies</figcaption></figure></div><p>Zooming into intern hiring, here&#8217;s a visualization of it as a percentage of all appointments:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!h7Y-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057dca33-32c5-4180-8fd2-88225a7fd96b_1226x1202.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!h7Y-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057dca33-32c5-4180-8fd2-88225a7fd96b_1226x1202.png 424w, https://substackcdn.com/image/fetch/$s_!h7Y-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057dca33-32c5-4180-8fd2-88225a7fd96b_1226x1202.png 848w, https://substackcdn.com/image/fetch/$s_!h7Y-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057dca33-32c5-4180-8fd2-88225a7fd96b_1226x1202.png 1272w, https://substackcdn.com/image/fetch/$s_!h7Y-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057dca33-32c5-4180-8fd2-88225a7fd96b_1226x1202.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!h7Y-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057dca33-32c5-4180-8fd2-88225a7fd96b_1226x1202.png" width="1226" height="1202" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/057dca33-32c5-4180-8fd2-88225a7fd96b_1226x1202.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1202,&quot;width&quot;:1226,&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_!h7Y-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057dca33-32c5-4180-8fd2-88225a7fd96b_1226x1202.png 424w, https://substackcdn.com/image/fetch/$s_!h7Y-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057dca33-32c5-4180-8fd2-88225a7fd96b_1226x1202.png 848w, https://substackcdn.com/image/fetch/$s_!h7Y-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057dca33-32c5-4180-8fd2-88225a7fd96b_1226x1202.png 1272w, https://substackcdn.com/image/fetch/$s_!h7Y-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057dca33-32c5-4180-8fd2-88225a7fd96b_1226x1202.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Tech companies are hiring fewer interns. Source: Live Data Technologies</figcaption></figure></div><p>Alex Hamilton, analyst at Live Data Technologies, says:</p><blockquote><p>&#8220;We&#8217;ve seen overall software engineering hiring start to come back since the 2023 tough market. However, intern intake just kept falling alongside it, which isn&#8217;t what you&#8217;d normally expect.</p><p><strong>Historically, intern programmes have tended to bounce back pretty quickly once companies start hiring again. </strong>That hasn&#8217;t happened this time, and 2024 and 2025 are the first years in the series where the two lines are moving in opposite directions.</p><p>Where you do see companies holding intern intake steady or growing it, it&#8217;s almost always a reflection of where they are as a business, be that earlier-stage or faster-growing companies, rather than any kind of broader market recovery&#8221;.</p></blockquote><h3>Graduate jobs trending down</h3><p>Anecdotally, we hear new grads continue to have a hard time finding a position. Our new recruitment data on major US tech companies confirms it:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cKU_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc43e6596-e176-420c-87ca-6eaf576ecc69_1362x1352.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cKU_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc43e6596-e176-420c-87ca-6eaf576ecc69_1362x1352.png 424w, https://substackcdn.com/image/fetch/$s_!cKU_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc43e6596-e176-420c-87ca-6eaf576ecc69_1362x1352.png 848w, https://substackcdn.com/image/fetch/$s_!cKU_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc43e6596-e176-420c-87ca-6eaf576ecc69_1362x1352.png 1272w, https://substackcdn.com/image/fetch/$s_!cKU_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc43e6596-e176-420c-87ca-6eaf576ecc69_1362x1352.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cKU_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc43e6596-e176-420c-87ca-6eaf576ecc69_1362x1352.png" width="1362" height="1352" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c43e6596-e176-420c-87ca-6eaf576ecc69_1362x1352.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1352,&quot;width&quot;:1362,&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_!cKU_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc43e6596-e176-420c-87ca-6eaf576ecc69_1362x1352.png 424w, https://substackcdn.com/image/fetch/$s_!cKU_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc43e6596-e176-420c-87ca-6eaf576ecc69_1362x1352.png 848w, https://substackcdn.com/image/fetch/$s_!cKU_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc43e6596-e176-420c-87ca-6eaf576ecc69_1362x1352.png 1272w, https://substackcdn.com/image/fetch/$s_!cKU_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc43e6596-e176-420c-87ca-6eaf576ecc69_1362x1352.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Share of new grad recruitment at 28 large US tech companies. Source: Live Data Technologies</figcaption></figure></div><p>&#8220;New grads&#8221; in this data are software engineers who graduated less than a year before getting a job as a software engineer. In 2025, just one in 10 engineering hires at larger companies were recent grads, down from nearly three in 10 in 2023.</p><h3>Pedigree matters more for new grads</h3><p>We looked closely at the places from where new graduate software engineers are joining US-based tech companies, and found the share of successful candidates from &#8220;elite&#8221; universities is growing:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gBsQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19924b4b-5d21-4c1e-8935-00df0b2a7857_1514x1496.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gBsQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19924b4b-5d21-4c1e-8935-00df0b2a7857_1514x1496.png 424w, https://substackcdn.com/image/fetch/$s_!gBsQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19924b4b-5d21-4c1e-8935-00df0b2a7857_1514x1496.png 848w, https://substackcdn.com/image/fetch/$s_!gBsQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19924b4b-5d21-4c1e-8935-00df0b2a7857_1514x1496.png 1272w, https://substackcdn.com/image/fetch/$s_!gBsQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19924b4b-5d21-4c1e-8935-00df0b2a7857_1514x1496.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gBsQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19924b4b-5d21-4c1e-8935-00df0b2a7857_1514x1496.png" width="1456" height="1439" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/19924b4b-5d21-4c1e-8935-00df0b2a7857_1514x1496.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1439,&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_!gBsQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19924b4b-5d21-4c1e-8935-00df0b2a7857_1514x1496.png 424w, https://substackcdn.com/image/fetch/$s_!gBsQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19924b4b-5d21-4c1e-8935-00df0b2a7857_1514x1496.png 848w, https://substackcdn.com/image/fetch/$s_!gBsQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19924b4b-5d21-4c1e-8935-00df0b2a7857_1514x1496.png 1272w, https://substackcdn.com/image/fetch/$s_!gBsQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19924b4b-5d21-4c1e-8935-00df0b2a7857_1514x1496.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Source: Live Data Technologies</em></figcaption></figure></div><p>By &#8220;elite&#8221; universities, we mean one of the top 20 US colleges for computer science, such as MIT, Stanford, Carnegie Mellon, UC Berkeley, Harvard, Caltech, Georgia Tech, and Cornell.</p><p>Obviously, the influence of these places&#8217; reputations is not a new thing, it&#8217;s what makes them &#8220;elite&#8221; universities, after all. But with new grad hiring down across tech, even graduates from these universities can expect fewer opportunities than before.</p><p>Even so, the pedigree that comes from graduating from a well-known university, or doing an internship at a well-known company, becomes ever more significant as the job market tightens.</p><h2>3. Mobile and frontend demand drops, AI &amp; FDE surges</h2><p>Here&#8217;s interesting data showing the shifting prevalence of job titles on sites like LinkedIn over 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_!B9zQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07b9646e-dece-44bd-ada0-eaa406e5d539_2048x1240.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!B9zQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07b9646e-dece-44bd-ada0-eaa406e5d539_2048x1240.png 424w, https://substackcdn.com/image/fetch/$s_!B9zQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07b9646e-dece-44bd-ada0-eaa406e5d539_2048x1240.png 848w, https://substackcdn.com/image/fetch/$s_!B9zQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07b9646e-dece-44bd-ada0-eaa406e5d539_2048x1240.png 1272w, https://substackcdn.com/image/fetch/$s_!B9zQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07b9646e-dece-44bd-ada0-eaa406e5d539_2048x1240.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!B9zQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07b9646e-dece-44bd-ada0-eaa406e5d539_2048x1240.png" width="1456" height="882" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/07b9646e-dece-44bd-ada0-eaa406e5d539_2048x1240.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:882,&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_!B9zQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07b9646e-dece-44bd-ada0-eaa406e5d539_2048x1240.png 424w, https://substackcdn.com/image/fetch/$s_!B9zQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07b9646e-dece-44bd-ada0-eaa406e5d539_2048x1240.png 848w, https://substackcdn.com/image/fetch/$s_!B9zQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07b9646e-dece-44bd-ada0-eaa406e5d539_2048x1240.png 1272w, https://substackcdn.com/image/fetch/$s_!B9zQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07b9646e-dece-44bd-ada0-eaa406e5d539_2048x1240.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>How engineering titles changed in the last four years. Source: <a href="https://www.signalfire.com/">SignalFire</a></em></figcaption></figure></div><p>Some takeaways:</p><ul><li><p><strong>AI engineering&#8217;s on fire.</strong> This is not surprising and is evident throughout our study.</p></li><li><p><strong>Forward Deployed Engineers (FDE) are growing rapidly</strong>. We covered the sudden demand for FDEs <a href="https://newsletter.pragmaticengineer.com/p/forward-deployed-engineers">in 2025</a>, and this year we&#8217;re seeing the FDE role heat up again.</p></li><li><p><strong>Modest increase in sales engineers: </strong>Sales engineers help close large, B2B-type, deals, and are typical at companies selling to enterprises. The rise in prevalence of this position suggests more companies are targeting enterprise-scale clients. Also, my sense is that FDEs can operate like sales engineers.</p></li><li><p><strong>There are fewer native mobile engineers. </strong>In 2022, I observed <a href="https://newsletter.pragmaticengineer.com/p/native-vs-cross-platform">a drop in demand</a> for native iOS and Android engineers. Cross-platform frameworks being more capable today may contribute to fewer places investing in native applications, and a fall in demand for this discipline overall. Is the &#8220;golden age&#8221; of native mobile development over, with its standalone native iOS, native Android, and web teams for a single product?</p></li><li><p><strong>Frontend-only engineers are disappearing. </strong>This is one of the most interesting trends in the data. I&#8217;ve observed full-stack engineers become the norm at many places, who can do both frontend and backend development. Especially with AI, there is no reason a proficient frontend engineer should not work on backend as well, so, I expect &#8220;pure&#8221; frontend engineers will be employed only in larger companies, where demand exists for things like building a design system. <em>We cover more on this topic in the deepdive, <a href="https://newsletter.pragmaticengineer.com/p/design-systems-for-software-engineers">Design systems for software engineers</a>.</em></p></li></ul><h2>4. AI engineering comp &gt; software engineering comp</h2><p>One poorly-kept secret in tech is that although software engineering compensation is very good at Big Tech and top startups, it&#8217;s superior for AI engineering jobs at the same places &#8211; and even better at leading AI labs:</p>
      <p>
          <a href="https://newsletter.pragmaticengineer.com/p/the-job-market-in-2026-part-2">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Kubernetes and retiring at the top with Kelsey Hightower]]></title><description><![CDATA[Kelsey Hightower reflects on his journey from self-taught technician to Google Distinguished Engineer, sharing lessons on open source, Kubernetes, AI, and building technology that serves people.]]></description><link>https://newsletter.pragmaticengineer.com/p/kubernetes-and-retiring-at-the-top</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/kubernetes-and-retiring-at-the-top</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Wed, 03 Jun 2026 17:59:17 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/200337027/2edfd165a115b333c23c09f1e7d8aa9c.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<h3>Stream the latest episode</h3><p><strong>Listen and watch now on <a href="https://youtu.be/UlXpOGIpITM">YouTube</a>, <a href="https://open.spotify.com/episode/25qDLvBsunU9WJ3YpiftCG">Spotify</a>, and <a href="https://podcasts.apple.com/us/podcast/the-pragmatic-engineer/id1769051199">Apple</a>.</strong> See the episode transcript at the top of this page, and timestamps for the episode at the bottom.</p><h3><strong>Brought to You by</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HVBB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a9e89e3-866b-4248-91a9-e6461be25cd8_1497x131.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HVBB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a9e89e3-866b-4248-91a9-e6461be25cd8_1497x131.png 424w, https://substackcdn.com/image/fetch/$s_!HVBB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a9e89e3-866b-4248-91a9-e6461be25cd8_1497x131.png 848w, https://substackcdn.com/image/fetch/$s_!HVBB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a9e89e3-866b-4248-91a9-e6461be25cd8_1497x131.png 1272w, https://substackcdn.com/image/fetch/$s_!HVBB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a9e89e3-866b-4248-91a9-e6461be25cd8_1497x131.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HVBB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a9e89e3-866b-4248-91a9-e6461be25cd8_1497x131.png" width="1456" height="127" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1a9e89e3-866b-4248-91a9-e6461be25cd8_1497x131.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:127,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:41380,&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://newsletter.pragmaticengineer.com/i/200337027?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a9e89e3-866b-4248-91a9-e6461be25cd8_1497x131.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_!HVBB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a9e89e3-866b-4248-91a9-e6461be25cd8_1497x131.png 424w, https://substackcdn.com/image/fetch/$s_!HVBB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a9e89e3-866b-4248-91a9-e6461be25cd8_1497x131.png 848w, https://substackcdn.com/image/fetch/$s_!HVBB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a9e89e3-866b-4248-91a9-e6461be25cd8_1497x131.png 1272w, https://substackcdn.com/image/fetch/$s_!HVBB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a9e89e3-866b-4248-91a9-e6461be25cd8_1497x131.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p><strong>&#8226; <a href="https://antithesis.com/pragmatic">Antithesis</a></strong> &#8211; managing infra has gone through a mindset shift: from an imperative approach (with the likes of Puppet and Ansible) to a declarative one (with the likes of Terraform and Kubernetes). Software development is going through a similar shift with AI agents &#8211; and Antithesis is the declarative testing tool that can keep up with these AI agents. <a href="https://antithesis.com/pragmatic">Learn more</a></p><p><strong>&#8226; <a href="https://buildkite.com/pragmatic">Buildkite </a></strong>&#8211; the CI used by companies like OpenAI, Anthropic, Uber, Shopify, Airbnb, Ramp and many more. Buildkite was stress-tested at the largest scale inside companies solving some of the hardest engineering problems. It&#8217;s built to absorb whatever your coding agents throw at the build queue, today. <a href="https://buildkite.com/pragmatic">Learn more.</a></p><p><strong>&#8226; <a href="http://sentry.io/pragmatic">Sentry</a></strong> &#8211; application monitoring software built by developers, for developers. With Sentry MCP and CLI, set up a helpful flow like &#8220;when a production error fires, have an agent investigate it, pulling all the error context that Sentry already has. <a href="http://sentry.io/pragmatic">Check out Sentry</a></p><h3><strong>In this episode</strong></h3><p>Kelsey Hightower went from a self-taught technician installing DSL modems to becoming one of Google&#8217;s elite Distinguished Engineers, whom the CEO of Microsoft personally tried to recruit. Hightower&#8217;s career achievements are rooted in hard work and self-directed learning, and today he&#8217;s one of the most influential voices in modern infrastructure, through his talks, open source work, and writing.</p><p>In this episode of The <em>Pragmatic Engineer podcast</em>, Kelsey and I cover his unconventional path into tech and the lessons he&#8217;s learned during three decades in the industry. We discuss his entrepreneurial years, building a reputation through open source, the rise of containers and Kubernetes, and his time at Google during one of the most consequential periods in cloud computing.</p><p>He recounts how a job offer from a big tech giant led to the biggest raise of his career, what prompted him to slow down after years of career acceleration, and we also discuss his perspective on AI. Throughout, Kelsey keeps a simple idea front of mind: that technology is ultimately about people. Whether it&#8217;s infrastructure, leadership, careers, or AI, he argues that the goal is not to build technology for its own sake; it&#8217;s to solve meaningful human problems.</p><h3>My observations from the conversation with Kelsey</h3><p>This is a long episode with many compelling, previously unshared stories. As such, there&#8217;s a lengthier-than-usual list of 15 interesting takeaways.</p><div id="youtube2-UlXpOGIpITM" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;UlXpOGIpITM&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/UlXpOGIpITM?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>1. Kelsey&#8217;s career path is incredibly inspiring. </strong>From modest beginnings with no role models in technology, Kelsey worked his way up from technician, to software engineer, and grew into one of the most respected Distinguished Engineers at Google. His drive to improve and to always do his very best work is infectious. My sense is Kelsey would never be satisfied with &#8220;good enough&#8221; and has always aimed for standout work. This approach is rare and has opened doors that stay closed to average work.</p><p><strong>2. Treat every public talk like a job interview.</strong> Kelsey&#8217;s career inflection points often came from people in audiences offering him jobs. He joined CoreOS because the team watched him PXE-boot CoreOS live on stage; afterwards, they wanted to recruit him.</p><p><strong>3. &#8220;Some people have 20 years&#8217; tenure &#8211; but only one year of experience.&#8221; </strong>Doing the exact same work for years does not advance your skillset. For example, Kelsey observed people in a call center doing identical manual, ticket-closing work for two decades, who never thought of automating themselves out of even some of it. Kelsey started doing this almost immediately and gained valuable new experience.</p><p><strong>4. Side hustles and doing your own thing teach you business like no IC job can.</strong> Before becoming a software engineer at Google, Kelsey was a manager for his comedian friend, operated a computer store, and did IT contracting. These gigs taught him logistics, planning, and about money. All this helped him be far more effective at talking with executives and acting as an executive sponsor inside Google.</p><p><strong>5. Business owners get paid last, but not employees. </strong>Kelsey ran a computer store in Atlanta that did well, but he closed it down to become an employee. As he puts it: &#8220;Employees get paid first, the owner gets paid last, and there are months where you get paid last, or you don&#8217;t get paid at all.&#8221; Kelsey hit a point in his life where he valued the predictability of a salary over volatile income.<br><br><strong>6. Leading without influence: don&#8217;t tell people the answers, let them be discovered.</strong> Kelsey knew that Kubernetes was difficult to onboard and needed the Kubernetes team&#8217;s help to fix it. To get this done, he got the Kubernetes team to install K8s with no scripts, watched them struggle, and then guided them to what was missing. After people discovered the problems themselves, they set about fixing them. Kelsey noted that people uncovering problems on their own works better than an issue being handed down to them.</p><p><strong>7. Can you explain what your startup does without mentioning AI?</strong> When Kelsey researches startups seeking his advice, he challenges founders to not say &#8220;AI&#8221; once. This means that they must explain the <em>actual</em> value their company creates. One unexpected benefit of this is that it often reveals there are easier, cheaper ways to achieve a goal than with AI.</p><p><strong>8. &#8220;Look in the mirror&#8221;: AI&#8217;s impact on the software engineering profession. </strong>Kelsey says that when complaining about AI, engineers should bear in mind how their industry has disrupted and displaced jobs in other parts of the economy. It might be one reason why affected software engineers get seemingly little public sympathy.</p><p><strong>9. Don&#8217;t let agents run loose on raw infra; provide guardrails and context.</strong> As Kelsey puts it, &#8220;I&#8217;ve seen what humans do when you just give them the AWS console. Watch what Claude&#8217;s going to do!&#8221;<br><br><strong>10. It&#8217;s okay to interview when you&#8217;re happy in a job. Just put your ego aside and check out the market.</strong> Kelsey wasn&#8217;t looking and didn&#8217;t want to bother, but his wife pushed him, saying Kelsey should see what&#8217;s out there. She was right!</p><p><strong>11. It&#8217;s very rare to get an extra zero put on your compensation figure &#8211; but it happened. </strong>Kelsey was a successful, well-paid Google engineer when Microsoft made him an offer that 10x&#8217;d his compensation. When Kelsey told Google he was planning to take the offer, it matched the offer, proving that his market value had massively increased. It shows that being well paid doesn&#8217;t necessarily mean you&#8217;re being paid at the correct market rate.</p><p><strong>12. Satya Nadella: &#8220;We gave you an offer as if you were running away from something. We should have given you something to run towards.&#8221;</strong> Microsoft&#8217;s CEO himself acknowledged that when trying to recruit Kelsey, the Windows maker should&#8217;ve focused on the mission and growth opportunities, instead of just throwing money at him. It&#8217;s a lesson that goes well beyond this specific case.</p><p><strong>13. Reframe money as &#8220;freedom tokens&#8221; instead of status.</strong> Once Kelsey stopped caring about impressing others with displays of wealth, money became a means to exit the game, not an end in itself. This reframing changed what he optimized for: to have enough money to not <em>have</em> to work for someone else.</p><p><strong>14. Kelsey&#8217;s advisory setup: 1-year, no cliff, 10-year exercise window, plus a retainer. </strong>Kelsey advises select startups and has learned a few important things:</p><ul><li><p>Advisory shares <em>alone</em> are usually worth nothing, mostly due to dilution and the tax traps of exercising them.</p></li><li><p>Cash retainers ensure he is not working for free. It also means the companies paying him expect impact, and real impact is worth paying for &#8211; by serious companies, that is.</p></li></ul><p>Referrals are the fuel for winning more advisory work, and these are based on outcomes. Kelsey advised Pixie Labs, which was later acquired by New Relic, partly thanks to Kelsey&#8217;s involvement. Word got around that Kelsey&#8217;s advisory could make an impact, so more VCs and founders started reaching out to him.<br><br><strong>15. Apply &#8220;intentional living&#8221; everywhere, not just where it&#8217;s comfortable.</strong> As a long-time minimalist, Kelsey is intentional about possessions, but realized he was being unintentional in other areas. For example, he now reads lyrics while listening to music to actually understand a song. Intentionality is a habit you extend, not a one-time setting.</p><h3><strong>The Pragmatic Engineer deepdives relevant for this episode</strong></h3><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/career-paths-for-software-engineers">Career paths for software engineers at large tech companies</a></p><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/the-past-and-future-of-backend-practices">The past and future of modern backend practices</a></p><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/how-kubernetes-is-built-with-kat">How Kubernetes is built</a></p><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/how-linux-is-built-with-greg-kroah">How Linux is built</a></p><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/the-staff-engineers-path">The Staff Engineer&#8217;s Path: You&#8217;re a role model now (sorry!)</a></p><h3><strong>Timestamps</strong></h3><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM">00:00</a> Intro</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=214s">03:34</a> Kelsey&#8217;s first job at McDonald&#8217;s</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=304s">05:04</a> His non-traditional path into tech</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=705s">11:45</a> Landing his first tech job with an A+ certification</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=933s">15:33</a> His entrepreneurial years</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=1185s">19:45</a> Joining Google as a data center technician</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=1668s">27:48</a> Learning automation at a Rackspace spinoff</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=2006s">33:26</a> Moving into financial services</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=3000s">50:00</a> Building a reputation through open source</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=3235s">53:55</a> From configuration management to containers</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=4100s">1:08:20</a> The rise of Kubernetes</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=5105s">1:25:05</a> Why he almost joined NASA instead of Google</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=5360s">1:29:20</a> Defining DevRel at Google</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=5900s">1:38:20</a> Demonstrating impact at Google</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=6080s">1:41:20</a> Microsoft&#8217;s offer</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=6920s">1:55:20</a> Learning how to slow down</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=7599s">2:06:39</a> Advising and investing</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=8103s">2:15:03</a> A people-first view of GenAI</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=8667s">2:24:27</a> Using AI with guardrails</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=8906s">2:28:26</a> Matching AI to the task</p><p><a href="https://www.youtube.com/watch?v=UlXpOGIpITM&amp;t=9366s">2:36:06</a> Staying relevant in the AI era</p><h3><strong>References</strong></h3><p><strong>Where to find Kelsey Hightower:</strong></p><p>&#8226; X: <a href="https://x.com/kelseyhightower">https://x.com/kelseyhightower</a></p><p>&#8226; LinkedIn: <a href="https://www.linkedin.com/in/kelsey-hightower-849b342b1">https://www.linkedin.com/in/kelsey-hightower-849b342b1</a></p><p><strong>Mentions during the episode:</strong></p><p>&#8226; TI-BASIC: <a href="https://en.wikipedia.org/wiki/TI-BASIC">https://en.wikipedia.org/wiki/TI-BASIC</a></p><p>&#8226; Georgia HOPE scholarships: <a href="https://www.gafutures.org/hope-state-aid-programs/hope-zell-miller-scholarships/hope-scholarship/">https://www.gafutures.org/hope-state-aid-programs/hope-zell-miller-scholarships/hope-scholarship</a></p><p>&#8226; BellSouth: <a href="https://en.wikipedia.org/wiki/BellSouth">https://en.wikipedia.org/wiki/BellSouth</a></p><p>&#8226; FreeBSD: <a href="https://en.wikipedia.org/wiki/FreeBSD">https://en.wikipedia.org/wiki/FreeBSD</a></p><p>&#8226; Puppet: <a href="https://www.puppet.com">https://www.puppet.com</a></p><p>&#8226; Rackspace: <a href="https://www.rackspace.com">https://www.rackspace.com</a></p><p>&#8226; TSYS: <a href="https://www.tsys.com">https://www.tsys.com</a></p><p>&#8226; James Turnbull&#8217;s website: <a href="https://jamesturnbull.net">https://jamesturnbull.net</a></p><p>&#8226; Kubernetes: <a href="https://kubernetes.io">https://kubernetes.io</a></p><p>&#8226; Red Hat: <a href="https://www.redhat.com">https://www.redhat.com</a></p><p>&#8226; Terraform: <a href="https://developer.hashicorp.com/terraform">https://developer.hashicorp.com/terraform</a></p><p>&#8226; Docker: <a href="https://www.docker.com">https://www.docker.com</a></p><p>&#8226; Mitchell Hashimoto&#8217;s new way of writing code: <a href="https://newsletter.pragmaticengineer.com/p/mitchell-hashimoto">https://newsletter.pragmaticengineer.com/p/mitchell-hashimoto</a></p><p>&#8226; CoreOS: <a href="https://fedoraproject.org/coreos">https://fedoraproject.org/coreos</a></p><p>&#8226; Mesos: <a href="https://en.wikipedia.org/wiki/Apache_Mesos">https://en.wikipedia.org/wiki/Apache_Mesos</a></p><p>&#8226; Go: <a href="https://go.dev">https://go.dev</a></p><p>&#8226; GopherCon: <a href="https://www.gophercon.com">https://www.gophercon.com</a></p><p>&#8226; Rob Pike&#8217;s blog: <a href="https://commandcenter.blogspot.com">https://commandcenter.blogspot.com</a></p><p>&#8226; Russ Cox&#8217;s website: <a href="https://swtch.com/~rsc/">https://swtch.com/~rsc/</a></p><p>&#8226; Brad Fitzpatrick&#8217;s website: <a href="https://bradfitz.com">https://bradfitz.com</a></p><p>&#8226; Erik St. Martin on X: <a href="https://x.com/erikstmartin">https://x.com/erikstmartin</a></p><p>&#8226; Brian Ketelsen&#8217;s website: <a href="https://brian.dev">https://brian.dev</a></p><p>&#8226; Billie Cleek on LinkedIn: <a href="https://www.linkedin.com/in/billie-cleek-677b0830">https://www.linkedin.com/in/billie-cleek-677b0830</a></p><p>&#8226; KubeCon: <a href="https://events.linuxfoundation.org/kubecon-cloudnativecon-north-america/">https://events.linuxfoundation.org/kubecon-cloudnativecon-north-america/</a></p><p>&#8226; How Kubernetes is Built with Kat Cosgrove: <a href="https://newsletter.pragmaticengineer.com/p/how-kubernetes-is-built-with-kat">https://newsletter.pragmaticengineer.com/p/how-kubernetes-is-built-with-kat</a></p><p>&#8226; <em>Kubernetes: Up and Running: Dive into the Future of Infrastructure</em>: <a href="https://www.amazon.com/Kubernetes-Running-Dive-Future-Infrastructure/dp/1491935677">https://www.amazon.com/Kubernetes-Running-Dive-Future-Infrastructure/dp/1491935677</a></p><p>&#8226; Brian Grant on LinkedIn: <a href="https://www.linkedin.com/in/bgrant0607">https://www.linkedin.com/in/bgrant0607</a></p><p>&#8226; Eric Tune on LinkedIn: <a href="https://www.linkedin.com/in/eric-tune-3033693">https://www.linkedin.com/in/eric-tune-3033693</a></p><p>&#8226; Dawn Chen on LinkedIn: <a href="https://www.linkedin.com/in/chendawnhomepage">https://www.linkedin.com/in/chendawnhomepage</a></p><p>&#8226; Satya Nadella on X: <a href="https://x.com/satyanadella">https://x.com/satyanadella</a></p><p>&#8226; Hit Refresh: The Quest to Rediscover Microsoft&#8217;s Soul and Imagine a Better Future for Everyone: <a href="https://www.amazon.com/Hit-Refresh-Rediscover-Microsofts-Everyone-ebook/dp/B01HOT5SQA">https://www.amazon.com/Hit-Refresh-Rediscover-Microsofts-Everyone-ebook/dp/B01HOT5SQA</a></p><p>&#8226; Thomas Kurian on LinkedIn: <a href="https://www.linkedin.com/in/thomas-kurian-469b6219">https://www.linkedin.com/in/thomas-kurian-469b6219</a></p><p>&#8226; Liz Rice on LinkedIn: <a href="https://www.linkedin.com/in/lizrice">https://www.linkedin.com/in/lizrice</a></p><p>&#8226; Pixilabs: <a href="https://www.pixilabs.com">https://www.pixilabs.com</a></p><p>&#8226; Datadog: <a href="https://www.datadoghq.com">https://www.datadoghq.com</a></p><p>&#8226; Guillermo Rauch on X: <a href="https://x.com/rauchg">https://x.com/rauchg</a></p><p>&#8226; Massdriver: <a href="https://www.massdriver.cloud">https://www.massdriver.cloud</a></p><p>&#8226; Here&#8217;s everything the iPhone has replaced in the last 10 years: <a href="https://www.cnbc.com/2017/06/29/everything-the-iphone-has-destroyed-in-the-last-10-years.html">https://www.cnbc.com/2017/06/29/everything-the-iphone-has-destroyed-in-the-last-10-years.html</a></p><p>&#8226; Wix: <a href="https://www.wix.com">https://www.wix.com</a></p><p>&#8226; Lambda: <a href="https://aws.amazon.com/lambda">https://aws.amazon.com/lambda</a></p><p>&#8212;</p><p>Production and marketing by <a href="https://penname.co/">Pen Name</a>. </p><p></p>]]></content:encoded></item><item><title><![CDATA[Ideas: slow down to speed up when working with AI agents]]></title><description><![CDATA[Devs are generating twice as much code (or more) than just 6 months ago, which is a problem for quality, reliability, and tech debt. A rational fix is available for these, but who&#8217;s acting rationally?]]></description><link>https://newsletter.pragmaticengineer.com/p/ideas-slow-down-to-speed-up-when</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/ideas-slow-down-to-speed-up-when</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Tue, 02 Jun 2026 16:42:23 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!vg8z!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2eb13752-d141-4958-948f-223fa5cf58fa_1024x559.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Scheduling update: this week, there will be a podcast episode on Wednesday and no The Pulse on Thursday.</em></p><p>I&#8217;m in Budapest, Hungary, this week, for Craft Conference, where I&#8217;ll be giving a keynote presentation alongside other speakers, including software engineering legend Kent Beck, who&#8217;s been <a href="https://newsletter.pragmaticengineer.com/p/tdd-ai-agents-and-coding-with-kent">on the podcast</a>, Hillel Wayne, a formal methods expert and the author of &#8216;<a href="https://leanpub.com/logic">Logic for Programmers</a>&#8217;, and Titus Winters, lead author of <a href="https://abseil.io/resources/swe-book">Software Engineering at Google</a>.</p><p>The title of my keynote is<em> &#8220;Slow down to speed up&#8221;, </em>and I&#8217;ve been thinking about this topic a lot recently. Here are some things I&#8217;ve been seeing that I feel are relevant&#8230;</p><h3>AI coding tools now used by pretty much all software engineers &#8211; that&#8217;s fast!</h3>
      <p>
          <a href="https://newsletter.pragmaticengineer.com/p/ideas-slow-down-to-speed-up-when">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The Pulse: a trend of trying to cut back on AI spend within eng departments?]]></title><description><![CDATA[Top-down and bottom-up efforts to rationalize AI token spend, interesting AI coding stats from Cursor, GCP suspends $2M/month customer without warning, and more]]></description><link>https://newsletter.pragmaticengineer.com/p/the-pulse-a-trend-of-trying-to-cut</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/the-pulse-a-trend-of-trying-to-cut</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Thu, 28 May 2026 16:57:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jc0L!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44648fa6-3c4b-4d02-84ee-bef090ea707d_1474x792.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>The Pulse is a series covering events, insights, and trends within Big Tech and startups. Notice an interesting event or trend? Hit reply and share it with me.</em></p><p>Today, we cover:</p><ol><li><p><strong>New trend? ROI questions for AI investments. </strong>I talked with engineering leaders at mid-sized and large companies, where spending on AI agents is being dampened via per-engineer mont&#8230;</p></li></ol>
      <p>
          <a href="https://newsletter.pragmaticengineer.com/p/the-pulse-a-trend-of-trying-to-cut">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Building OpenCode with Dax Raad]]></title><description><![CDATA[Dax Raad, co-founder of OpenCode, joins the show to discuss their explosive growth, the limits of AI coding tools, and why engineering judgment still matters.]]></description><link>https://newsletter.pragmaticengineer.com/p/opencode</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/opencode</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Wed, 27 May 2026 16:07:30 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/199350843/aa58fe2b3564e42f06d4457a024337df.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<h3>Stream the latest episode</h3><p><strong>Listen and watch now on <a href="https://youtu.be/1VqKUrxR2C8">YouTube</a>, <a href="https://open.spotify.com/episode/10InvdH4AqOfZGCMTyzqiM">Spotify</a>, and <a href="https://podcasts.apple.com/us/podcast/the-pragmatic-engineer/id1769051199">Apple</a>.</strong> See the episode transcript at the top of this page, and timestamps for the episode at the bottom.</p><h3><strong>Brought to You by</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YCsL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YCsL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 424w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 848w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1272w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YCsL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png" width="1280" height="80" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:80,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:33236,&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://newsletter.pragmaticengineer.com/i/197401883?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.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_!YCsL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 424w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 848w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1272w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p>&#8226; <strong><a href="https://antithesis.com/pragmatic">Antithesis</a></strong> &#8211;  if you&#8217;re using agentic workflows, you need to be extremely clear about what you&#8217;re building and how your system should behave. Antithesis brings specification and verification together, making your agents faster, smarter, and safer. And when you&#8217;re using Antithesis, you&#8217;ll have greater clarity about your code as well. <a href="http://antithesis.com/pragmatic">Learn more</a>.</p><p>&#8226;<strong><a href="https://workos.com/">WorkOS</a></strong> &#8211; The fastest AI-native teams have to slow down for the hard problems &#8212; WorkOS makes sure auth, for your app and your agents, is never one of them.</p><p>&#8226; <strong><a href="https://turbopuffer.com/pragmatic">turbopuffer</a></strong> &#8211; a search engine that companies like Cursor, Notion, and Linear use to index and retrieve every byte of context for their AI agents. It&#8217;s ridiculously scalable, built on object storage, with smart caching on NVMe SSDs so it&#8217;s very fast. It also offers many different search indexes and tools: <a href="https://turbopuffer.com/pragmatic">check it out.</a></p><h3><strong>In this episode</strong></h3><p>OpenCode is one of the fastest-growing AI developer tools around, surging in just a few months from roughly 650,000 monthly active users to nearly 8 million, and almost 1M daily active users.</p><p>In this episode of The Pragmatic Engineer Podcast, we meet Dax Raad, co-founder of OpenCode, for a discussion about the gaps in developer tooling that led him to build OpenCode, the advantages of open source, and why taste and engineering judgment matter even more as AI becomes a core part of software development.</p><p>We also cover how OpenCode turned Anthropic&#8217;s blocking of integration with Claude Code into a massive growth lever by partnering with OpenAI and other model providers, why GPU demand is becoming a bottleneck everywhere, how come AI coding tools don&#8217;t automatically mean engineering teams move faster, and also why Dax is personally skeptical about predictions for the future of engineering and work, in general.</p><p>I found this conversation especially interesting because Dax displays a healthy skepticism toward the benefits of AI, even while building one of the most popular AI coding harnesses.</p><h3>My observations from the conversation with Dax</h3><p>Here are 14 of my most interesting takeaways from talking with Dax:</p><div id="youtube2-1VqKUrxR2C8" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;1VqKUrxR2C8&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/1VqKUrxR2C8?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>1. AI makes coding easier, but the hard parts of the job don&#8217;t vanish. </strong>Dax remarks that a lot of the job has become objectively easier with AI, but then follows up with a simple question: why does it feel like he is still having to think as hard as he ever did?</p><p><strong>2. Thinking upfront beats building prototypes and seeing what sticks. </strong>This is especially true in the period before a product-market fit is found, Dax says. AI doesn&#8217;t help much in this early phase because the problem is figuring out <em>what</em> to build, not how fast you can build it, he says. Therefore, thinking hard about the right direction for development beats taking unfocused swings at different ideas.</p><p><strong>3. Shipping 10x more features is a recipe for a Frankenstein-like product</strong>. It&#8217;s tempting to one-to-one prompt an agent for every user&#8217;s complaint or competitor&#8217;s feature. But the more features are jammed into a product, the worse it tends to become. Also, don&#8217;t forget that every shipped feature will need to be supported for as long as it&#8217;s part of the product!</p><p><strong>4. No AI-native coding agent company is &#8220;winning&#8221; by being better with AI.</strong> Dax says that none of OpenCode&#8217;s competitors are crushing them, and that nobody is using AI so well that others cannot compete.</p><p><strong>5. For OpenCode, product positioning beats speed of execution.</strong> A massive reason for OpenCode becoming the most popular open source AI coding harness is that they noticed no coding agent had successfully claimed the open source category. Dax was wondering why not, given that every market-leading dev tool across the industry is open source. So, he and the team focused on positioning and it paid off handsomely. He summarizes: &#8220;Get positioning right and the world just keeps handing you wins you didn&#8217;t expect.&#8221;</p><p><strong>6. OpenCode&#8217;s &#8220;inverted&#8221; strategy: start with a good-enough product, then optimize. </strong>Dax admits their harness wasn&#8217;t ideal during OpenCode&#8217;s first five months, but it was still good enough. &#8220;Once we won enough market share, we went back and tried to make our harness good and smart.&#8221;</p><p><strong>7. Most software engineers profit from AI as time gained, not increased output &#8212; unless you change incentives!</strong> Dax says the natural way for software engineers to &#8220;cash out&#8221; their AI tooling gains is with time savings, by doing the same work as before, but faster. Until compensation and motivation structures change, most teams should expect output to stay flat while engineers go home earlier. There&#8217;s nothing wrong with this, but AI vendors sell a different outcome to CFOs: increased output.</p><p><strong>8. Motivated engineers who care about quality get buried by slop PRs from devs who don&#8217;t care.</strong> Dax has hired people from companies where they were one of the few who still cared about quality. In contrast, former colleagues just pumped out AI-generated code and focused on getting their tasks done, ignorant of the decreasing quality of code. Motivated devs feel they are drowning in garbage code and tech debt, and getting burnt out by trying to clean it up. Dax calls this an engineering leadership problem that most companies don&#8217;t notice.</p><p><strong>9. AI code generation mutes the &#8220;guilt&#8221; of doing the wrong thing, but this builds up tech debt. </strong>Pre-AI, writing a hack felt bad, the second time it felt <em>really bad,</em> and by the third time you&#8217;d often just refactor in order to fix up the code. Now, the agent hides the hack, which skews devs&#8217; judgment and results in less tech debt being cleaned up.</p><p><strong>10. Dealing with tech debt is easier than ever, and teams should do more of it</strong>. Agents make refactoring across a codebase cheap: for example, ask an agent to implement a new pattern everywhere across the codebase. It&#8217;s very easy and cheap to clear up tech debt, today. So, do more of it!</p><p><strong>11. AI has not really changed the thinking / doing ratio for Dax. </strong>&#8220;Pre-AI, I would spend 95% of my energy thinking about what to do and 5% on doing it. Now I spend 96% of my time thinking, and 4% on actually doing it. So, it&#8217;s like a 20% improvement [from 5% doing to 4% doing], but day to day, it feels as hard as ever.&#8221;</p><p><strong>12. Confident predictions about AI are often forms of self-reassurance.</strong> A post went viral on X claiming that 24-29 year-old engineers will dominate in the future, which was written by &#8211; you can guess &#8211; someone in that exact age bracket. Dax says he sees this pattern a lot and frames such posts in terms of the author making themself feel better: &#8220;Someone like me has all the advantages. Someone unlike me has all the disadvantages&#8221;. Dax says he&#8217;s uninterested in predictions and just focuses on the next task, and the next day.</p><p><strong>13. Old &#8220;enterprise&#8221; patterns are coming back in fashion for writing quality software, as agents are the new junior engineers</strong>. Dax says that things like domain-driven design and verbose design patterns went out of style over the past two decades because they&#8217;re tedious to type out. But they are actually very useful when there are junior devs on the team &#8211; or when there are agents that need strong guardrails. Dax is already using more such &#8220;old school&#8221; patterns.</p><p><strong>14. The future-proof tech career: solid software engineering + deep industry expertise.</strong> Dax reckons engineers undervalue how easily they can become industry insiders compared to people who only focus on engineering, but never become an expert in one business area, as they go.</p><h3><strong>The Pragmatic Engineer deepdives relevant for this episode</strong></h3><ul><li><p><a href="https://newsletter.pragmaticengineer.com/p/how-claude-code-is-built">How Claude Code is built</a></p></li><li><p><a href="https://newsletter.pragmaticengineer.com/p/how-codex-is-built">How Codex is built</a></p></li><li><p><a href="https://newsletter.pragmaticengineer.com/p/cursor">Real-world engineering challenges: building Cursor</a></p></li><li><p><a href="https://newsletter.pragmaticengineer.com/p/the-ai-engineering-stack">The AI Engineering stack</a></p></li><li><p><a href="https://newsletter.pragmaticengineer.com/p/how-uber-uses-ai-for-development">How Uber uses AI for development: inside look</a></p></li></ul><h3><strong>Timestamps</strong></h3><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8">00:00</a> Intro</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=423s">07:03</a> Dax&#8217;s path into tech</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=544s">09:04</a> Early startup experience</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=796s">13:16</a> Getting involved with open source</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=973s">16:13</a> OpenCode</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=1397s">23:17</a> Anthropic banning OpenCode</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=1834s">30:34</a> From terminal to GUI</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=1954s">32:34</a> OpenCode&#8217;s business model</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=2193s">36:33</a> Why inference is profitable</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=2351s">39:11</a> GPU bottlenecks</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=2454s">40:54</a> AI hype</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=2750s">45:50</a> AI spending</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=2927s">48:47</a> Dax&#8217;s memo</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=3341s">55:41</a> Dax&#8217;s skepticism of predictions</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=3538s">58:58</a> Engineering culture at OpenCode</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=3758s">1:02:38</a> How building works at OpenCode</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=3936s">1:05:36</a> Taste and quality</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=4292s">1:11:32</a> Dax&#8217;s work setup</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=4355s">1:12:35</a> The role of engineers and EMs</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=4550s">1:15:50</a> Advice for engineers</p><p><a href="https://www.youtube.com/watch?v=1VqKUrxR2C8&amp;t=4692s">1:18:12</a> Book recommendation</p><h3><strong>References</strong></h3><p><strong>Where to find Dax Raad:</strong></p><p>&#8226; X: <a href="https://x.com/thdxr">https://x.com/thdxr</a></p><p>&#8226; Website: <a href="https://thdxr.com">https://thdxr.com</a></p><p><strong>Mentions during the episode:</strong></p><p>&#8226; OpenCode: <a href="https://opencode.ai">https://opencode.ai</a></p><p>&#8226; Minecraft: <a href="https://www.minecraft.net">https://www.minecraft.net</a></p><p>&#8226; IRC: <a href="https://en.wikipedia.org/wiki/IRC">https://en.wikipedia.org/wiki/IRC</a></p><p>&#8226; Ride Health: <a href="https://www.ridehealth.com">https://www.ridehealth.com</a></p><p>&#8226; Serverless Stack: <a href="https://sst.dev">https://sst.dev</a></p><p>&#8226; OpenNext: <a href="https://opennext.js.org">https://opennext.js.org</a></p><p>&#8226; Vercel: <a href="https://vercel.com">https://vercel.com</a></p><p>&#8226; Red Hat: <a href="https://www.redhat.com">https://www.redhat.com</a></p><p>&#8226; Ubuntu: <a href="https://ubuntu.com">https://ubuntu.com</a></p><p>&#8226; Canonical: <a href="https://canonical.com">https://canonical.com</a></p><p>&#8226; OpenCode Zen: <a href="https://opencode.ai/zen">https://opencode.ai/zen</a></p><p>&#8226; Dax on X &#8220;inference is very profitable&#8221;: </p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/thdxr/status/2042277156940587469&quot;,&quot;full_text&quot;:&quot;inference is very profitable and probably a good opportunity to understand some basic business math\n\n1. companies buy long lived assets like GPUs. these are one time costs and the asset depreciates over time\n\n2. once you own this asset, you can plug it in and produce tokens which&quot;,&quot;username&quot;:&quot;thdxr&quot;,&quot;name&quot;:&quot;dax&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1602333093485891584/mmVqjFNI_normal.jpg&quot;,&quot;date&quot;:&quot;2026-04-09T16:23:12.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{&quot;full_text&quot;:&quot;@d4m1n i'm a bit confused why so many people say api tokens are sold at a loss\n\nthis isn't true - these models are incredibly expensive compared to the gpu time cost\n\nthere's potential for 90% margin depending on the model&quot;,&quot;username&quot;:&quot;thdxr&quot;,&quot;name&quot;:&quot;dax&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1602333093485891584/mmVqjFNI_normal.jpg&quot;},&quot;reply_count&quot;:65,&quot;retweet_count&quot;:69,&quot;like_count&quot;:1403,&quot;impression_count&quot;:151365,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>&#8226; The history of servers, the cloud, and what&#8217;s next &#8211; with Oxide: <a href="https://newsletter.pragmaticengineer.com/p/the-history-of-servers-the-cloud">https://newsletter.pragmaticengineer.com/p/the-history-of-servers-the-cloud</a></p><p>&#8226; Dax on X &#8220;everyone&#8217;s talking about their teams like they were at the peak of efficiency&#8221;: </p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/thdxr/status/2022574719694758147&quot;,&quot;full_text&quot;:&quot;everyone's talking about their teams like they were at the peak of efficiency and bottlenecked by ability to produce code\n\nhere's what things actually look like\n\n- your org rarely has good ideas. ideas being expensive to implement was actually helping\n\n- majority of workers have&quot;,&quot;username&quot;:&quot;thdxr&quot;,&quot;name&quot;:&quot;dax&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1602333093485891584/mmVqjFNI_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-14T07:32:45.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:288,&quot;retweet_count&quot;:1003,&quot;like_count&quot;:10807,&quot;impression_count&quot;:1017035,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>&#8226; From IDEs to AI Agents with Steve Yegge: <a href="https://newsletter.pragmaticengineer.com/p/from-ides-to-ai-agents-with-steve">https://newsletter.pragmaticengineer.com/p/from-ides-to-ai-agents-with-steve</a></p><p>&#8226; Stripe: <a href="https://stripe.com">https://stripe.com</a></p><p>&#8226; TDD, AI agents and coding with Kent Beck: <a href="https://newsletter.pragmaticengineer.com/p/tdd-ai-agents-and-coding-with-kent">https://newsletter.pragmaticengineer.com/p/tdd-ai-agents-and-coding-with-kent</a></p><p>&#8226; How AI will change software engineering &#8211; with Martin Fowler: <a href="https://newsletter.pragmaticengineer.com/p/martin-fowler">https://newsletter.pragmaticengineer.com/p/martin-fowler</a></p><p>&#8226; The third golden age of software engineering &#8211; thanks to AI, with Grady Booch: <a href="https://newsletter.pragmaticengineer.com/p/the-third-golden-age-of-software">https://newsletter.pragmaticengineer.com/p/the-third-golden-age-of-software</a></p><p>&#8226; Mitchell Hashimoto&#8217;s new way of writing code: <a href="https://newsletter.pragmaticengineer.com/p/mitchell-hashimoto">https://newsletter.pragmaticengineer.com/p/mitchell-hashimoto</a></p><p>&#8226; Arch Linux: <a href="https://archlinux.org">https://archlinux.org</a></p><p>&#8226; tmux: <a href="https://github.com/tmux/tmux/wiki">https://github.com/tmux/tmux/wiki</a></p><p>&#8226; Neovim: <a href="https://neovim.io">https://neovim.io</a></p><p>&#8226; <em>Skin in the Game: Hidden Asymmetries in Daily Life (Incerto)</em>: <a href="https://www.amazon.com/Skin-Game-Hidden-Asymmetries-Daily/dp/042528462X">https://www.amazon.com/Skin-Game-Hidden-Asymmetries-Daily/dp/042528462X</a></p><p>&#8226; <em>The Black Swan: The Impact of the Highly Improbable, second editio</em>n: <a href="https://www.amazon.com/Black-Swan-Improbable-Robustness-Fragility/dp/081297381X">https://www.amazon.com/Black-Swan-Improbable-Robustness-Fragility/dp/081297381X</a></p><p>&#8212;</p><p>Production and marketing by <a href="https://penname.co/">Pen Name</a>. </p><p></p>]]></content:encoded></item><item><title><![CDATA[State of the software engineering job market in 2026]]></title><description><![CDATA[A deepdive into today&#8217;s tech jobs market, with exclusive data on software engineering jobs, the AI engineering boom, whether AI engineering is &#8220;replacing&#8221; software engineering hiring, and more]]></description><link>https://newsletter.pragmaticengineer.com/p/state-of-the-job-market-2026</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/state-of-the-job-market-2026</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Tue, 26 May 2026 18:10:59 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!P4An!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29e3225d-e5fc-492f-a554-b000806a74d2_1220x1058.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Last year, I <a href="https://newsletter.pragmaticengineer.com/p/state-of-the-tech-market-in-2025">described</a> the tech jobs market as &#8220;weird&#8221;, based on reports from both job seekers and hiring managers. In this deepdive, we dig into what &#8211; if anything &#8211; has changed in 2026.</p><p>A year ago, most engineers found it harder to get responses to job applications, while hiring managers found it harder to hire than before. We&#8217;ve now spent two months gathering fresh, never-before-shared data from a range of sources to find out if that paradoxical situation still exists or not.</p><p>We collected the data with software engineer Jessica Salmon &#8211; who&#8217;s joined the team as a tech industry analyst. A big thank you to partner teams who shared exclusive details for this deepdive:</p><ul><li><p><strong><a href="https://www.trueup.io/">TrueUp</a></strong>: a platform that scans every open job in Big Tech, top startups, and scaleups, typically paying in the top two tiers of the <a href="https://newsletter.pragmaticengineer.com/p/trimodal">trimodal software engineering compensation</a> model. <em>Thanks, Amit Taylor.</em></p></li><li><p><strong><a href="http://workforce.ai">Workforce.ai</a></strong>, built by Live Data Technologies, which monitors 1M+ job changes and 300M+ employment validations each month across companies, roles, levels, functions, industries, and locations. <em>Special thanks to Alex Hamilton for his input.</em></p></li></ul><p>Today, we cover:</p><ol><li><p><strong>Software engineering recruitment: trending up, mostly. </strong>More software engineering job postings in the UK and the US, and a decline in Germany and France. &#8220;Top&#8221; tech companies are hiring 20% more vs a year ago.</p></li><li><p><strong>Big Tech and publicly-traded companies. </strong>Meta went on a monster hiring spree for the last two years until layoffs, last week. Microsoft and Amazon were flat, while Google and Apple consistently hired devs. Stripe, Shopify, and Atlassian all hired more than Big Tech.</p></li><li><p><strong>Who&#8217;s hiring the most software engineers?</strong> Apple, Amazon, and IBM are the top 3 by number of positions listed, while Meta dropped off the top 20 with layoffs there. The fastest-growing companies seem to be in fintech, observability, and security.</p></li><li><p><strong>AI engineering: explosive demand. </strong>Most tech companies seem to be prioritizing AI engineering recruitment over software engineers. Observability companies appear to be hiring fastest.</p></li><li><p><strong>Who&#8217;s hiring the most AI engineers? </strong>Apple, Google, and TikTok have the most openings, and many larger tech companies have 50-100% more AI engineering job listings than a year ago.</p></li><li><p><strong>Is AI engineering replacing software engineering hiring?</strong> The data doesn&#8217;t say, but are the basics of AI engineering becoming a baseline skill for software engineering job candidates?</p></li></ol><p><strong><a href="https://newsletter.pragmaticengineer.com/p/the-job-market-in-2026-part-2">See Part 2</a></strong> for details on:</p><ul><li><p>Top AI labs are now more attractive than Big Tech</p></li><li><p>Harder for new grads &amp; interns to get hired</p></li><li><p>Mobile and frontend demand drops, AI &amp; FDE surges</p></li><li><p>AI engineering comp &gt; software engineering comp</p></li><li><p>Management&#8217;s &#8220;great flattening&#8221; continues</p></li><li><p>Big Tech seniority &amp; tenure keep rising</p></li><li><p>Interview preparation signups: what do they indicate?</p></li><li><p>Where engineers go after Big Tech</p></li></ul><p><em>For more on the tech jobs market of 2025, check out <a href="https://newsletter.pragmaticengineer.com/p/state-of-the-tech-market-in-2025">last year&#8217;s deepdive.</a></em></p><h2>1. Software engineering recruitment: trending up, mostly</h2><h3>Top tech companies hiring more, slowly but surely</h3><p>TrueUp tracks open positions at top-paying companies, which are usually US-based. Among this group, recruitment of software engineers has been steadily increasing since March 2023:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cNQi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99284e24-69de-42a3-bc6d-487c438ce44e_1260x850.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cNQi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99284e24-69de-42a3-bc6d-487c438ce44e_1260x850.png 424w, https://substackcdn.com/image/fetch/$s_!cNQi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99284e24-69de-42a3-bc6d-487c438ce44e_1260x850.png 848w, https://substackcdn.com/image/fetch/$s_!cNQi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99284e24-69de-42a3-bc6d-487c438ce44e_1260x850.png 1272w, https://substackcdn.com/image/fetch/$s_!cNQi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99284e24-69de-42a3-bc6d-487c438ce44e_1260x850.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cNQi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99284e24-69de-42a3-bc6d-487c438ce44e_1260x850.png" width="1260" height="850" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/99284e24-69de-42a3-bc6d-487c438ce44e_1260x850.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:850,&quot;width&quot;:1260,&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_!cNQi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99284e24-69de-42a3-bc6d-487c438ce44e_1260x850.png 424w, https://substackcdn.com/image/fetch/$s_!cNQi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99284e24-69de-42a3-bc6d-487c438ce44e_1260x850.png 848w, https://substackcdn.com/image/fetch/$s_!cNQi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99284e24-69de-42a3-bc6d-487c438ce44e_1260x850.png 1272w, https://substackcdn.com/image/fetch/$s_!cNQi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99284e24-69de-42a3-bc6d-487c438ce44e_1260x850.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>&#8220;Top&#8221; startups keep hiring more devs. Source: <a href="https://www.trueup.io/job-trend">TrueUp</a></em></figcaption></figure></div><h3>US growth, but less in Canada and Europe</h3><p>Let&#8217;s take a look at broader industry trends via software developer jobs listed on Indeed.com, the world&#8217;s largest job aggregator site. As a &#8220;jobs aggregator&#8221;, Indeed not only displays paid-for ads but also crawls many other career sites and lists the vacancies.</p><p>Looking at trends over the last five years, the number of software engineering jobs listed is still lower than in May 2021:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!V_VW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21201a99-a45c-4ecc-939e-1d549b9f8b7e_1492x856.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!V_VW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21201a99-a45c-4ecc-939e-1d549b9f8b7e_1492x856.png 424w, https://substackcdn.com/image/fetch/$s_!V_VW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21201a99-a45c-4ecc-939e-1d549b9f8b7e_1492x856.png 848w, https://substackcdn.com/image/fetch/$s_!V_VW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21201a99-a45c-4ecc-939e-1d549b9f8b7e_1492x856.png 1272w, https://substackcdn.com/image/fetch/$s_!V_VW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21201a99-a45c-4ecc-939e-1d549b9f8b7e_1492x856.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!V_VW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21201a99-a45c-4ecc-939e-1d549b9f8b7e_1492x856.png" width="1456" height="835" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/21201a99-a45c-4ecc-939e-1d549b9f8b7e_1492x856.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:835,&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_!V_VW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21201a99-a45c-4ecc-939e-1d549b9f8b7e_1492x856.png 424w, https://substackcdn.com/image/fetch/$s_!V_VW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21201a99-a45c-4ecc-939e-1d549b9f8b7e_1492x856.png 848w, https://substackcdn.com/image/fetch/$s_!V_VW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21201a99-a45c-4ecc-939e-1d549b9f8b7e_1492x856.png 1272w, https://substackcdn.com/image/fetch/$s_!V_VW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21201a99-a45c-4ecc-939e-1d549b9f8b7e_1492x856.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Dev job listings in the US, 2021-2026. Source: <a href="https://fred.stlouisfed.org/series/IHLIDXUSTPSOFTDEVE">FRED / Indeed</a></em></figcaption></figure></div><p>Obviously, 2021 was the pandemic which created a commercial boom for the tech industry, so it&#8217;s not exactly an ideal comparison. Zooming into the last twelve months shows encouraging growth signs:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TAhM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfc84594-dcb9-4a1c-99c7-503b78412039_1310x1410.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TAhM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfc84594-dcb9-4a1c-99c7-503b78412039_1310x1410.png 424w, https://substackcdn.com/image/fetch/$s_!TAhM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfc84594-dcb9-4a1c-99c7-503b78412039_1310x1410.png 848w, https://substackcdn.com/image/fetch/$s_!TAhM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfc84594-dcb9-4a1c-99c7-503b78412039_1310x1410.png 1272w, https://substackcdn.com/image/fetch/$s_!TAhM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfc84594-dcb9-4a1c-99c7-503b78412039_1310x1410.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TAhM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfc84594-dcb9-4a1c-99c7-503b78412039_1310x1410.png" width="1310" height="1410" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cfc84594-dcb9-4a1c-99c7-503b78412039_1310x1410.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1410,&quot;width&quot;:1310,&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_!TAhM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfc84594-dcb9-4a1c-99c7-503b78412039_1310x1410.png 424w, https://substackcdn.com/image/fetch/$s_!TAhM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfc84594-dcb9-4a1c-99c7-503b78412039_1310x1410.png 848w, https://substackcdn.com/image/fetch/$s_!TAhM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfc84594-dcb9-4a1c-99c7-503b78412039_1310x1410.png 1272w, https://substackcdn.com/image/fetch/$s_!TAhM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfc84594-dcb9-4a1c-99c7-503b78412039_1310x1410.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Dev job listings in the last five years vs the past year. Source: FRED / Indeed</em></figcaption></figure></div><p>Outside of the US, let&#8217;s check out software engineering vacancy trends, per Indeed:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qOwb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a1e574a-52a3-4087-b1e5-f1a89d88ccb1_1924x1502.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qOwb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a1e574a-52a3-4087-b1e5-f1a89d88ccb1_1924x1502.png 424w, https://substackcdn.com/image/fetch/$s_!qOwb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a1e574a-52a3-4087-b1e5-f1a89d88ccb1_1924x1502.png 848w, https://substackcdn.com/image/fetch/$s_!qOwb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a1e574a-52a3-4087-b1e5-f1a89d88ccb1_1924x1502.png 1272w, https://substackcdn.com/image/fetch/$s_!qOwb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a1e574a-52a3-4087-b1e5-f1a89d88ccb1_1924x1502.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qOwb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a1e574a-52a3-4087-b1e5-f1a89d88ccb1_1924x1502.png" width="1456" height="1137" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3a1e574a-52a3-4087-b1e5-f1a89d88ccb1_1924x1502.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1137,&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_!qOwb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a1e574a-52a3-4087-b1e5-f1a89d88ccb1_1924x1502.png 424w, https://substackcdn.com/image/fetch/$s_!qOwb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a1e574a-52a3-4087-b1e5-f1a89d88ccb1_1924x1502.png 848w, https://substackcdn.com/image/fetch/$s_!qOwb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a1e574a-52a3-4087-b1e5-f1a89d88ccb1_1924x1502.png 1272w, https://substackcdn.com/image/fetch/$s_!qOwb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a1e574a-52a3-4087-b1e5-f1a89d88ccb1_1924x1502.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">S<em>oftware engineering listings over the past 12 months by country. Source: FRED / Indeed</em></figcaption></figure></div><p>In this list, the US and the UK are the only two countries where vacancies are up; Canada is flat, while Germany and France have seen declines. To me, it suggests US-headquartered companies are hiring more devs, mostly in the US and some in the UK, whereas European-headquartered companies are more cautious about recruitment.</p><h3>The software engineering industry still grows</h3><p>Let&#8217;s ask how much the software engineer population has grown or shrunk in the last seven years. Here are some numbers from profiles, as tracked by Workforce.ai:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!P4An!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29e3225d-e5fc-492f-a554-b000806a74d2_1220x1058.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!P4An!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29e3225d-e5fc-492f-a554-b000806a74d2_1220x1058.png 424w, https://substackcdn.com/image/fetch/$s_!P4An!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29e3225d-e5fc-492f-a554-b000806a74d2_1220x1058.png 848w, https://substackcdn.com/image/fetch/$s_!P4An!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29e3225d-e5fc-492f-a554-b000806a74d2_1220x1058.png 1272w, https://substackcdn.com/image/fetch/$s_!P4An!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29e3225d-e5fc-492f-a554-b000806a74d2_1220x1058.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!P4An!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29e3225d-e5fc-492f-a554-b000806a74d2_1220x1058.png" width="1220" height="1058" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/29e3225d-e5fc-492f-a554-b000806a74d2_1220x1058.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1058,&quot;width&quot;:1220,&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_!P4An!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29e3225d-e5fc-492f-a554-b000806a74d2_1220x1058.png 424w, https://substackcdn.com/image/fetch/$s_!P4An!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29e3225d-e5fc-492f-a554-b000806a74d2_1220x1058.png 848w, https://substackcdn.com/image/fetch/$s_!P4An!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29e3225d-e5fc-492f-a554-b000806a74d2_1220x1058.png 1272w, https://substackcdn.com/image/fetch/$s_!P4An!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29e3225d-e5fc-492f-a554-b000806a74d2_1220x1058.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Net growth and shrinkage for software engineer profiles. Source: <a href="http://workforce.ai">Workforce.ai</a></em></figcaption></figure></div><p><a href="https://fred.stlouisfed.org/series/IHLIDXUSTPSOFTDEVE"><br></a>Let&#8217;s zoom into this chart:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IeAB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ec2c2d7-49e9-48ae-9756-c592d6ba34de_1684x1042.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IeAB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ec2c2d7-49e9-48ae-9756-c592d6ba34de_1684x1042.png 424w, https://substackcdn.com/image/fetch/$s_!IeAB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ec2c2d7-49e9-48ae-9756-c592d6ba34de_1684x1042.png 848w, https://substackcdn.com/image/fetch/$s_!IeAB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ec2c2d7-49e9-48ae-9756-c592d6ba34de_1684x1042.png 1272w, https://substackcdn.com/image/fetch/$s_!IeAB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ec2c2d7-49e9-48ae-9756-c592d6ba34de_1684x1042.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IeAB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ec2c2d7-49e9-48ae-9756-c592d6ba34de_1684x1042.png" width="1456" height="901" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5ec2c2d7-49e9-48ae-9756-c592d6ba34de_1684x1042.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:901,&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_!IeAB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ec2c2d7-49e9-48ae-9756-c592d6ba34de_1684x1042.png 424w, https://substackcdn.com/image/fetch/$s_!IeAB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ec2c2d7-49e9-48ae-9756-c592d6ba34de_1684x1042.png 848w, https://substackcdn.com/image/fetch/$s_!IeAB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ec2c2d7-49e9-48ae-9756-c592d6ba34de_1684x1042.png 1272w, https://substackcdn.com/image/fetch/$s_!IeAB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ec2c2d7-49e9-48ae-9756-c592d6ba34de_1684x1042.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Recruitment shifts over time. Source: Workforce.ai </figcaption></figure></div><p>There are a few interesting details:</p><ul><li><p><strong>Hiring mostly occurs between the months of March and June, </strong>and<strong> </strong>there&#8217;s very little net growth in the second half of the year. This makes sense as tech companies set annual headcount budgets at the beginning of the year and commence hiring from then, with most hires evidently made in the following months. Hiring budgets are usually spent by mid-year.</p></li><li><p><strong>The industry seemingly shrank in 2023. </strong>That year, it was only in Q2 that more software engineers were hired than left their jobs. It was the worst period for software engineers in two decades.</p></li></ul><p><strong>&#8230;and also in 2024 and 2025 during Q3. </strong>Mass layoffs mostly happened between August and October, the charts show.</p><h2>2. Big Tech and publicly-traded companies</h2><h3>Big Tech: modest jobs growth &#8211; but not at Meta</h3><p>Looking at the two years since May 2024, of the five largest tech companies, only Meta grew headcount aggressively:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hiKF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29342d8-274b-4eec-a73b-d41fcac373ab_1366x940.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hiKF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29342d8-274b-4eec-a73b-d41fcac373ab_1366x940.png 424w, https://substackcdn.com/image/fetch/$s_!hiKF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29342d8-274b-4eec-a73b-d41fcac373ab_1366x940.png 848w, https://substackcdn.com/image/fetch/$s_!hiKF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29342d8-274b-4eec-a73b-d41fcac373ab_1366x940.png 1272w, https://substackcdn.com/image/fetch/$s_!hiKF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29342d8-274b-4eec-a73b-d41fcac373ab_1366x940.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hiKF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29342d8-274b-4eec-a73b-d41fcac373ab_1366x940.png" width="1366" height="940" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a29342d8-274b-4eec-a73b-d41fcac373ab_1366x940.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:940,&quot;width&quot;:1366,&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_!hiKF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29342d8-274b-4eec-a73b-d41fcac373ab_1366x940.png 424w, https://substackcdn.com/image/fetch/$s_!hiKF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29342d8-274b-4eec-a73b-d41fcac373ab_1366x940.png 848w, https://substackcdn.com/image/fetch/$s_!hiKF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29342d8-274b-4eec-a73b-d41fcac373ab_1366x940.png 1272w, https://substackcdn.com/image/fetch/$s_!hiKF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29342d8-274b-4eec-a73b-d41fcac373ab_1366x940.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Meta hired while Microsoft and Amazon stayed more static. Source: <a href="https://app.workforce.ai/insights">Workforce.ai</a></em></figcaption></figure></div><p>In that time, Meta increased its headcount by nearly 20%, so perhaps its recent 10% layoffs could be considered as not a total surprise. As for other tech giants, their software engineering headcount also changed in the last two years:</p><ul><li><p>Apple: +10%</p></li><li><p>Google: +5%</p></li><li><p>Microsoft: -1.1%</p></li><li><p>Amazon: -1.3%</p></li></ul><p>Visualizing this:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1ePc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c7a3700-09f4-4333-b468-13f9dcb3f887_1466x852.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1ePc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c7a3700-09f4-4333-b468-13f9dcb3f887_1466x852.png 424w, https://substackcdn.com/image/fetch/$s_!1ePc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c7a3700-09f4-4333-b468-13f9dcb3f887_1466x852.png 848w, https://substackcdn.com/image/fetch/$s_!1ePc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c7a3700-09f4-4333-b468-13f9dcb3f887_1466x852.png 1272w, https://substackcdn.com/image/fetch/$s_!1ePc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c7a3700-09f4-4333-b468-13f9dcb3f887_1466x852.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1ePc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c7a3700-09f4-4333-b468-13f9dcb3f887_1466x852.png" width="1456" height="846" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4c7a3700-09f4-4333-b468-13f9dcb3f887_1466x852.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:846,&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_!1ePc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c7a3700-09f4-4333-b468-13f9dcb3f887_1466x852.png 424w, https://substackcdn.com/image/fetch/$s_!1ePc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c7a3700-09f4-4333-b468-13f9dcb3f887_1466x852.png 848w, https://substackcdn.com/image/fetch/$s_!1ePc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c7a3700-09f4-4333-b468-13f9dcb3f887_1466x852.png 1272w, https://substackcdn.com/image/fetch/$s_!1ePc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c7a3700-09f4-4333-b468-13f9dcb3f887_1466x852.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Mixed</em> <em>software engineering headcount growth across Big Tech. Source: <a href="https://app.workforce.ai/insights">Workforce.ai</a></em></figcaption></figure></div><p>Apple and Google seem the most &#8220;stable&#8221; places when it comes to growing the software engineering function; Apple has not had mass layoffs for decades. In contrast, Meta is the most volatile place to work; hiring devs quickly and then letting them go. Elsewhere, Amazon and Microsoft are slowly employing more software folks.</p><h3>Meta&#8217;s hire-then-fire rollercoaster</h3><p>Meta warrants a closer look, where morale is reportedly <a href="https://newsletter.pragmaticengineer.com/i/198733941/3-jobs-axe-falls-at-meta-8000-let-go">as low as it&#8217;s ever been</a> right now, due to layoffs of 10% of staff, while thousands of software engineers have been <a href="https://newsletter.pragmaticengineer.com/i/196795826/3-meta-forcefully-assigns-engineers-to-data-labelling-pre-layoff">reassigned to manual data labeling</a> from previous product development or infra work. From 2004 until 2022, Meta never did mass layoffs, but in the past three years there have been three sizeable redundancy rounds (at the end of 2022, early 2024, and last week), with the most rapid hiring growth of any tech giant sandwiched in between:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_whS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20adfb0f-ccbd-4d2e-9a10-810290be1f15_1174x742.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_whS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20adfb0f-ccbd-4d2e-9a10-810290be1f15_1174x742.png 424w, https://substackcdn.com/image/fetch/$s_!_whS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20adfb0f-ccbd-4d2e-9a10-810290be1f15_1174x742.png 848w, https://substackcdn.com/image/fetch/$s_!_whS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20adfb0f-ccbd-4d2e-9a10-810290be1f15_1174x742.png 1272w, https://substackcdn.com/image/fetch/$s_!_whS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20adfb0f-ccbd-4d2e-9a10-810290be1f15_1174x742.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_whS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20adfb0f-ccbd-4d2e-9a10-810290be1f15_1174x742.png" width="1174" height="742" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/20adfb0f-ccbd-4d2e-9a10-810290be1f15_1174x742.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:742,&quot;width&quot;:1174,&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_!_whS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20adfb0f-ccbd-4d2e-9a10-810290be1f15_1174x742.png 424w, https://substackcdn.com/image/fetch/$s_!_whS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20adfb0f-ccbd-4d2e-9a10-810290be1f15_1174x742.png 848w, https://substackcdn.com/image/fetch/$s_!_whS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20adfb0f-ccbd-4d2e-9a10-810290be1f15_1174x742.png 1272w, https://substackcdn.com/image/fetch/$s_!_whS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F20adfb0f-ccbd-4d2e-9a10-810290be1f15_1174x742.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Meta laid folks off in bulk, then hired them fastest among Big Techs. Source: <a href="http://workforce.ai">Workforce.ai</a></em></figcaption></figure></div><p>Before 2022, Meta ranked with Google as one of the most stable places to work in tech. Safe to say, the company is currently the riskiest place to be in job-security terms &#8211; even if Mark Zuckerberg has said there will be no more mass layoffs this year.</p><h3>Publicly-traded tech companies: mostly flat recruitment</h3><p>A couple of years ago, larger tech companies were hiring even more than most of Big Tech. Software engineering headcount grew in the past two years at Shopify (+36%), Stripe (+29%), Atlassian (+23%), Snap (+15%) and Spotify (+6%).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!b-M3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7dcc8b6-32e3-44b1-a260-7160dcc5dad0_1072x842.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!b-M3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7dcc8b6-32e3-44b1-a260-7160dcc5dad0_1072x842.png 424w, https://substackcdn.com/image/fetch/$s_!b-M3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7dcc8b6-32e3-44b1-a260-7160dcc5dad0_1072x842.png 848w, https://substackcdn.com/image/fetch/$s_!b-M3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7dcc8b6-32e3-44b1-a260-7160dcc5dad0_1072x842.png 1272w, https://substackcdn.com/image/fetch/$s_!b-M3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7dcc8b6-32e3-44b1-a260-7160dcc5dad0_1072x842.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!b-M3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7dcc8b6-32e3-44b1-a260-7160dcc5dad0_1072x842.png" width="1072" height="842" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c7dcc8b6-32e3-44b1-a260-7160dcc5dad0_1072x842.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:842,&quot;width&quot;:1072,&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_!b-M3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7dcc8b6-32e3-44b1-a260-7160dcc5dad0_1072x842.png 424w, https://substackcdn.com/image/fetch/$s_!b-M3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7dcc8b6-32e3-44b1-a260-7160dcc5dad0_1072x842.png 848w, https://substackcdn.com/image/fetch/$s_!b-M3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7dcc8b6-32e3-44b1-a260-7160dcc5dad0_1072x842.png 1272w, https://substackcdn.com/image/fetch/$s_!b-M3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7dcc8b6-32e3-44b1-a260-7160dcc5dad0_1072x842.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: Workforce.ai</figcaption></figure></div><p>But that&#8217;s changed recently. In the past year, headcount growth has slowed at Stripe (+15%), Atlassian (+11%), Shopify (+6%), Snap (+2%), and Spotify (+1%),</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1AxH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dd99464-89aa-410c-b1cf-1d57a283d1a0_1076x810.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1AxH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dd99464-89aa-410c-b1cf-1d57a283d1a0_1076x810.png 424w, https://substackcdn.com/image/fetch/$s_!1AxH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dd99464-89aa-410c-b1cf-1d57a283d1a0_1076x810.png 848w, https://substackcdn.com/image/fetch/$s_!1AxH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dd99464-89aa-410c-b1cf-1d57a283d1a0_1076x810.png 1272w, https://substackcdn.com/image/fetch/$s_!1AxH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dd99464-89aa-410c-b1cf-1d57a283d1a0_1076x810.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1AxH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dd99464-89aa-410c-b1cf-1d57a283d1a0_1076x810.png" width="1076" height="810" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9dd99464-89aa-410c-b1cf-1d57a283d1a0_1076x810.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:810,&quot;width&quot;:1076,&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_!1AxH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dd99464-89aa-410c-b1cf-1d57a283d1a0_1076x810.png 424w, https://substackcdn.com/image/fetch/$s_!1AxH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dd99464-89aa-410c-b1cf-1d57a283d1a0_1076x810.png 848w, https://substackcdn.com/image/fetch/$s_!1AxH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dd99464-89aa-410c-b1cf-1d57a283d1a0_1076x810.png 1272w, https://substackcdn.com/image/fetch/$s_!1AxH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dd99464-89aa-410c-b1cf-1d57a283d1a0_1076x810.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: Workforce.ai </figcaption></figure></div><p>This data does not capture Atlassian letting go of 10% of staff <a href="https://newsletter.pragmaticengineer.com/i/197715901/2-why-are-layoffs-spiking">this month</a>, and Snap laying off 16% <a href="https://newsletter.pragmaticengineer.com/i/197715901/2-why-are-layoffs-spiking">in April</a>.</p><p>Among this group, Stripe stands out as a place that keeps hiring at a higher pace than nearly all of Big Tech. Atlassian and Shopify have grown their software engineering headcount faster than Google, Microsoft, and Amazon did in the past two years.</p><h2>3. Who&#8217;s hiring the most software engineers?</h2><p>So, which companies are hiring the most? Let&#8217;s look at this via open positions and growth comparisons.</p><h3>Companies with the most open roles</h3><p>&#8220;Top&#8221; tech companies with the largest number of software engineering openings:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FFc9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa07087aa-3d6f-4a75-af23-d5438a45695f_1454x1300.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FFc9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa07087aa-3d6f-4a75-af23-d5438a45695f_1454x1300.png 424w, https://substackcdn.com/image/fetch/$s_!FFc9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa07087aa-3d6f-4a75-af23-d5438a45695f_1454x1300.png 848w, https://substackcdn.com/image/fetch/$s_!FFc9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa07087aa-3d6f-4a75-af23-d5438a45695f_1454x1300.png 1272w, https://substackcdn.com/image/fetch/$s_!FFc9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa07087aa-3d6f-4a75-af23-d5438a45695f_1454x1300.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FFc9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa07087aa-3d6f-4a75-af23-d5438a45695f_1454x1300.png" width="1454" height="1300" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a07087aa-3d6f-4a75-af23-d5438a45695f_1454x1300.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1300,&quot;width&quot;:1454,&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_!FFc9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa07087aa-3d6f-4a75-af23-d5438a45695f_1454x1300.png 424w, https://substackcdn.com/image/fetch/$s_!FFc9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa07087aa-3d6f-4a75-af23-d5438a45695f_1454x1300.png 848w, https://substackcdn.com/image/fetch/$s_!FFc9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa07087aa-3d6f-4a75-af23-d5438a45695f_1454x1300.png 1272w, https://substackcdn.com/image/fetch/$s_!FFc9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa07087aa-3d6f-4a75-af23-d5438a45695f_1454x1300.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Businesses with the most software engineering vacancies. Source: <a href="https://www.trueup.io/job-trend">TrueUp</a></em></figcaption></figure></div><p>Compared to last 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_!NLKX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc38fd-7296-4f7e-9f50-e2844742302a_1572x1290.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NLKX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc38fd-7296-4f7e-9f50-e2844742302a_1572x1290.png 424w, https://substackcdn.com/image/fetch/$s_!NLKX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc38fd-7296-4f7e-9f50-e2844742302a_1572x1290.png 848w, https://substackcdn.com/image/fetch/$s_!NLKX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc38fd-7296-4f7e-9f50-e2844742302a_1572x1290.png 1272w, https://substackcdn.com/image/fetch/$s_!NLKX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc38fd-7296-4f7e-9f50-e2844742302a_1572x1290.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NLKX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc38fd-7296-4f7e-9f50-e2844742302a_1572x1290.png" width="1456" height="1195" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/67cc38fd-7296-4f7e-9f50-e2844742302a_1572x1290.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1195,&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_!NLKX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc38fd-7296-4f7e-9f50-e2844742302a_1572x1290.png 424w, https://substackcdn.com/image/fetch/$s_!NLKX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc38fd-7296-4f7e-9f50-e2844742302a_1572x1290.png 848w, https://substackcdn.com/image/fetch/$s_!NLKX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc38fd-7296-4f7e-9f50-e2844742302a_1572x1290.png 1272w, https://substackcdn.com/image/fetch/$s_!NLKX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc38fd-7296-4f7e-9f50-e2844742302a_1572x1290.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Companies with the most open positions, 2025 vs 2026. Source: <a href="https://www.trueup.io/job-trend">TrueUp</a></em></figcaption></figure></div><p>Observations:</p><ul><li><p><strong>The top three are unchanged</strong>: It&#8217;s still Apple, IBM, and Amazon</p></li><li><p><strong>New entrants to the top 20:</strong> Accenture (consulting), Tesla, Cadence (hardware), Hewlett Packard Enterprise (HPE), and SpaceX.</p></li><li><p><strong>Dropouts: </strong>Meta and Oracle. Last year, Oracle was #4 on the list with 1,396 open software engineering roles, but the company <a href="https://time.com/article/2026/04/30/oracle-layoffs-ai-tech-jobs">announced</a> up to 30,000 layoffs in March. Also no longer leading in jobs available are Speechify, NTT Data, Meta, and DXC Technology.</p></li><li><p><strong>Big Tech companies hiring more than last year</strong>: Apple and Google, which has +62% more engineering roles advertised than last year.</p></li><li><p><strong>Big companies hiring less vs last year</strong>: Meta, Oracle, and TikTok all have much fewer openings listed. For Meta and Oracle, there&#8217;s little surprise given recent layoffs. TikTok was in US regulatory limbo until January, when a new TikTok USDS joint venture <a href="https://newsroom.tiktok.com/announcement-from-the-new-tiktok-usds-joint-venture-llc?lang=en">was established.</a></p></li><li><p><strong>Hardware companies hiring more software talent</strong>: Micron, Qualcomm, and AMD all have considerably more software engineering openings than last year.</p></li></ul><h3>Where are the &#8220;top&#8221; software engineering jobs?</h3><p>Most of these jobs are in the US, just as most companies leading in recruitment numbers are US-headquartered. Other leading locations for jobs are India, the UK, and Canada:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IE7U!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ffa0870-e258-4f97-b0c5-d02cc9bad147_1084x984.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IE7U!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ffa0870-e258-4f97-b0c5-d02cc9bad147_1084x984.png 424w, https://substackcdn.com/image/fetch/$s_!IE7U!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ffa0870-e258-4f97-b0c5-d02cc9bad147_1084x984.png 848w, https://substackcdn.com/image/fetch/$s_!IE7U!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ffa0870-e258-4f97-b0c5-d02cc9bad147_1084x984.png 1272w, https://substackcdn.com/image/fetch/$s_!IE7U!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ffa0870-e258-4f97-b0c5-d02cc9bad147_1084x984.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IE7U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ffa0870-e258-4f97-b0c5-d02cc9bad147_1084x984.png" width="1084" height="984" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3ffa0870-e258-4f97-b0c5-d02cc9bad147_1084x984.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:984,&quot;width&quot;:1084,&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_!IE7U!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ffa0870-e258-4f97-b0c5-d02cc9bad147_1084x984.png 424w, https://substackcdn.com/image/fetch/$s_!IE7U!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ffa0870-e258-4f97-b0c5-d02cc9bad147_1084x984.png 848w, https://substackcdn.com/image/fetch/$s_!IE7U!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ffa0870-e258-4f97-b0c5-d02cc9bad147_1084x984.png 1272w, https://substackcdn.com/image/fetch/$s_!IE7U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ffa0870-e258-4f97-b0c5-d02cc9bad147_1084x984.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Numbers and locations of software engineering jobs listed by leading tech companies. Source: <a href="https://www.trueup.io/job-trend">TrueUp</a></em></figcaption></figure></div><h3>Fastest-growing: fintech and security</h3><p>Then there are large companies where recruitment has been among the fastest anywhere in software engineering:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!slQE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2da6d85-79f9-4aa4-8194-dbdc1679058b_1248x906.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!slQE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2da6d85-79f9-4aa4-8194-dbdc1679058b_1248x906.png 424w, https://substackcdn.com/image/fetch/$s_!slQE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2da6d85-79f9-4aa4-8194-dbdc1679058b_1248x906.png 848w, https://substackcdn.com/image/fetch/$s_!slQE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2da6d85-79f9-4aa4-8194-dbdc1679058b_1248x906.png 1272w, https://substackcdn.com/image/fetch/$s_!slQE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2da6d85-79f9-4aa4-8194-dbdc1679058b_1248x906.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!slQE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2da6d85-79f9-4aa4-8194-dbdc1679058b_1248x906.png" width="1248" height="906" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c2da6d85-79f9-4aa4-8194-dbdc1679058b_1248x906.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:906,&quot;width&quot;:1248,&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_!slQE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2da6d85-79f9-4aa4-8194-dbdc1679058b_1248x906.png 424w, https://substackcdn.com/image/fetch/$s_!slQE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2da6d85-79f9-4aa4-8194-dbdc1679058b_1248x906.png 848w, https://substackcdn.com/image/fetch/$s_!slQE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2da6d85-79f9-4aa4-8194-dbdc1679058b_1248x906.png 1272w, https://substackcdn.com/image/fetch/$s_!slQE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2da6d85-79f9-4aa4-8194-dbdc1679058b_1248x906.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Companies which hired software engineers rapidly in the last two years</em></figcaption></figure></div><p>Software engineering headcount growth at some companies was significant over the past two years:</p><ul><li><p>Ramp (fintech): +94%</p></li><li><p>Wiz (security): +84%</p></li><li><p>Datadog (observability): +68%</p></li><li><p>Rippling (fintech): +55%</p></li><li><p>Figma (design tooling): +41%</p></li><li><p>Netflix (streaming): +37%</p></li></ul><p>Of this group, Datadog, Figma, and Netflix are publicly traded, and the largest by headcount:</p><ul><li><p><strong>Datadog</strong>: AI agents are driving demand for observability through the roof, and Datadog is the leader of the pack. There&#8217;s demand to expand their infra and offerings. AI companies are also customers: OpenAI famously &#8211; or infamously! &#8211; <a href="https://newsletter.pragmaticengineer.com/i/175118968/1-is-openai-spending-record-sums-on-datadog">spent around $170M on Datadog</a> in 2025.</p></li><li><p><strong>Figma</strong>: the design tooling company went public <a href="https://newsletter.pragmaticengineer.com/i/170985406/3-figmas-ipo-an-end-to-the-tech-ipo-winter">in 2025</a> and is heavily investing in products related to AI, such as Figma AI.</p></li><li><p><strong>Netflix</strong>: the streaming behemoth is transitioning from &#8220;just&#8221; being a video streamer to becoming a broader entertainment platform, doing live events, advertising, gaming, and more. <em>We did a podcast with Netflix CTO, Elizabeth Stone, in 2025 about <a href="https://newsletter.pragmaticengineer.com/p/netflix">Netflix&#8217;s engineering culture</a>.</em></p></li></ul><h2>4. AI engineering: explosive demand</h2><p>AI engineering demand is only going in one direction: upwards, at a fierce tick. Last September, our previous <a href="https://newsletter.pragmaticengineer.com/p/state-of-the-tech-market-in-2025">State of the Tech Job Market report</a> found that AI Engineering was the hottest segment in tech for job listings growth. Today, the trend seems to continue:</p>
      <p>
          <a href="https://newsletter.pragmaticengineer.com/p/state-of-the-job-market-2026">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The Pulse: Antigravity 2.0 takes ‘IDE’ out of its new IDE]]></title><description><![CDATA[Negative feedback greets Google&#8217;s redesigned AI IDE, why Google&#8217;s product ecosystem is so chaotic, Meta cuts 10% of staff as it hits record revenue and profits, and more]]></description><link>https://newsletter.pragmaticengineer.com/p/the-pulse-antigravity-20-takes-ide</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/the-pulse-antigravity-20-takes-ide</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Thu, 21 May 2026 17:01:39 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!QVIZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e853b57-6352-4ffc-b5c8-0176efbeb101_1430x1056.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>The Pulse is a series covering events, insights, and trends within Big Tech and startups. Notice an interesting event or trend? Hit reply and share it with me.</em></p><p>Today, we cover:</p><ol><li><p><strong>Antigravity 2.0 takes the &#8216;IDE&#8217; out of its new IDE. </strong>Feedback about the redesigned IDE is overwhelmingly negative due to bugs, poor UX &amp; model support, and eating through Gemini token quotas. Also: a clue that Antigravity&#8217;s own devs use other tools for their work?</p></li><li><p><strong>Why is Google&#8217;s product ecosystem chaotic? </strong>The range of products on display at the Google I/O conference made a messy, incoherent impression. But Google&#8217;s &#8220;let a thousand flowers bloom&#8221; approach might be giving the search giant an underrated advantage in the AI race that no other Big Tech giant has.</p></li><li><p><strong>Meta cuts 8,000 jobs. </strong>Morale is very low inside the social media giant as thousands lose their jobs, just as revenue and profits hit record levels. Meanwhile, those assigned to dull data labeling work are spared the axe.</p></li><li><p><strong>Industry pulse. </strong>Anthropic pays $15B/year for SpaceX compute, SpaceX&#8217;s financials and IPO filing, more woes for GitHub, court dismisses Elon Musk&#8217;s &#8220;hypocritical&#8221; OpenAI lawsuit, and Spain may stop blocking its internet during La Liga football games.</p></li><li><p><strong>How to get a job at a frontier lab in 2026. </strong>A Distinguished Engineer at Google recommends focusing on developing particular skills</p></li></ol><h2>1. Antigravity 2.0 takes the &#8216;IDE&#8217; out of its new IDE</h2>
      <p>
          <a href="https://newsletter.pragmaticengineer.com/p/the-pulse-antigravity-20-takes-ide">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Why Rust is different, with Alice Ryhl]]></title><description><![CDATA[Alice Ryhl from Google&#8217;s Android Rust team explains why developers love Rust, and what makes the language so powerful for building reliable software.]]></description><link>https://newsletter.pragmaticengineer.com/p/why-rust-is-different-with-alice</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/why-rust-is-different-with-alice</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Wed, 20 May 2026 16:22:00 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/198284678/98eeb62f8e18bb7bdd2d7a1337b2a60b.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<h3>Stream the latest episode</h3><p><strong>Listen and watch now on <a href="https://youtu.be/q9xD36NCtZ8">YouTube</a>, <a href="https://open.spotify.com/episode/0iReyylj72BKPaUD1hE5FG">Spotify</a>, and <a href="https://podcasts.apple.com/us/podcast/why-rust-is-different-with-alice-ryhl/id1769051199?i=1000768769667">Apple</a>.</strong> See the episode transcript at the top of this page, and timestamps for the episode at the bottom. </p><h3><strong>Brought to You by</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!E4-f!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcea314b0-b7f7-469d-aaf4-2d8a6bb172bf_1200x105.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!E4-f!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcea314b0-b7f7-469d-aaf4-2d8a6bb172bf_1200x105.png 424w, https://substackcdn.com/image/fetch/$s_!E4-f!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcea314b0-b7f7-469d-aaf4-2d8a6bb172bf_1200x105.png 848w, https://substackcdn.com/image/fetch/$s_!E4-f!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcea314b0-b7f7-469d-aaf4-2d8a6bb172bf_1200x105.png 1272w, https://substackcdn.com/image/fetch/$s_!E4-f!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcea314b0-b7f7-469d-aaf4-2d8a6bb172bf_1200x105.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!E4-f!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcea314b0-b7f7-469d-aaf4-2d8a6bb172bf_1200x105.png" width="1200" height="105" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cea314b0-b7f7-469d-aaf4-2d8a6bb172bf_1200x105.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:105,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:30195,&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://newsletter.pragmaticengineer.com/i/198284678?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcea314b0-b7f7-469d-aaf4-2d8a6bb172bf_1200x105.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_!E4-f!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcea314b0-b7f7-469d-aaf4-2d8a6bb172bf_1200x105.png 424w, https://substackcdn.com/image/fetch/$s_!E4-f!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcea314b0-b7f7-469d-aaf4-2d8a6bb172bf_1200x105.png 848w, https://substackcdn.com/image/fetch/$s_!E4-f!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcea314b0-b7f7-469d-aaf4-2d8a6bb172bf_1200x105.png 1272w, https://substackcdn.com/image/fetch/$s_!E4-f!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcea314b0-b7f7-469d-aaf4-2d8a6bb172bf_1200x105.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p>&#8226; <strong><a href="https://antithesis.com/pragmatic">Antithesis</a></strong> &#8211; if you write Rust code, check out <a href="https://hegel.dev/">Hegel-Rust</a>: a free, open-source property-based testing library for Rust, built by the team behind Hypothesis. It&#8217;s now <a href="https://antithesis.com/blog/2026/hegel/">maintained by Antithesis</a>. If you try Hegel and like it, your Hegel tests will run in <a href="https://antithesis.com/pragmatic">Antithesis</a> as written, as well.</p><p>&#8226; <strong><a href="https://sentry.io/pragmatic">Sentry</a></strong> &#8211; application monitoring software built by developers, for developers. I&#8217;ve used Sentry for 10 years now, starting back at Uber. It shows you the full context on issues: stack traces, user actions, environment details, and more. A new, recent feature: <a href="https://sentry.io/lp/seer">Seer</a>, their debugging agent &#8212; I like it! <a href="https://sentry.io/pragmatic">Check out Sentry.</a></p><p>&#8226; <strong><a href="https://craft-conf.com/2026">Craft Conference</a></strong>: meet myself, Kent Beck, Hillel Wayne and other standout speakers on 4 June, in Budapest, Hungary, at the conference dedicated to the art and science of software delivery craft. <a href="https://craft-conf.com/2026">See details.</a></p><h3><strong>In this episode</strong></h3><p>Rust is one of the most admired programming languages around &#8211; and also one of the hardest to learn. What makes developers stick with it?</p><p>In this episode of The Pragmatic Engineer Podcast, I sit down with Alice Ryhl, a software engineer on Google&#8217;s Android Rust team, and a core maintainer of Tokio, which is the most widely-used async runtime in Rust.</p><p>We discuss what makes Rust different from other languages like TypeScript, Go, and C++, and why so many developers say that &#8220;once it compiles, it works.&#8221; We go deep into memory safety, ownership, borrowing, unsafe Rust, and Cargo.</p><p>We also cover how Rust is governed by RFCs, feature flags, its six-week release cycle, how engineers get paid to work on the language, and also look into how Rust&#8217;s use inside the Linux kernel is progressing.</p><h3>My observations from the conversation with Alice</h3><p>Here are 12 of my most interesting takeaways from talking with Alice:</p><div id="youtube2-q9xD36NCtZ8" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;q9xD36NCtZ8&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/q9xD36NCtZ8?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>1. Open source contributions can open career doors.</strong> Alice landed her Google job not by sending in an application, but by spending years answering questions on Rust forums, and contributing to documentation and code. She also became a maintainer of Tokio while a college student. One day, an email arrived in her inbox, asking: &#8220;do you want to work on the Android Rust team?&#8221;</p><p><strong>2. Reliability is the backend pitch for choosing Rust over TypeScript. </strong>Alice is adamant that Rust is a backend language and not a TypeScript replacement on the frontend. Rust&#8217;s design for minimizing errors and maximizing reliability can make it a better choice than TypeScript on the backend.</p><p><strong>3. Rust over C++ for development is a strong choice for avoiding a host of security vulnerabilities.</strong> In C++, a trivial off-by-one error in an array can become a massive security vulnerability. In contrast, Rust&#8217;s memory safety eliminates an entire class of such bugs, unless you are brave &#8211; or foolhardy &#8211; enough to use an &#8220;unsafe&#8221; keyword, that is!</p><p><strong>4. Rust was designed to turn implicit failures into compile errors. </strong>Where other languages allow you to forget something, Rust makes an omission into a compilation error for things like null checks, uninitialized variables, or error propagation with the &#8216;?&#8217; character. If you mess something up, it&#8217;s almost certain your program will not compile. If it does, at the very least you should see a lint warning. <em>We previously covered how Andrey Breslav, creator of Kotlin, <a href="https://newsletter.pragmaticengineer.com/p/the-programming-language-after-kotlin">purposely made null safety an important part of Kotlin</a>.</em></p><p><strong>5. The hardest part of learning Rust is not syntax, but data structure design.</strong> Alice observes that newcomers reflexively build cyclic object graphs, like a Book object referencing Page objects that refer back to the Book. Such cyclic graphs are possible in Rust, but its ownership model makes this hard, meaning that Rust novices end up battling the compiler. Obvious solutions are to use structs and understand how ownership works in Rust.</p><p><strong>6. Refactoring in Rust is safe and easy, thanks to the compiler. </strong>Alice: &#8220;I change a return type or struct field, then just fix the compiler errors until the compiler stops shouting. And then once I&#8217;ve done that, I&#8217;ve updated every place I need to update.&#8221; Rust&#8217;s focus on correctness makes refactoring it more straightforward than dynamically-typed languages and Java-style typed ones are to refactor.</p><p><strong>7. Rust may be optimal for AI agents because of the compiler&#8217;s high-quality feedback loop.</strong> Alice&#8217;s refactoring trick of just doing what the compiler says also applies to agents: they can talk to the compiler, be told what to fix, and iterate. Combined with Rust blocking entire bug classes by design, this makes it one of the better languages for agent-generated code.</p><p><strong>8. &#8220;Editions&#8221; allow Rust to make breaking changes without &#8216;breaking&#8217; anyone&#8217;s code.</strong> Rust editions (2015, 2018, 2021, 2024) can be mixed freely across crates. A library on the 2021 edition works seamlessly with a binary on the 2024 edition. This is how Rust evolves syntax (like adding async/await as keywords) without forcing an ecosystem-wide migration.</p><p><strong>9. Rust&#8217;s governance precludes a &#8220;benevolent dictator for life&#8221;. </strong>Unlike with Python and Linux, teams in Rust self-organize and delegate to each other. Tough questions are hashed out at in-person events like &#8216;Rust All Hands&#8217;. It&#8217;s a good illustration that open source projects can thrive across different structures.</p><p><strong>10. Rust in the Linux kernel has graduated from &#8220;experimental.&#8221;</strong> At December 2025&#8217;s Linux Kernel Maintainer Summit, the kernel community agreed Rust is no longer experimental. Combined with US Department of Defense regulations pushing agencies away from non-memory-safe languages, this means we should see more Rust in the Linux kernel and everywhere else, too.</p><p><strong>11. AI code review may matter more than AI code generation in safety-critical codebases.</strong> The kernel community is experimenting with AI bots that review mailing-list patches. Maintainers reportedly find them impressive, especially for kernel code; an area where quality and reliability has always been more important than quantity. It&#8217;s interesting that AI might be helpful as an extra quality gate.</p><p><strong>12. Risk of AI-assisted Rust: false fluency. </strong>Since Rust&#8217;s compiler is so strict, code that compiles can be assumed to be correct. However, Alice describes AI agents adding Rust versions of C build flags with no purpose! She also cautions that junior engineers using AI to learn Rust run the risk of not understanding why the compiler accepts the code they produce.</p><h3><strong>The Pragmatic Engineer deepdives relevant for this episode</strong></h3><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/the-past-and-future-of-backend-practices">The past and future of modern backend practices</a></p><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/the-programming-language-after-kotlin">How Kotlin was built</a> with Andrey Breslav</p><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/from-swift-to-mojo-and-high-performance">How Swift was built</a> with Chris Lattner</p><p><strong>&#8226; </strong><a href="https://newsletter.pragmaticengineer.com/p/how-linux-is-built-with-greg-kroah">How Linux is built</a> with Greg KH</p><h3><strong>Timestamps</strong></h3><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8">00:00</a>) Intro</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=249s">04:09</a>) Tokio: an overview</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=311s">05:11</a>) What Alice likes about Rust</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=768s">12:48</a>) Rust for TypeScript engineers</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=831s">13:51</a>) Moving from C++ to Rust</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=874s">14:34</a>) Memory safety</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=1092s">18:12</a>) Garbage collection tradeoffs</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=1306s">21:46</a>) Ownership, references, and borrowing</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=1619s">26:59</a>) Unsafe in Rust</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=1881s">31:21</a>) Crates and Cargo</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=2155s">35:55</a>) Language design and RFCs</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=2582s">43:02</a>) Building new features</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=2790s">46:30</a>) Editions vs. versions</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=2987s">49:47</a>) Getting paid to work on Rust</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=3087s">51:27</a>) Contributing to Rust</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=3183s">53:03</a>) Rust in the Linux kernel</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=3345s">55:45</a>) AI use cases for Rust</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=3695s">1:01:35</a>) Learning Rust</p><p>(<a href="https://www.youtube.com/watch?v=q9xD36NCtZ8&amp;t=3834s">1:03:54</a>) Book recommendation</p><h3><strong>References</strong></h3><p><strong>Where to find Alice Ryhl:</strong></p><p>&#8226; LinkedIn: <a href="https://www.linkedin.com/in/aliceryhl">https://www.linkedin.com/in/aliceryhl</a></p><p>&#8226; Website: <a href="https://ryhl.io">https://ryhl.io</a></p><p><strong>Mentions during the episode:</strong></p><p>&#8226; Rust: <a href="https://rust-lang.org">https://rust-lang.org</a></p><p>&#8226; Tokio: <a href="https://tokio.rs">https://tokio.rs</a></p><p>&#8226; Minecraft: <a href="https://www.minecraft.net">https://www.minecraft.net</a></p><p>&#8226; Rust Users Forum: <a href="https://users.rust-lang.org">https://users.rust-lang.org</a></p><p>&#8226; Null&#8217;s creator regrets inventing it: <a href="https://news.ycombinator.com/item?id=12427069">https://news.ycombinator.com/item?id=12427069</a></p><p>&#8226; PHP: <a href="https://www.php.net">https://www.php.net</a></p><p>&#8226; Go: <a href="https://go.dev">https://go.dev</a></p><p>&#8226; TypeScript: <a href="https://www.typescriptlang.org">https://www.typescriptlang.org</a></p><p>&#8226; C++: <a href="https://en.wikipedia.org/wiki/C%2B%2B">https://en.wikipedia.org/wiki/C%2B%2B</a></p><p>&#8226; Pip: <a href="https://pypi.org/project/pip">https://pypi.org/project/pip</a></p><p>&#8226; Why Cargo Exists: <a href="https://doc.rust-lang.org/cargo/guide/why-cargo-exists.html">https://doc.rust-lang.org/cargo/guide/why-cargo-exists.html</a></p><p>&#8226; Linus Torvalds: <a href="https://en.wikipedia.org/wiki/Linus_Torvalds">https://en.wikipedia.org/wiki/Linus_Torvalds</a></p><p>&#8226; Rust Week: <a href="https://2026.rustweek.org">https://2026.rustweek.org</a></p><p>&#8226; Inside Amazon&#8217;s Engineering Culture: <a href="https://newsletter.pragmaticengineer.com/p/amazon">https://newsletter.pragmaticengineer.com/p/amazon</a></p><p>&#8226; How Linux is built with Greg Kroah-Hartman: <a href="https://newsletter.pragmaticengineer.com/p/how-linux-is-built-with-greg-kroah">https://newsletter.pragmaticengineer.com/p/how-linux-is-built-with-greg-kroah</a></p><p>&#8226; Community Grants Program: <a href="https://rustfoundation.org/media/tag/community-grants-program">https://rustfoundation.org/media/tag/community-grants-program</a></p><p>&#8226; Zulip: <a href="https://forge.rust-lang.org/platforms/zulip.html">https://forge.rust-lang.org/platforms/zulip.html</a></p><p>&#8226; The Linux Kernel Archives: <a href="https://www.kernel.org">https://www.kernel.org</a></p><p>&#8226; Linux Plumbers Conference: <a href="https://lpc.events">https://lpc.events</a></p><p>&#8226; Gemini: <a href="https://gemini.google.com/app">https://gemini.google.com/app</a></p><p>&#8226; <em>The Rust Programming Language</em>: <a href="https://doc.rust-lang.org/book">https://doc.rust-lang.org/book</a></p><p>&#8226; <em>Rust for Rustaceans: Idiomatic Programming for Experienced Developers</em>: <a href="https://www.amazon.com/Rust-Rustaceans-Programming-Experienced-Developers/dp/1718501854">https://www.amazon.com/Rust-Rustaceans-Programming-Experienced-Developers/dp/1718501854</a></p><p>&#8226; Rustlings: <a href="https://rustlings.rust-lang.org">https://rustlings.rust-lang.org</a></p><p>&#8212;</p><p>Production and marketing by <a href="https://penname.co/">Pen Name</a>. </p><p></p>]]></content:encoded></item><item><title><![CDATA[AI’s impact on software engineers in 2026: key trends, Part 2]]></title><description><![CDATA[Tradeoffs of AI tooling, why adopting AI at company-level is hard, what&#8217;s changed in two years, and more. The third and final part of a series analyzing our 2026 AI survey results]]></description><link>https://newsletter.pragmaticengineer.com/p/ai-impact-on-software-engineers-part-2</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/ai-impact-on-software-engineers-part-2</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Tue, 19 May 2026 16:43:10 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!tEGy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F039155a2-16a1-481e-bddd-8774cb34e85d_1424x1174.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Earlier this year, we asked The Pragmatic Engineer subscribers about the AI tools you use, how you use them, and, crucially, what you think of them. We received more than 900 responses, and with this article we conclude our analysis of that data, covering:</p><ol><li><p><strong>Tradeoffs of AI tooling. </strong>Positive and negative sentiments, like how AI tools often mean less time spent on tedious, repetitive work, but that it often leads to unrealistic business expectations.</p></li><li><p><strong>Adopting AI at scale is hard. </strong>Companies are struggling to achieve adoption that feels productive at the team and org levels. Our survey finds the benefits of AI heavily depend on the engineering culture that was in place before.</p></li><li><p><strong>Impact on codebase quality. </strong>Codebase quality seems to be decreasing, but management at most places does not care. Meanwhile, maintenance duty is falling upon a shrinking number of engineers who still understand increasingly complex codebases.</p></li><li><p><strong>Less experienced engineers and AI. </strong>For these folks, AI seems to be less helpful and they rack up higher AI token bills. Maybe they need more space to learn, mentorship, and support.</p></li><li><p><strong>AI tooling &#8216;addiction&#8217;. </strong>Using AI agents &#8220;feels like a slot machine&#8221; encouraging &#8220;just one more prompt&#8221;-type behavior, while some folks think that the pricing of plans is built in a way to &#8220;lure&#8221; them to prompt more and more.</p></li><li><p><strong>Changes since 2024. </strong>Fewer devs are negative about AI, but there&#8217;s not all that much more positivity. The models have become much higher quality, and better tooling improves trust.</p></li><li><p><strong>Where are we headed? </strong>The concept of code ownership seems to be eroding, and collaboration within teams becomes less important.</p></li></ol><p>Previously in this series, we covered:</p><ul><li><p><strong><a href="https://newsletter.pragmaticengineer.com/p/ai-tooling-2026">AI tooling for software engineers in 2026</a></strong>: a detailed summary of survey responses, covering the most-used AI tools, trends, AI agent usage, company size and usage, and tools engineers love.</p></li><li><p><strong><a href="https://newsletter.pragmaticengineer.com/p/the-impact-of-ai-on-software-engineers-2026">The impact of AI on software engineers in 2026: key trends. Part 1</a></strong>. Concerns about mounting AI costs, more engineers hitting usage limits, and AI tools having uneven effects upon different types of engineers</p></li></ul><p>Full subscribers can <a href="https://newsletter.pragmaticengineer.com/i/40654455/reports">access a more detailed report.</a></p><h2>1. AI tooling tradeoffs</h2><p>What can be said about the impact of AI tooling on engineers this year? Well, based on the responses that readers sent in to our survey, there are some common patterns:</p><h3>Code and output tradeoffs</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!I4Ms!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00f0973e-3076-43f7-874a-b0a32ad1f19c_1460x1240.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!I4Ms!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00f0973e-3076-43f7-874a-b0a32ad1f19c_1460x1240.png 424w, https://substackcdn.com/image/fetch/$s_!I4Ms!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00f0973e-3076-43f7-874a-b0a32ad1f19c_1460x1240.png 848w, https://substackcdn.com/image/fetch/$s_!I4Ms!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00f0973e-3076-43f7-874a-b0a32ad1f19c_1460x1240.png 1272w, https://substackcdn.com/image/fetch/$s_!I4Ms!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00f0973e-3076-43f7-874a-b0a32ad1f19c_1460x1240.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!I4Ms!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00f0973e-3076-43f7-874a-b0a32ad1f19c_1460x1240.png" width="1456" height="1237" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/00f0973e-3076-43f7-874a-b0a32ad1f19c_1460x1240.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1237,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:690484,&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://newsletter.pragmaticengineer.com/i/198435184?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00f0973e-3076-43f7-874a-b0a32ad1f19c_1460x1240.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_!I4Ms!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00f0973e-3076-43f7-874a-b0a32ad1f19c_1460x1240.png 424w, https://substackcdn.com/image/fetch/$s_!I4Ms!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00f0973e-3076-43f7-874a-b0a32ad1f19c_1460x1240.png 848w, https://substackcdn.com/image/fetch/$s_!I4Ms!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00f0973e-3076-43f7-874a-b0a32ad1f19c_1460x1240.png 1272w, https://substackcdn.com/image/fetch/$s_!I4Ms!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00f0973e-3076-43f7-874a-b0a32ad1f19c_1460x1240.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Productivity tradeoffs</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eDmt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e481765-692c-459a-8842-8b619f4f9d34_1460x1132.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eDmt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e481765-692c-459a-8842-8b619f4f9d34_1460x1132.png 424w, https://substackcdn.com/image/fetch/$s_!eDmt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e481765-692c-459a-8842-8b619f4f9d34_1460x1132.png 848w, https://substackcdn.com/image/fetch/$s_!eDmt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e481765-692c-459a-8842-8b619f4f9d34_1460x1132.png 1272w, https://substackcdn.com/image/fetch/$s_!eDmt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e481765-692c-459a-8842-8b619f4f9d34_1460x1132.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eDmt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e481765-692c-459a-8842-8b619f4f9d34_1460x1132.png" width="1456" height="1129" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6e481765-692c-459a-8842-8b619f4f9d34_1460x1132.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1129,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:648183,&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://newsletter.pragmaticengineer.com/i/198435184?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e481765-692c-459a-8842-8b619f4f9d34_1460x1132.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_!eDmt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e481765-692c-459a-8842-8b619f4f9d34_1460x1132.png 424w, https://substackcdn.com/image/fetch/$s_!eDmt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e481765-692c-459a-8842-8b619f4f9d34_1460x1132.png 848w, https://substackcdn.com/image/fetch/$s_!eDmt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e481765-692c-459a-8842-8b619f4f9d34_1460x1132.png 1272w, https://substackcdn.com/image/fetch/$s_!eDmt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e481765-692c-459a-8842-8b619f4f9d34_1460x1132.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Research <a href="https://www.microsoft.com/en-us/worklab/work-trend-index/agents-human-agency-and-the-opportunity-for-every-organization">published</a> two weeks ago (5 May) by Microsoft claims AI expands the pool of people who can do high-value work. Our survey found similar, while MS&#8217;s findings are based on Microsoft 365 Copilot chat usage.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-aYC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F699d2e7a-b015-4612-9092-89c2d6de1e70_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-aYC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F699d2e7a-b015-4612-9092-89c2d6de1e70_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!-aYC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F699d2e7a-b015-4612-9092-89c2d6de1e70_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!-aYC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F699d2e7a-b015-4612-9092-89c2d6de1e70_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!-aYC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F699d2e7a-b015-4612-9092-89c2d6de1e70_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-aYC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F699d2e7a-b015-4612-9092-89c2d6de1e70_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/699d2e7a-b015-4612-9092-89c2d6de1e70_1920x1080.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;: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_!-aYC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F699d2e7a-b015-4612-9092-89c2d6de1e70_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!-aYC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F699d2e7a-b015-4612-9092-89c2d6de1e70_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!-aYC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F699d2e7a-b015-4612-9092-89c2d6de1e70_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!-aYC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F699d2e7a-b015-4612-9092-89c2d6de1e70_1920x1080.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">&#8220;<em>AI used to do more high-value work&#8221; Source: <a href="https://www.microsoft.com/en-us/worklab/work-trend-index/agents-human-agency-and-the-opportunity-for-every-organization">Microsoft</a></em></figcaption></figure></div><p>Obviously, Microsoft has an interest in showing the benefits of its AI tools, but in this specific area, it&#8217;s telling that both studies agree AI does allow devs and non-devs to expand the type of work they do.</p><h3>Software engineering tradeoffs</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UmZb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd00bd67a-d708-4dee-af88-0a901fe712de_1500x1290.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UmZb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd00bd67a-d708-4dee-af88-0a901fe712de_1500x1290.png 424w, https://substackcdn.com/image/fetch/$s_!UmZb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd00bd67a-d708-4dee-af88-0a901fe712de_1500x1290.png 848w, https://substackcdn.com/image/fetch/$s_!UmZb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd00bd67a-d708-4dee-af88-0a901fe712de_1500x1290.png 1272w, https://substackcdn.com/image/fetch/$s_!UmZb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd00bd67a-d708-4dee-af88-0a901fe712de_1500x1290.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UmZb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd00bd67a-d708-4dee-af88-0a901fe712de_1500x1290.png" width="1456" height="1252" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d00bd67a-d708-4dee-af88-0a901fe712de_1500x1290.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1252,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:591806,&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://newsletter.pragmaticengineer.com/i/198435184?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd00bd67a-d708-4dee-af88-0a901fe712de_1500x1290.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_!UmZb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd00bd67a-d708-4dee-af88-0a901fe712de_1500x1290.png 424w, https://substackcdn.com/image/fetch/$s_!UmZb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd00bd67a-d708-4dee-af88-0a901fe712de_1500x1290.png 848w, https://substackcdn.com/image/fetch/$s_!UmZb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd00bd67a-d708-4dee-af88-0a901fe712de_1500x1290.png 1272w, https://substackcdn.com/image/fetch/$s_!UmZb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd00bd67a-d708-4dee-af88-0a901fe712de_1500x1290.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>With AI tools, their &#8216;mileage may vary&#8217; among individuals. </strong>For example, some respondents told us they can spend much more time in a &#8220;flow state&#8221; thanks to AI tools, as they don&#8217;t have to wait for input from peers, can keep unblocking themselves, and have fewer interruptions.</p><p>But others say the opposite: that because they can start so many more tasks in parallel with AI tools, they keep context switching which knocks them out of a flow state!</p><p>The positives and negatives of these tools seem dependent on the environment respondents work in, individuals&#8217; personality traits, and where users are on the AI learning curve.</p><h2>2. Adopting AI at scale is hard</h2><p>One pattern in the responses is that adopting AI at company-scale remains challenging, including:</p><ul><li><p><strong>Costs</strong>: a growing concern covered in depth <a href="https://newsletter.pragmaticengineer.com/i/194201128/1-costs">in Part 1</a></p></li><li><p><strong>Usage</strong>: getting people to use AI tools continuously is not always straightforward</p></li><li><p><strong>Onboarding and education</strong>: at larger companies, there needs to be support to help devs make the most of the tools</p></li><li><p><strong>Reviewing AI-generated output:</strong> code review is a particular pain point</p></li><li><p><strong>Integrating with internal systems:</strong> AI tools are more helpful when they are seamlessly integrated with internal systems, hence why many larger companies use in-house, deeply embedded coding agents</p></li></ul><p>Adopting AI at company-level doesn&#8217;t lead to a magical fix for engineering problems, while the benefits of AI in an organizational sense seem to depend on what was in place <em>before</em>.</p><p><strong>Case in point, AI seems to amplify pre-existing engineering culture. </strong>AI doesn&#8217;t change the underlying <em>quality</em> of an organization&#8217;s engineering culture. Teams with strong engineering practices get more positive benefits out of AI than those without. Teams that see benefits from AI tools already had:</p><ul><li><p><strong>Guardrails</strong>: testing and automation around the codebase and deployments</p></li><li><p><strong>Documentation</strong>: they recorded their architectural decisions and engineering practices</p></li><li><p><strong>A quality codebase:</strong> AI agents will replicate patterns already in a codebase</p></li></ul><p>A few quotes on this from respondents to our survey:</p><blockquote><p>&#8220;AI is an amplifier, not a fixer. Good software engineering practices get multiplied. So do the bad ones. Embedding this properly in teams is exciting and important&#8221;. <em>&#8211; Staff+ engineer at a large company in Europe</em></p><p>&#8220;I feel like AI allows both faster prototyping and increased velocity on iterations to production software; it relies on existing best practices / project templates our team already have&#8221;. &#8211; <em>Solutions Architect at a small company in the US</em></p></blockquote><p><strong>A workflow that makes one dev &#8220;10x&#8221; more productive may not work for another. </strong>This is another reason why rolling out AI tools doesn&#8217;t seem to magically make everyone more productive. A senior engineer working at a large company in Canada told us:</p><blockquote><p><em>&#8220;It feels like AI workflows are very idiosyncratic in that some people derive (I hate this framing, but&#8230;) 10x more productivity benefit from them than other apparently equally clever, educated, and diligent developers. It feels like finding a workflow that clicks with your own habits and heuristics is more important than finding a global optimum for everyone&#8221;.</em></p></blockquote><p><strong>AI amplifies individuals differently, so the team impact is messy to figure out. </strong>A US-based principal engineer at a large company reflected on feeling disconnected from colleagues because of how they use AI differently:</p><blockquote><p><em>&#8220;I use AI in what I think is probably a more sophisticated way than most of my colleagues, so there can be a disconnect between my work and theirs, which is not good news because I am &#8220;The Principal&#8221; on the team&#8221;.</em></p></blockquote><p><strong>&#8220;The tool that works for you&#8221; approach can lead to tooling chaos, even at a team level. </strong>While it&#8217;s empowering to allow devs to choose the AI tools they feel are the most helpful, over time it becomes chaotic when teams can choose their own tech stacks, and when at large companies there are dozens of different technologies. A staff+ engineer at a 200-person business in the Middle East wrote in their response:</p><blockquote><p><em>&#8220;We&#8217;re still trying to figure out how to deal with tooling consistency on a team level. It&#8217;s one of our biggest struggles, but possibly more due to company structure than anything else. Everyone is using different tools with little coherence. It&#8217;s been rough.&#8221;</em></p></blockquote><p><strong>Some companies have briefly rolled back AI to deal with the negative effects first.</strong> From an engineering lead at a 10,000+ person company in Europe:</p><blockquote><p><em>&#8220;Since the AI boom, the quality of technical writing and reasoning from senior engineers in my org has significantly deteriorated. There&#8217;s an overwhelming volume of low-quality work product that is generated entirely or in part by AI, which has made it very difficult to conduct meaningful review of RFCs or code. We&#8217;ve also seen costly production incidents caused by code written and/or approved by AI, and &#8211; while my employer initially bought heavily into the hype &#8211; we have now rolled back some of our AI tools to deal with the drop in quality.&#8221;</em></p></blockquote><h2>3. Impact on codebase quality</h2><p><strong>A concrete pattern in our survey data is that codebase quality is decreasing due to AI. </strong>The contributing factors are not surprising:</p><ul><li><p>&#8220;AI slop&#8221;: more low-quality code generated, such as duplicated, verbose code, and poor abstractions</p></li><li><p>Too many code reviews, which means review quality slips</p></li><li><p>More bugs: due to faster code output and less strict reviews, more bugs sneak into codebases</p></li></ul><p>We discuss the degradation of products and codebases in a recent deepdive, <a href="https://newsletter.pragmaticengineer.com/p/are-ai-agents-actually-slowing-us">Are AI agents actually slowing us down?</a></p><p>One CTO at a European startup lists their negatives about increased AI usage:</p><ol><li><p><em>&#8220;A lot of tiny bugs and low code quality if you are not careful, verify carefully, and have good structure and guardrails</em></p></li><li><p><em>AI agents generate too much and repetitive code, making systems harder to maintain</em></p></li><li><p><em>Developers lose understanding of the codebase and become numb to bad architecture and bad developer experience&#8221;</em></p></li></ol><p><strong>According to our survey, management often seems unfazed by decreasing quality, and instead focuses on the higher output. </strong>A principal DevOps engineer at a large European company said:</p><blockquote><p><em>&#8220;In our company, we hand AI tools to inexperienced engineers who can&#8217;t distinguish good code from bad code and it&#8217;s falling on deaf ears in our leadership. They only seem to care about short to mid-term cost savings.&#8221;</em></p></blockquote><p><strong>The maintenance burden of AI-generated code is falling on the fewer engineers who understand and care. </strong>A staff engineer at a European company listed the problems that AI-generated code is causing:</p><ul><li><p><em>&#8220;Drive by&#8221; contributions are up:</em> many more occasional non-core-engineer contributors adding code but not sharing the maintenance burden</p></li><li><p><em>Contributing without adding guardrails: </em>many engineers and most of engineering leadership are not using reasonable guardrails like tests</p></li><li><p><em>AI slop from folks who have nothing to do with the codebase: </em>huge volume of slop incoming from people who don&#8217;t understand the codebase, but will commit and create PRs without fully understanding what they&#8217;re doing</p></li><li><p><em>Complexity is exploding: </em>thanks to the above</p></li></ul><p>The maintenance budget is falling upon fewer devs, while the task of refactoring bloated codebases and reducing complexity is left to those still sufficiently in touch with the codebase, thereby making the maintenance burden even worse.</p><p>But some leaders &#8220;get it.&#8221; A CEO at a 20-person company told us:</p><blockquote><p><em>&#8220;While AI has made generating code &#8216;cheaper&#8217;, the monitoring and maintenance worry me; the things that have traditionally cost the most in software. We&#8217;re increasing the rate of shipping large amounts of code with less understanding and increasing the unpredictability, so how do we work the predictability back on top?&#8221;</em></p></blockquote><p><strong>There is industry pressure on companies to adopt AI tooling and impose its usage upon engineers, </strong>driven by a mix of factors:</p><ul><li><p>Seeing actual benefits of AI and hearing that other teams and companies enjoy success with it</p></li><li><p>Fear of being left behind by competitors, or becoming less relevant</p></li><li><p>Anxiety about investor interest if a company is seen as not adopting the latest AI tools.</p></li></ul><p>This often leads to:</p><ul><li><p>Top-down mandates to use AI</p></li><li><p>Expectation of headcount reduction, with smaller teams doing the same amount or more</p></li><li><p>Management treating AI productivity gains as a <em>baseline</em> rather than a <em>bonus</em>.</p></li></ul><p>One staff engineer at a 10,000-person US company explained it like this:</p><blockquote><p><em>&#8220;AI is part of almost every work conversation. The entire company expects it to increase productivity and reduce the need to hire people. I keep trying to get better at using it and trying to make it more reliable so I can do more. I do worry about the quality of the work and atrophy of certain skills. It&#8217;s unclear to me if those skills even matter anymore.&#8221;</em></p></blockquote><p><strong>Pushing AI adoption </strong><em><strong>blindly</strong></em><strong> triggers red flags. </strong>Respondents shared what makes them worry about things going south in their workplaces:</p><ul><li><p><em>Focus on tracking AI usage, but not the quality of the output.</em> This will likely lead to product regressions and unhappy customers</p></li><li><p><em>Pushing for universal adoption.</em> Some companies target 50%, 80%, or 100% AI usage for certain tasks, seemingly blind to how some targets can worsen the quality of output, or simply create wasteful usage. <em>See the <a href="https://newsletter.pragmaticengineer.com/p/the-pulse-tokenmaxxing-as-a-weird">trend of tokenmaxxing</a>.</em></p></li><li><p><em>A focus on velocity, but without recognition of quality work. </em>Expecting more velocity and output seems to be the baseline, and there is no recognition for work truly well done.</p></li></ul><p>The &#8220;move fast and break things&#8221; mantra famously championed by Facebook seems widespread across the industry with AI tools. A senior manager working at a large, European-headquartered company told us:</p><blockquote><p><em>&#8220;I see a trend: move fast and break things, and end up breaking things too often. We have to learn to focus on testing and resiliency a lot more, as with AI-driven development we introduce more bugs than before. But the velocity gain is bigger for now&#8221;.</em></p></blockquote><p><strong>Output over quality is leading to the death of code review at some places. </strong>As a lead engineer working at a small company summarized:</p><blockquote><p><em>&#8220;We&#8217;re at the death of code review. I used to do very deep code reviews where I&#8217;d take the time to understand the architecture and organization and provide feedback on maintainability and efficiency. I have no motivation in spending that time to review a giant PR where it&#8217;s clear that even the original author didn&#8217;t bother to do that&#8221;.</em></p></blockquote><h2>4. Less experienced engineers and AI</h2><p>The first generation of software engineers who have never developed without the help of AI are now entering the industry. Here is a response from a young engineer working at a startup as an intern:</p><blockquote><p><em>&#8220;I have never worked as a developer without AI. Writing this scares me a bit, actually, but it&#8217;s the truth!&#8221;</em></p></blockquote><p>But this will be the new reality for those joining the industry. So, what needs to happen to help a new generation of &#8220;AI-native&#8221; grad engineers grow professionally?</p><p><strong>AI is an amplifier which could amplify the lack of experience. </strong>A staff engineer in the US at a large company told us:</p><blockquote><p><em>&#8220;Agentic AI is a fascinating mirror. It can code as well as the user who drives it. If that user is a junior engineer, now you have a faster junior engineer. If the user is a staff engineer, now you have a faster staff engineer.</em></p><p><em>What agentic AI doesn&#8217;t do is magically convert a junior engineer into a staff engineer, because the user driving it still needs enough experience to know what a good solution looks like&#8221;.</em></p></blockquote><p>A junior engineer in Australia shares their experience of how frustrating working with AI tools is:</p><blockquote><p><em>&#8220;I think AI agents are great for vibe coding or prototypes where the code quality and functionality doesn&#8217;t matter that much. I think it&#8217;s also useful for senior engineers who know what they&#8217;re doing.</em></p><p><em>For junior engineers like myself, these AI tools are stressful to use. I don&#8217;t have the experience or knowledge to tell AI exactly what to do or quickly confirm its output, so I spend a lot of time on just triple checking and redoing stuff. I&#8217;m overall frustrated, but I&#8217;m trying to embrace it as we&#8217;ve been asked to by the company&#8221;.</em></p></blockquote><p><strong>Less experienced engineers seem to use more AI tokens and rack up higher bills. </strong>Several respondents observed this: director-level folks noted that junior engineers are in the top-spender category in their orgs, and it is junior devs who spend tokens on unproductive use cases.</p><p>There should be more space for junior folks to grow because they use AI more, one staff engineer respondent said:</p><blockquote><p><em>&#8220;Companies need to give some breathing room to Junior engineers and help them learn and acquire knowledge using AI tools as a booster and not as a replacement&#8221;.</em></p></blockquote><p><strong>Junior folks seem to be delegated fewer opportunities that could help them grow. </strong>This is because senior people can turn to AI for tasks, including those which they would have previously delegated to an intern or new grad. A few responses mention this:</p><blockquote><p>&#8220;AI allows me to have work done that I would usually delegate to a junior or pay a SaaS for; e.g., writing drafts, summarizing the news. &#8220; <em>DevSecOps lead at a small company, Europe</em></p><p>&#8220;I&#8217;ve begun to automate any repetitive task that we previously relied on juniors and offshore contractors for.&#8221;<em> - Engineering manager, at a large company, US</em></p><p>&#8220;I no longer have to delegate work by writing a very long document and briefing a junior engineer.&#8221; <em>- Principal engineer, large company, Europe</em></p></blockquote><p><strong>Why not consider mentoring junior devs in your organization? </strong>It&#8217;s clear that less experienced engineers are having a rocky start to their careers, so delegating stuff to them instead of to AI could be of high value for newer generations of talent.</p><h2>5. AI tooling &#8216;addiction&#8217;</h2><p>It seems that the rapid feedback loops of AI-assisted development create addictive tendencies, and there&#8217;s a noteworthy presence of &#8220;addiction lingo&#8221; in some responses to our survey:</p>
      <p>
          <a href="https://newsletter.pragmaticengineer.com/p/ai-impact-on-software-engineers-part-2">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The Pulse: Forward deployed engineering heats up again]]></title><description><![CDATA[Also: a look into rising tech job losses, self-reporting 100% AI usage at big companies, vibe coding & agentic engineering merging, and more]]></description><link>https://newsletter.pragmaticengineer.com/p/the-pulse-forward-deployed-engineering</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/the-pulse-forward-deployed-engineering</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Thu, 14 May 2026 16:09:57 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!RbLf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e0e23f7-eda1-4ceb-9cd0-37106afa3828_1202x684.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>The Pulse is a series covering events, insights, and trends within Big Tech and startups. Notice an interesting event or trend? Hit reply and share it with me.</em></p><p>Today, we cover:</p><ol><li><p><strong>Forward deployed engineering heats up again. </strong>Massive demand for the role at Google, OpenAI, and Anthropic. The latest version of the FDE role looks like the consultant / solution a&#8230;</p></li></ol>
      <p>
          <a href="https://newsletter.pragmaticengineer.com/p/the-pulse-forward-deployed-engineering">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[TypeScript, C# and Turbo Pascal with Anders Hejlsberg]]></title><description><![CDATA[Anders Hejlsberg reflects on building Turbo Pascal, C#, and TypeScript, and shares what AI may change about the future of software engineering.]]></description><link>https://newsletter.pragmaticengineer.com/p/typescript-c-and-turbo-pascal-with</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/typescript-c-and-turbo-pascal-with</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Wed, 13 May 2026 17:06:59 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/197401883/bb88a9e892ab7cd020f06c8d63bf8a26.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<h3>Stream the latest episode</h3><p><strong>Listen and watch now on <a href="https://youtu.be/K-Xv8D8NjTk">YouTube</a>, <a href="https://open.spotify.com/episode/4EHEUwTLM0N4K8qC1xoBED">Spotify</a>, and <a href="https://podcasts.apple.com/us/podcast/the-pragmatic-engineer/id17https://podcasts.apple.com/us/podcast/typescript-c-and-turbo-pascal-with-anders-hejlsberg/id176905119969051199">Apple</a>.</strong> See the episode transcript at the top of this page, and timestamps for the episode at the bottom.</p><h3><strong>Brought to You by</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YCsL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YCsL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 424w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 848w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1272w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YCsL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png" width="1280" height="80" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:80,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:33236,&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://newsletter.pragmaticengineer.com/i/197401883?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.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_!YCsL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 424w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 848w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1272w, https://substackcdn.com/image/fetch/$s_!YCsL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39bdfbb4-fb73-41d8-83cb-0ca4832aed49_1280x80.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p><strong>&#8226; <a href="https://antithesis.com/pragmatic">Antithesis</a> &#8211;</strong> verify your system&#8217;s correctness in the development loop. Build, extend and deploy mission-critical systems: without human review or traditional integration tests, all while avoiding embarrassing outages. Antithesis goes far beyond code review and runs your <em>complete</em> system, exhaustively analyzing its behavior, and exposes bugs as quickly as agents introduce them. <a href="http://antithesis.com/pragmatic">Learn more</a>.</p><p><strong>&#8226; <a href="https://workos.com/">WorkOS</a> &#8211;</strong> Anders has spent decades thinking in programming languages &#8212; WorkOS speaks the same language when it comes to enterprise infrastructure: SSO, SCIM, RBAC, and more, built right so you never have to. <a href="https://workos.com/">See how</a>.</p><p><strong>&#8226; <a href="https://turbopuffer.com/pragmatic">turbopuffer</a> &#8211;</strong> a ridiculously scalable, fast and cheap vector and full-text search engine. Cursor moved to turbopuffer after their existing vector database couldn&#8217;t keep up with the number of codebases they were adding. This move cut their semantic search costs by 95%, and they have <a href="https://turbopuffer.com/customers/cursor">so many good things to say</a> about turbopuffer. <a href="https://turbopuffer.com/pragmatic">Check it out</a>.</p><h3><strong>In this episode</strong></h3><p>Anders Hejlsberg is a living legend and one of the most influential programming language designers of all time. He created Turbo Pascal, Delphi, C#, and also TypeScript. As well as that, he spent nearly a decade at the pioneering dev tools company, Borland, and is now in his 30th year of working at Microsoft, where he&#8217;s a Technical Fellow.</p><p>In this episode, we discuss what it takes to build programming languages that developers love to use, and trace his career from writing his first compiler to creating Turbo Pascal and Delphi, and helping to pioneer modern software development through C# and TypeScript.</p><p>Anders details how C# was designed by a small group of experienced language designers who met a few hours each week, and he explains why tooling was just as important as the language for TypeScript&#8217;s success, and what he has learned from building languages which stay relevant for decades.</p><p>We also look into how Anders uses AI today, which language features suit AI-assisted development, and what he thinks is changing in the craft of software engineering as developers move further away from writing code line by line.</p><p><em>It was special for me as well to talk with Anders: because my first-ever programming language was Turbo Pascal, and my first paying job was at a C# shop, back in the day. And I write most of my backend services using TypeScript, today.</em></p><h3>My observations from the conversation with Anders</h3><p>Here are 14 of my most interesting takeaways from talking with Anders:</p><div id="youtube2-K-Xv8D8NjTk" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;K-Xv8D8NjTk&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/K-Xv8D8NjTk?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>1. The first computers had zero abstractions on top of the hardware</strong>. Anders started programming on an HP 2100 with 32K of memory and a paper tape boot loader. &#8220;Things were so simple. You could see all the way to the bottom. There was just no layering. It was right on top of the hardware,&#8221; he says. The past 50 years of computing have been a process of adding layers above the hardware.</p><p><strong>2. Turbo Pascal won by being more than &#8220;just&#8221; a compiler.</strong> Anders also built an IDE to edit Turbo Pascal programs in, and a debugger to troubleshoot them with. In later languages which Anders designed, he always focused on the entire developer workflow, not just compilation.</p><p><strong>3. &#8220;10x better for 1/10th of the price&#8221; is a proven winner. </strong>This is what Turbo Pascal did: it sold for $49.95 when competing compilers cost $500, and it was faster and more interactive than competitors&#8217; products. Conveniently, the low price tag also killed off piracy</p><p><strong>4. The first Turbo Pascal &#8220;debugger&#8221; was an elegant hack.</strong> The compiler printed the program counter address on a runtime error. Then you could re-run the compiler in a mode that stopped at that address, and the IDE would show which line was being syntactically processed at that point. There were no line maps or debuggers built for this debugging experience: Constraints force creativity!</p><p><strong>5. C# might have not existed without a famous court case. </strong>Microsoft originally hired Anders to architect its Java tools (Visual J++), but the Sun versus Microsoft lawsuit (1997-2001) meant Microsoft could not build on top of Java, as the company that owned Java&#8217;s IP (Sun) sued MS for alleged unauthorized changes to the Java language. Microsoft realized it had to build a new language that combined VB&#8217;s productivity with C++&#8217;s power. This led to C# and .NET.</p><p><strong>6. The original C# design team numbered only six. </strong>They held three meetings per week which lasted two hours each, during which they debated what to build. Anders believes that designing even large languages does not require a large team; it&#8217;s the right experience that matters most. In that group, this meant folks who had built languages before.</p><p><strong>7. C# introduced the async/await pattern that many languages later ran with. </strong>Anders said this pattern spread to so many other languages because compilers can generate state machines that humans hate writing. Manual state machines require moving all stack states into objects and wrapping logic in a giant case statement. Devs generally loath doing this by hand, and async/await lets developers write sequential-looking code while the compiler does the painful rewrite behind the scenes.</p><p><strong>8. TypeScript exists because Anders refused to build Script# for the Outlook.com team. </strong>Microsoft&#8217;s Outlook.com team asked Anders&#8217; C# team to productize &#8220;Script#,&#8221; a language to cross-compile C# to JavaScript. Anders and the C# team pushed back, suggesting that a better approach was to fix JavaScript. Anders felt strongly that to be attractive to the best-of-breed developers in the JavaScript ecosystem, you want people to write <em>JavaScript</em>, and not another language like C#.</p><p><strong>9. Open development on GitHub made TypeScript much better. </strong>TypeScript was open source from the beginning in 2012 on CodePlex, Microsoft&#8217;s open source platform. There was not much community activity there, and in 2014, the project moved to GitHub with its large, active community. &#8220;Open development&#8221; on GitHub is what Anders credits for making TypeScript as good as it has become.</p><p><strong>10. The TypeScript compiler breaks many traditional practices</strong>. The compiler is built to support <a href="https://www.educative.io/answers/what-is-lazy-evaluation-in-typescript">lazy evaluations</a>, and <a href="https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-9.html">deferred imports</a>, and is functional by necessity. For example, with 500 files open, the compiler keeps abstract syntax trees (ASTs) cached for 499, and rebuilds just the one being edited. It only resolves the minimum types needed for the cursor&#8217;s current position.</p><p><strong>11. Training data volume is what makes AI great at TypeScript and Python. </strong>Anders says the language best suited for AI is the one that AI has seen the most in its training set. How well AI agents work in a specific language largely depends on how much of that language exists on the internet. It has less to do with the design of a language.</p><p><strong>12. But AI is limited for writing compilers &#8211; for now, at least. </strong>On Anders&#8217; team, AI is limited in terms of seeing the &#8220;big picture&#8221;; for example, how types, symbols, binding, and parsing all relate. It&#8217;s because LLM training sets don&#8217;t contain much about compilers as yet.</p><p><strong>13. Reviewing code could be the future of the craft.</strong> Anders predicts we&#8217;ll all be project managers in the future, managing armies of junior programmers, aka agents, which generate reams of code. Anders admits he is less interested in reviewing code, personally, but reckons code review could be made much more interesting; for example, AI generating commentary that guides reviewers through changes.</p><p><strong>14. Designing a programming language is a 10-year play.</strong> As Anders puts it:</p><blockquote><p>&#8220;Version one is great, but has all sorts of issues. You&#8217;ve got to do version two, but it&#8217;s not until version three that it really starts to be great. Then you&#8217;ve got to convince people to adopt it.&#8221;</p></blockquote><h3><strong>The Pragmatic Engineer deepdives relevant for this episode</strong></h3><p>&#8226; <a href="https://newsletter.pragmaticengineer.com/p/microsofts-developer-tools-roots">Microsoft&#8217;s developer tools roots</a></p><p>&#8226; <a href="https://newsletter.pragmaticengineer.com/p/50-years-of-microsoft">50 Years of Microsoft and developer tools</a> with Scott Guthrie</p><p>&#8226; <a href="https://newsletter.pragmaticengineer.com/p/how-linux-is-built-with-greg-kroah">How Linux is built</a> with Greg Kroah-Hartman</p><p>&#8226; <a href="https://newsletter.pragmaticengineer.com/p/ubuntu-and-ai">How will AI change operating systems? Part 1: Ubuntu and Linux</a></p><p>&#8226; <a href="https://newsletter.pragmaticengineer.com/p/how-uber-uses-ai-for-development">How Uber uses AI for development: inside look</a></p><h3><strong>Timestamps</strong></h3><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk">00:00</a>) Intro</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=168s">02:48</a>) How Anders got into programming</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=340s">05:40</a>) Building his first compiler</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=464s">07:44</a>) Turbo Pascal</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=745s">12:25</a>) Delphi</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=893s">14:53</a>) Joining Microsoft</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=1181s">19:41</a>) Building C#</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=1751s">29:11</a>) Async/await</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=2041s">34:01</a>) The rise of JavaScript</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=2272s">37:52</a>) Building TypeScript</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=2578s">42:58</a>) How the TypeScript compiler works</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=2910s">48:30</a>) JavaScript&#8217;s strengths and weaknesses</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=3138s">52:18</a>) How Anders uses AI</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=3363s">56:03</a>) What language features work well with AI</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=3769s">1:02:49</a>) How software craftsmanship is changing</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=4069s">1:07:49</a>) Performance and efficiency</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=4169s">1:09:29</a>) Anders&#8217; tool stack</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=4290s">1:11:30</a>) A 30-year career at Microsoft</p><p>(<a href="https://www.youtube.com/watch?v=K-Xv8D8NjTk&amp;t=4420s">1:13:40</a>) Book recommendation</p><h3><strong>References</strong></h3><p><strong>Where to find Anders Hejlsberg:</strong></p><p>&#8226; X: <a href="https://x.com/ahejlsberg">https://x.com/ahejlsberg</a></p><p>&#8226; LinkedIn: <a href="https://www.linkedin.com/in/ahejlsberg">https://www.linkedin.com/in/ahejlsberg</a></p><p>&#8226; GitHub: <a href="https://github.com/ahejlsberg">https://github.com/ahejlsberg</a></p><p><strong>Mentions during the episode:</strong></p><p>&#8226; Turbo Pascal: <a href="https://en.wikipedia.org/wiki/Turbo_Pascal">https://en.wikipedia.org/wiki/Turbo_Pascal</a></p><p>&#8226; Borland: <a href="https://en.wikipedia.org/wiki/Borland">https://en.wikipedia.org/wiki/Borland</a></p><p>&#8226; Delphi: <a href="https://en.wikipedia.org/wiki/Delphi_(software)">https://en.wikipedia.org/wiki/Delphi_(software)</a></p><p>&#8226; Visual Basic: <a href="https://learn.microsoft.com/en-us/dotnet/visual-basic">https://learn.microsoft.com/en-us/dotnet/visual-basic</a></p><p>&#8226; Skype: <a href="https://en.wikipedia.org/wiki/Skype">https://en.wikipedia.org/wiki/Skype</a></p><p>&#8226; J++: <a href="https://en.wikipedia.org/wiki/Visual_J%2B%2B">https://en.wikipedia.org/wiki/Visual_J%2B%2B</a></p><p>&#8226; Java: <a href="https://en.wikipedia.org/wiki/Java_(programming_language)">https://en.wikipedia.org/wiki/Java_(programming_language)</a></p><p>&#8226; Legal Newsroom Archive: Sun Microsystems Inc. and Microsoft: <a href="https://news.microsoft.com/case-archives/sun-microsystems-inc-and-microsoft">https://news.microsoft.com/case-archives/sun-microsystems-inc-and-microsoft</a></p><p>&#8226; .NET: <a href="https://dotnet.microsoft.com">https://dotnet.microsoft.com</a></p><p>&#8226; Roslyn: <a href="https://en.wikipedia.org/wiki/Roslyn_(compiler)">https://en.wikipedia.org/wiki/Roslyn_(compiler)</a></p><p>&#8226; Async/await: <a href="https://en.wikipedia.org/wiki/Async/await">https://en.wikipedia.org/wiki/Async/await</a></p><p>&#8226; Go: <a href="https://go.dev/">https://go.dev/</a></p><p>&#8226; JavaScript: <a href="https://en.wikipedia.org/wiki/JavaScript">https://en.wikipedia.org/wiki/JavaScript</a></p><p>&#8226; Brendan Eich&#8217;s website: <a href="https://brendaneich.com">https://brendaneich.com</a></p><p>&#8226; Steve Ballmer on X: <a href="https://x.com/Steven_Ballmer">https://x.com/Steven_Ballmer</a></p><p>&#8226; Luke Hoban&#8217;s website: <a href="https://lukehoban.com">https://lukehoban.com</a></p><p>&#8226; TypeScript:<a href="https://www.typescriptlang.org"> https://www.typescriptlang.org</a></p><p>&#8226; GitHub: <a href="https://github.com">https://github.com</a></p><p>&#8226; Language Server Protocol: <a href="https://en.wikipedia.org/wiki/Language_Server_Protocol">https://en.wikipedia.org/wiki/Language_Server_Protocol</a></p><p>&#8226; Caml: <a href="https://caml.inria.fr">https://caml.inria.fr</a></p><p>&#8226; PHP: <a href="https://www.php.net">https://www.php.net</a></p><p>&#8226; Book recommendation: Algorithms + Data structures by Niklaus Wirth = Programs. Full book: <a href="https://www.cl72.org/110dataAlgo/Algorithms%20%20%20Data%20Structures%20=%20Programs%20%5BWirth%201976-02%5D.pdf">https://www.cl72.org/110dataAlgo/Algorithms%20%20%20Data%20Structures%20=%20Programs%20%5BWirth%201976-02%5D.pdf</a> Amazon: https://www.amazon.nl/-/en/Niklaus-Wirth/dp/0130220051</p><p> &#8212;</p><p>Production and marketing by <a href="https://penname.co/">Pen Name</a>. </p><p></p>]]></content:encoded></item><item><title><![CDATA[Revisiting “No Silver Bullets” in the age of AI]]></title><description><![CDATA[Does the noted &#8220;No Silver Bullets&#8221; paper by the author of a classic engineering book still hold up, 40 years later? Is AI the long-sought single silver bullet &#8211; or has one been around for years?]]></description><link>https://newsletter.pragmaticengineer.com/p/revisiting-no-silver-bullets-in-the</link><guid isPermaLink="false">https://newsletter.pragmaticengineer.com/p/revisiting-no-silver-bullets-in-the</guid><dc:creator><![CDATA[Gergely Orosz]]></dc:creator><pubDate>Tue, 12 May 2026 17:10:28 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!fo1L!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11e17bb3-f81c-4b30-930b-202e336226a6_800x510.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Before we start, some news: my tech compensation site focused on tech total compensation (TC) in Europe, <a href="https://blog.pragmaticengineer.com/techpays-has-been-acquired-levels-fyi/">TechPays has been acquired by Levels.fyi</a>! TechPays was a project I&#8217;ve been building on the side with engineering manager <a href="https://www.linkedin.com/in/rzsombor/">Zsombor Erd&#337;dy-Nagy</a> for a few years, and both of us are pleased that the site found a new and welcoming home. <a href="https://blog.pragmaticengineer.com/techpays-has-been-acquired-levels-fyi/">Read more.</a></em></p><p>Four decades ago, the writer of &#8216;<em>The Mythical Man-Month&#8217;</em> (1975), drew on folklore about werewolves to publish a paper about the prospects of a so-called <em>silver bullet </em>for software development that would make professionals much more productive at their craft.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fo1L!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11e17bb3-f81c-4b30-930b-202e336226a6_800x510.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fo1L!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11e17bb3-f81c-4b30-930b-202e336226a6_800x510.png 424w, https://substackcdn.com/image/fetch/$s_!fo1L!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11e17bb3-f81c-4b30-930b-202e336226a6_800x510.png 848w, https://substackcdn.com/image/fetch/$s_!fo1L!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11e17bb3-f81c-4b30-930b-202e336226a6_800x510.png 1272w, https://substackcdn.com/image/fetch/$s_!fo1L!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11e17bb3-f81c-4b30-930b-202e336226a6_800x510.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fo1L!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11e17bb3-f81c-4b30-930b-202e336226a6_800x510.png" width="800" height="510" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/11e17bb3-f81c-4b30-930b-202e336226a6_800x510.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:510,&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;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!fo1L!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11e17bb3-f81c-4b30-930b-202e336226a6_800x510.png 424w, https://substackcdn.com/image/fetch/$s_!fo1L!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11e17bb3-f81c-4b30-930b-202e336226a6_800x510.png 848w, https://substackcdn.com/image/fetch/$s_!fo1L!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11e17bb3-f81c-4b30-930b-202e336226a6_800x510.png 1272w, https://substackcdn.com/image/fetch/$s_!fo1L!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11e17bb3-f81c-4b30-930b-202e336226a6_800x510.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>The Werewolf of Eschenbach, Germany, line engraving, 1685. This image appears in the &#8220;No Silver Bullets&#8221; chapter of Mythical Man-Month (1995)</em></figcaption></figure></div><p>Frederick P. Brooks published <em>&#8220;No Silver Bullet &#8211; Essence and Accident in Software Engineering&#8221; </em>in 1986, and as the title suggests, it is pessimistic about the existence of any silver bullets. The term refers to a super weapon capable of dropping otherwise near-unstoppable werewolves and other creepy supernatural beings in European folk tales.</p><p>Since its release, this paper might have become even better-known than Mythical Man-Month (MMM). In 1995, the second edition of that book included Brooks&#8217; later essay as chapter 17, along with an additional chapter of reflections.</p><p>In this article, we look into whether the essay was correct in its disbelief in silver bullets, or whether any did indeed slay the beast of unproductivity for developers over the course of time. Also, how does AI agents generating so much code, as of today, challenge the entire premise &#8211; or not?</p><p>We cover:</p><ol><li><p><strong>&#8220;No silver bullets&#8221; &#8211; why has it held up? </strong>No single new technology or methodological breakthrough by itself introduced magnitudes-of-improvement to the areas that really matter in software engineering. Is that unusual?</p></li><li><p><strong>Is SRE a silver bullet? </strong>Google&#8217;s Search team introduced the SRE discipline, and won orders-of-magnitude superior reliability to its competitors. But why only Google Search?</p></li><li><p><strong>Was open source + GitHub a silent silver bullet? </strong>No development had a bigger impact on the wider tech industry than the open source wave since the 2010s. Has it been a silent silver bullet, an overlooked cause?</p></li><li><p><strong>Could AI be a silver bullet? </strong>At first glance, AI generates 100x-or-more code output. But productivity, reliability, and simplicity improvements are a bit unimpressive &#8211; at least for now.</p></li></ol><p>Brooks was a computer scientist who led IBM&#8217;s System/360 and OS/360 operating systems development, <em>&#8216;The Mythical Man-Month&#8217;</em> was published in 1975. Last year, we did a deepdive into this engineering classic (<a href="https://newsletter.pragmaticengineer.com/p/what-changed-in-50-years-of-computing">Part 1</a>, <a href="https://newsletter.pragmaticengineer.com/p/what-changed-in-50-years-of-computing-8d0">Part 2</a>, <a href="https://newsletter.pragmaticengineer.com/p/mythical-man-month-part-3">Part 3</a>, <a href="https://newsletter.pragmaticengineer.com/p/mythical-man-month-part-4">Part 4</a>), delving into its predictions and legacy.</p><h2>1. No silver bullets?</h2><p>The paper delves into folklore for its motif, a &#8216;silver bullet,&#8217; and uses it to pose the question of whether there would be any &#8220;silver bullets&#8221; on the horizon (in 1986) that could be similarly fatal to software engineering complexity. From the <a href="https://www.cs.unc.edu/techreports/86-020.pdf">paper</a> (emphasis mine:)</p><blockquote><p>&#8220;Of all the monsters who fill the nightmares of our folklore, none terrify more than werewolves, because they transform unexpectedly from the familiar into horrors. For these, one seeks bullets of silver that can magically lay them to rest.</p><p>The familiar software project has something of this character (at least as seen by the non-technical manager), usually innocent and straightforward, but capable of becoming a monster of missed schedules, blown budgets, and flawed products. So, we hear desperate cries for a silver bullet, something to make software costs drop as rapidly as computer hardware costs do.</p><p>But, as we look to the horizon of a decade hence, we see no silver bullet. <strong>There is no single development, in either technology or management technique, which by itself promises even one order of magnitude improvement in productivity, in reliability, in simplicity</strong>.</p><p>Skepticism is not pessimism, however. Although we see no startling breakthroughs, and indeed, believe such to be inconsistent with the nature of software, many encouraging innovations are under way. A disciplined, consistent effort to develop, propagate, and exploit them should indeed yield an order-of-magnitude improvement. There is no royal road, but there is a road.</p><p>The first step toward the management of disease was replacement of demon theories and humor theories by the germ theory. That very step, the beginning of hope, in itself dashed all hopes of magical solutions. It told workers that progress would be made stepwise, at great effort, and that a persistent, unremitting care would have to be paid to a discipline of cleanliness. So it is with software engineering today.&#8221;</p></blockquote><p>In 1995, Brooks revisited his idea that silver bullets weren&#8217;t real in the software domain. From the <em>Mythical Man-Month&#8217;s </em>anniversary edition:</p><blockquote><p>&#8220;No Silver Bullet&#8221; asserts and argues that no single software engineering development will produce an order-of-magnitude improvement in programming productivity within ten years (from the paper&#8217;s publication in 1986). We are now nine years into that decade, so it is timely to see how this prediction is holding up.</p><p>Whereas The Mythical Man-Month generated many citations but little argument, &#8220;No Silver Bullet&#8221; has occasioned rebuttal papers, letters to journal editors, and letters and essays that continue to this day.</p><p>Most of these attack the central argument that there is no magical solution, and my clear opinion that there cannot be one. Most agree with most of the arguments in &#8220;NSB,&#8221; but then go on to assert that there is indeed a silver bullet for the software beast, which the author has invented. As I reread the early responses today, I can&#8217;t help noticing that the nostrums pushed so vigorously in 1986 and 1987 have not had the dramatic effects claimed.&#8221;</p></blockquote><p>Brooks re-concluded that there had been no technological breakthroughs of the type postulated in NSB.</p><p><strong>But motivation can also have silver bullet-like effects </strong>and always has had, he found<strong> </strong>via more research into scientific evidence that motivation<em> can</em> boost productivity. In his own words:</p><blockquote><p>&#8220;Since &#8220;NSB,&#8221; Bruce Blum has drawn my attention to the 1959 work of Herzberg, Mausner, and Sayderman.</p><p>They find that motivational factors can increase productivity. On the other hand, environmental and accidental factors, no matter how positive, cannot; but these factors can decrease productivity when negative. &#8220;NSB&#8221; argues that much software progress has been the removal of such negative factors: stunningly awkward machine languages, batch processing with long turnaround times, poor tools, and severe memory constraints.&#8221;</p></blockquote><p>Today, it&#8217;s a long time since the mid-nineties; with the benefit of hindsight, were there any silver bullets flying between then and 2022, which fit the bill as slayers of unproductiveness? I suggest a few, below. <em>If you can name other silver bullets since the launch of Windows 95, please do so in the comments!</em></p><ul><li><p><strong>Version control: </strong>(late 1990s.) CVS, Subversion, and later, Git. Version control allowed engineers to collaborate much more fluently, leading to more teamwork and &#8211; in some cases &#8211; less full-on solo labor.</p></li><li><p><strong>IDEs</strong>: (early 2000s). Modern IDEs like Visual Studio, IntelliJS, and others make context-rich editing easy and fast. They also allow for faster, less error-prone refactoring and more efficient debugging.</p></li><li><p><strong>CI/CD and automated testing</strong>: (mid-2000s). CI systems started to spread during the 2000s with the likes of CruiseControl (2000s) &#8594; Jenkins and SaaS CI solutions from the 2010s (e.g., Travis CI, CircleCI, GitLab CI, GitHub Actions).</p></li><li><p><strong>Open source and package managers</strong>: (2010s). Open source has been around for decades, but GitHub&#8217;s rapid adoption made it easier to create and discover, coupled with package managers in the Node, Python, and other language ecosystems to build on top of open source solutions.</p></li><li><p><strong>StackOverflow: </strong>(2010s). The popular programming Q&amp;A site made it easier to get unstuck by finding solutions to common problems, with the capability to ask questions and get responses from the large user community within hours. By 2025, the site <a href="https://newsletter.pragmaticengineer.com/p/the-pulse-134">was pretty much dead.</a></p></li><li><p><strong>Cloud</strong>: (early 2010s). AWS launched in 2006, then Azure and Google Cloud in 2008, and they went mainstream in the 2010s. Today, cloud is everywhere, and increasingly more infrastructure startups build on top of hyperscalers (the biggest public cloud platforms), such as Vercel / Netlify (platform-as-a-service), Supabase / Turbopuffer (databases) and others.</p></li><li><p><strong>Platform teams &amp; DevEx teams</strong>: (mid-2010s). Mid-sized and larger tech companies created dedicated platform teams to own infrastructure and internal platforms. In the 2020s, larger tech companies have created &#8216;Developer Experience&#8217; teams to build better internal dev tools and workflows. <em>We previously covered <a href="https://newsletter.pragmaticengineer.com/p/program-platform-split-uber">Uber&#8217;s program/platform split</a>, and <a href="https://newsletter.pragmaticengineer.com/p/developer-experience-at-uber">Uber&#8217;s developer experience evolution</a>.</em></p></li><li><p><strong>SRE</strong>: the Site Reliability Engineer (SRE) profession grew during the 2010s, much influenced by Google.</p></li></ul><p>These technologies increased developer efficiency and productivity, but none by itself was a productivity accelerator in isolation.</p><p>Obviously, by 2022 the craft of building software had developed greatly since &#8216;<em>No Silver Bullets&#8217; </em>came out; and was more efficient, faster, and more collaborative than ever. One highly anecdotal way to identify this is via the disappearance of cake from some tech workplaces. Back in the day, cake was distributed at work for major product milestones being hit: the shipping of a new product was often marked with awards and tasty baked treats &#8211; at least on teams building browsers, like the IE and Firefox teams.</p><p>But by the 2010s, shipping frequency had increased by so much and was an everyday, unremarkable occurrence at some places, <a href="https://limpet.net/mbrubeck/2012/10/26/mozilla-ie10-cake.html">according to</a> Matt Brubeck, a former engineer on the Firefox team:</p><blockquote><p>&#8220;Back when Firefox 2 was released (six years ago this week!), the Internet Explorer team started a friendly tradition of sending Mozilla a cake as congratulations. This continued for Firefox 3 and Firefox 4. After Firefox switched from major releases once or twice a year to incremental updates every six weeks, they sent us a cupcake for the next few updates instead. :)&#8221;<em> Mozilla engineer, Matt Brubeck</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_!IXA7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f525e98-c75e-4e3e-a5e1-5b7db3a6e5a5_1828x1354.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IXA7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f525e98-c75e-4e3e-a5e1-5b7db3a6e5a5_1828x1354.png 424w, https://substackcdn.com/image/fetch/$s_!IXA7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f525e98-c75e-4e3e-a5e1-5b7db3a6e5a5_1828x1354.png 848w, https://substackcdn.com/image/fetch/$s_!IXA7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f525e98-c75e-4e3e-a5e1-5b7db3a6e5a5_1828x1354.png 1272w, https://substackcdn.com/image/fetch/$s_!IXA7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f525e98-c75e-4e3e-a5e1-5b7db3a6e5a5_1828x1354.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IXA7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f525e98-c75e-4e3e-a5e1-5b7db3a6e5a5_1828x1354.png" width="1456" height="1078" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7f525e98-c75e-4e3e-a5e1-5b7db3a6e5a5_1828x1354.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1078,&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_!IXA7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f525e98-c75e-4e3e-a5e1-5b7db3a6e5a5_1828x1354.png 424w, https://substackcdn.com/image/fetch/$s_!IXA7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f525e98-c75e-4e3e-a5e1-5b7db3a6e5a5_1828x1354.png 848w, https://substackcdn.com/image/fetch/$s_!IXA7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f525e98-c75e-4e3e-a5e1-5b7db3a6e5a5_1828x1354.png 1272w, https://substackcdn.com/image/fetch/$s_!IXA7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f525e98-c75e-4e3e-a5e1-5b7db3a6e5a5_1828x1354.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fruits of success: Cake for Mozilla Firefox team in 2006 after shipping Firefox 1</figcaption></figure></div><p>Today, Firefox ships a stable version about once a month, as does Chrome. In this context, marking each release with more cake could inadvertently cause some health issues on the team &#8211; too much cake, that is! From this September, Chrome <a href="https://developer.chrome.com/blog/chrome-two-week-release">will switch</a> to shipping every two weeks.</p><p><strong>Agile and Scrum is worth a mention</strong>; not as a technology, but a methodology: Scrum encourages teams to move in smaller cycles and deliver more frequently, via sprints that typically range from a week to a month. In the early 2000s, this methodology spread quickly and brought efficiency improvements to many tech companies. However, by the early 2020s, many startups and some of Big Tech had moved on, as covered in <a href="https://newsletter.pragmaticengineer.com/p/project-management-in-tech">How Big Tech runs tech projects and the curious absence of Scrum</a>:</p><blockquote><p>&#8220;Scrum got in the way of shipping on a daily basis. The whole idea of Scrum revolves around Sprints, of committing to tasks at the beginning of the sprint, working on these during the sprint, and demoing what we did at the end.</p><p>The process felt unnatural and like it had been forced on a fast-moving web team. We soon moved to a more fluid way of working, taking the Kanban approach. We stopped caring about sprints, and dropped most rituals that come with Scrum. We just cared about knowing what we&#8217;re working on now, and what it was we&#8217;d get done next.&#8221;</p></blockquote><p>Basically, Scrum worked and still does so for teams wanting to shorten shipping cadence from months to weeks. But for teams shipping daily, it often gets in the way.</p><p><strong>One area that improved significantly has been the pace of shipping incremental software. </strong>In 1975, shipping software several times per day with elements like version control, CI/CD, feature flags and engineers being oncall, might have sounded far-fetched. Back then, software delivery was measured in months and years. In this way, we&#8217;ve perhaps made improvements overall in the regions of 10x to 100x over the years.</p><p>But that came via combinations of new tools like version control and CI/CD, new approaches &amp; methodologies, and testing &#8211; and also from shifting constraints; for example, it&#8217;s now possible to revert backend changes rapidly, and code shipped in binaries can be controlled by feature flags in many cases.</p><p>Even so, improvements were mainly in iteration speed and not necessarily in the complexity of the software shipped. With all that progress, shipping complex and high-quality software still takes comparable time, often years, as 50 years ago. A prime example is the upcoming video game, Grand Theft Auto VI, probably by now the most highly-anticipated game ever, which is set to launch in November, after at least six years &#8211; and potentially 12 &#8211; of total development time:</p><ul><li><p>Initial planning <a href="https://thegameswiki.com/gta6/wiki/development-history">started</a> in 2014 (12 years of development)</p></li><li><p>Development <a href="https://gamerant.com/gta-6-development-start-date-when/">started</a> in earnest in 2020 (circa six years of full-on development)</p></li><li><p>The studio, Rockstar, <a href="https://x.com/RockstarGames/status/1489617718009606150">confirmed</a> development was underway in February 2022 (at least 4.5 years of full development)</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_!HM_E!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f94d3b7-70e6-4fac-a07d-7c4d315b5578_1100x350.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HM_E!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f94d3b7-70e6-4fac-a07d-7c4d315b5578_1100x350.png 424w, https://substackcdn.com/image/fetch/$s_!HM_E!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f94d3b7-70e6-4fac-a07d-7c4d315b5578_1100x350.png 848w, https://substackcdn.com/image/fetch/$s_!HM_E!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f94d3b7-70e6-4fac-a07d-7c4d315b5578_1100x350.png 1272w, https://substackcdn.com/image/fetch/$s_!HM_E!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f94d3b7-70e6-4fac-a07d-7c4d315b5578_1100x350.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HM_E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f94d3b7-70e6-4fac-a07d-7c4d315b5578_1100x350.png" width="1100" height="350" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f94d3b7-70e6-4fac-a07d-7c4d315b5578_1100x350.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:350,&quot;width&quot;:1100,&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_!HM_E!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f94d3b7-70e6-4fac-a07d-7c4d315b5578_1100x350.png 424w, https://substackcdn.com/image/fetch/$s_!HM_E!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f94d3b7-70e6-4fac-a07d-7c4d315b5578_1100x350.png 848w, https://substackcdn.com/image/fetch/$s_!HM_E!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f94d3b7-70e6-4fac-a07d-7c4d315b5578_1100x350.png 1272w, https://substackcdn.com/image/fetch/$s_!HM_E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f94d3b7-70e6-4fac-a07d-7c4d315b5578_1100x350.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"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">GTA VI: more ambitious but also slower</figcaption></figure></div><p>The video game development timeline is as long as it ever was, and even longer, as developers strive to meet players&#8217; expectations on things like graphics, lighting, and physics. GTA 6 looks like being the most complex installment in the long-running series. So, perhaps there&#8217;s not been much change in software delivery timelines because when we have more capabilities to work with, the goals get more ambitious and the bar for &#8220;standout&#8221; software keeps rising.</p><h2>2. Is SRE a silver bullet?</h2><p>Brooks&#8217;s definition of a silver bullet:</p><blockquote><p>&#8220;A single development, in either technology or management technique, which by itself promises even one order of magnitude improvement in productivity, in reliability, in simplicity.&#8221;</p></blockquote><p>In simplicity and productivity terms, I struggle to name a single approach that delivered a 10x-or-more improvement by itself. But in the area of reliability, one company that has pioneered novel approaches since the 2000s is Google. Google.com is probably the single most reliable piece of internet software of all. In the last 15 years, Google Search has suffered a single outage, <a href="https://www.gadgets360.com/internet/news/google-search-maps-photos-drive-youtube-experiencing-outages-in-some-parts-of-the-world-3238156">on 8 August 2022</a>, which lasted around an hour. Otherwise, there have been no global outages (of course, there have been several <a href="https://en.wikipedia.org/wiki/Google_services_outages#December_2020_services_outage">for other Google services</a>).</p><p>In 2003, Google created the &#8216;Site Reliability Engineering&#8217; (SRE) role. SRE veteran, Dave O&#8217;Connor, <a href="https://newsletter.pragmaticengineer.com/p/reliability-engineering?">shared with us</a>:</p><blockquote><p>&#8220;The fervent belief of Google&#8217;s founders was that speed and reliability mattered more than features. This belief was coupled with the understanding that we couldn&#8217;t achieve it traditionally, which made it an existential issue. The level of investment in building out all layers of the serving stack was a case of &#8220;because we can&#8221;, but also &#8220;because we have to, as nowhere else does what we need&#8221;.</p><p>There was never a question of whether traditional &#8216;ops&#8217; would work at Google. We needed a specialized role, staffed by folks familiar with the problem space and engineering methods required to make it work.</p><p>In 2003, the SRE role was born. Ben Treynor Sloss had been tasked with building Google&#8217;s &#8220;production team&#8221; and in his own words, he built &#8220;what happens when you ask a software engineer to design an operations team.&#8221; This turned into the birth of the SRE function at Google. From the outset, SRE was staffed in varying measures by systems/operations experts and software engineers. A large part of the remit of the team was to build the tools and practices required to operate Google&#8217;s fleet.&#8221;</p></blockquote><p>Over time, the rest of the industry caught on to SRE and DevOps. From our <a href="https://newsletter.pragmaticengineer.com/p/reliability-engineering">SRE deepdive</a>:</p><blockquote><p>&#8220;Eventually, other companies caught onto the scaling issues, especially the hyperscalers. Each had their own approach, but over time, the notion grew industry-wide that making things reliable was a real-life engineering discipline, not simply &#8216;ops&#8217;.</p><p>This step saw a number of terms coined to describe this engineering, including &#8216;DevOps&#8217;. At its core, this was the notion that the disciplines and practices of reliability engineering should be ingrained into the overall engineering organization. At places other than Google, this mostly took the form of combined developer/operations roles (i.e. &#8220;you build it, you run it&#8221;), which differed from Google&#8217;s implementation, but the practices were similar.</p><p>Around this time, Google started opening up about SRE, eventually publishing the first SRE book, and follow ups. Conferences such as USENIX SRECon, Devops Days, and other movements have solidified reliability engineering as a discipline that scales well beyond Google. Indeed, the company has become a consumer of many state-of-the-art developments.&#8221;</p></blockquote><p><strong>So, at Google Search, the SRE role could be described as a genuine silver bullet for the tech giant.</strong> The company&#8217;s obsession with reliability helped it build what is probably the most reliable public-facing service of all. On the assumption that SRE plays a significant role in the approach, I would feel comfortable with calling SRE a silver bullet for Google Search.</p><p>SRE, as a concept, is commonplace across Google, but the reliability of its other services is not so impressive. For example, Google Cloud has had many outages, and Gmail also goes down every now and then. I&#8217;m sure that without SRE, reliability would be worse, but in general, Google services&#8217; availability these days is probably a magnitude higher than the availability of most online services in the 2000s.</p><p>Similarly, GitHub has an SRE role but the service is <a href="https://newsletter.pragmaticengineer.com/p/the-pulse-github-breaks">at zero nines of availability</a>, partially explained by a 3.5x increase in load in two years. But in other ways, the zero nines is <a href="https://blog.pragmaticengineer.com/the-pulse-ai-load-breaks-github/">likely self-inflicted.</a></p><p><strong>This makes me wonder if the existence of silver bullets depends greatly on teams and individual contexts.</strong> SRE seems like a good case to consider:</p><ul><li><p>a &#8220;silver bullet&#8221; for Google Search</p></li><li><p>&#8230; but not for other Google services</p></li><li><p>&#8230; and definitely not for the broader industry</p></li></ul><p>Could it be that when implemented in the right place, in the right way, and with the correct investment, then SRE &#8211; and an incredible focus on reliability &#8211; will yield a 10x-or-higher increase in reliability?</p><p>My hunch is that Google Search has such standout reliability not just because of SRE, but because Search might be the only organization in Google with reliability as a founding value, embedded in the team&#8217;s culture, with unmatched investments of time and money.</p><p>Google has published <a href="https://sre.google/books/">several books</a> that explain their techniques and practices, but for other teams to get those results, they would need to invest similarly in reliability.</p><h2>3. Was open source + GitHub a silent silver bullet?</h2><p>Perhaps there&#8217;s a silver bullet which is easily missed: open source. In <a href="https://newsletter.pragmaticengineer.com/p/ai-tools-for-software-engineers-simon-willison">the first-ever Pragmatic Engineer Podcast episode</a>, I asked software engineer Simon Willison what the biggest &#8220;productivity leaps&#8221; have been during his career. He <a href="https://youtu.be/uRuLgar5XZw?si=YHz3z6En7ADv4DRu&amp;t=2141">named</a> open source:</p>
      <p>
          <a href="https://newsletter.pragmaticengineer.com/p/revisiting-no-silver-bullets-in-the">
              Read more
          </a>
      </p>
   ]]></content:encoded></item></channel></rss>