<?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[AI for Software Engineers: Self and Career]]></title><description><![CDATA[Articles to help with self and career improvements. Arrive early to paid subscribers. Free after two weeks.]]></description><link>https://www.aiforswes.com/s/self-and-career</link><image><url>https://substackcdn.com/image/fetch/$s_!5jDe!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F667233e2-8e44-4fda-a882-db68801c3736_500x500.png</url><title>AI for Software Engineers: Self and Career</title><link>https://www.aiforswes.com/s/self-and-career</link></image><generator>Substack</generator><lastBuildDate>Thu, 18 Jun 2026 18:03:50 GMT</lastBuildDate><atom:link href="https://www.aiforswes.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Logan Thorneloe]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[aiforswes@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[aiforswes@substack.com]]></itunes:email><itunes:name><![CDATA[Logan Thorneloe]]></itunes:name></itunes:owner><itunes:author><![CDATA[Logan Thorneloe]]></itunes:author><googleplay:owner><![CDATA[aiforswes@substack.com]]></googleplay:owner><googleplay:email><![CDATA[aiforswes@substack.com]]></googleplay:email><googleplay:author><![CDATA[Logan Thorneloe]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[How to Know What to Learn in AI]]></title><description><![CDATA[There's a disconnect in AI as far back as knowing what to learn&#8212;this is how to overcome it]]></description><link>https://www.aiforswes.com/p/how-to-know-what-to-learn-in-ai</link><guid isPermaLink="false">https://www.aiforswes.com/p/how-to-know-what-to-learn-in-ai</guid><dc:creator><![CDATA[Logan Thorneloe]]></dc:creator><pubDate>Thu, 18 Jun 2026 14:02:37 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Ecwv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ecwv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ecwv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!Ecwv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!Ecwv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!Ecwv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ecwv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:768132,&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://www.aiforswes.com/i/202133767?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.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_!Ecwv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!Ecwv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!Ecwv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!Ecwv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc56758-2b8a-4aac-8000-27e8781ba09c_1280x720.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><p><em>I added a &#8216;Self and Career&#8217; section to the newsletter. Those articles will be primarily non-technical and will go out two weeks early to paid subscribers. Thank you for your support!</em></p><p>Things are moving so quickly in AI it can tough to know what topics to learn, what&#8217;s important, and what to focus on. Part of this newsletter is sharing that with you along &#8230;</p>
      <p>
          <a href="https://www.aiforswes.com/p/how-to-know-what-to-learn-in-ai">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Don't Tokenmax—Do This Instead]]></title><description><![CDATA[Dispelling the myth that more tokens = better productivity]]></description><link>https://www.aiforswes.com/p/the-real-way-to-make-agentic-development</link><guid isPermaLink="false">https://www.aiforswes.com/p/the-real-way-to-make-agentic-development</guid><dc:creator><![CDATA[Logan Thorneloe]]></dc:creator><pubDate>Thu, 07 May 2026 16:40:30 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!m-lf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!m-lf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!m-lf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!m-lf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!m-lf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!m-lf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!m-lf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:319068,&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://www.aiforswes.com/i/196799289?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.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_!m-lf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!m-lf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!m-lf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!m-lf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0096fdfe-e028-41f8-9647-51ef5bd7c3b7_1280x720.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><p>There&#8217;s been an interesting push recently for &#8220;tokenmaxxing&#8221;, or the idea that burning through more tokens means an engineer has been more productive. The thought process is more tokens mean more AI use, which means getting more done and saving more time.</p><p>In reality, the number of tokens used is a development velocity metric similar to measuring lines of code written: It&#8217;s not only inaccurate, but can actually be measuring the opposite: a decrease in development velocity. For more on measuring developer velocity via lines of code, read <a href="https://www.folklore.org/Negative_2000_Lines_Of_Code.html">-2000 Lines of Code</a>.</p><p>Measuring tokens used results in a manifestation of Goodhart&#8217;s Law: &#8220;When a measure becomes a target, it ceases to be a good measure&#8221;. This creates a utility gap in what the measurement actually produces: Users prioritize models that burn tokens, redundant context over precise requests, and unnecessary agentic use for small work. Instead of engineers using proper techniques to be more productive with AI tools, they measure their productivity with <a href="https://fortune.com/2026/04/09/meta-killed-employee-ai-token-dashboard/">how high up they are on a token spending leaderboard</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_!1ZDq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb9386c5-5004-41de-ad1e-d8c419fb96b7_1196x668.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1ZDq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb9386c5-5004-41de-ad1e-d8c419fb96b7_1196x668.png 424w, https://substackcdn.com/image/fetch/$s_!1ZDq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb9386c5-5004-41de-ad1e-d8c419fb96b7_1196x668.png 848w, https://substackcdn.com/image/fetch/$s_!1ZDq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb9386c5-5004-41de-ad1e-d8c419fb96b7_1196x668.png 1272w, https://substackcdn.com/image/fetch/$s_!1ZDq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb9386c5-5004-41de-ad1e-d8c419fb96b7_1196x668.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1ZDq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb9386c5-5004-41de-ad1e-d8c419fb96b7_1196x668.png" width="1196" height="668" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bb9386c5-5004-41de-ad1e-d8c419fb96b7_1196x668.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:668,&quot;width&quot;:1196,&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_!1ZDq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb9386c5-5004-41de-ad1e-d8c419fb96b7_1196x668.png 424w, https://substackcdn.com/image/fetch/$s_!1ZDq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb9386c5-5004-41de-ad1e-d8c419fb96b7_1196x668.png 848w, https://substackcdn.com/image/fetch/$s_!1ZDq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb9386c5-5004-41de-ad1e-d8c419fb96b7_1196x668.png 1272w, https://substackcdn.com/image/fetch/$s_!1ZDq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb9386c5-5004-41de-ad1e-d8c419fb96b7_1196x668.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></figure></div><p>My experience has shown the opposite of tokenmaxxing (which I like to call &#8220;tokenminning&#8221;) is ideal for high velocity agentic development work. I&#8217;ve found my token use to directly correlate with the time I spend on a feature. If my agent is burning tokens, it generally means more time spent by me monitoring and reviewing that agent&#8217;s progress. This is directly contrary to the primary goal of agentic development tools: <strong>Enable engineers to accomplish more in less time</strong>.</p><p>To achieve this goal, it&#8217;s key to rely less on agent reasoning and ludicrous token spend and instead focus on a structured, well-thought-out engineering process that makes it easier for the coding agent to understand your request and adhere to it.</p><p>In this article, I cover topics to help you make your agentic development faster. We&#8217;ll go over:</p><ul><li><p>My 3 tips for making agentic development use less of your time.</p></li><li><p>The tip I think is less helpful than most make it out to be.</p></li><li><p>A better measurement for agentic development velocity.</p></li></ul><div><hr></div><p>If you really want to get deeper into proper agentic development, <strong>don&#8217;t miss Packt&#8217;s Hands-on Spec-Driven Development Workshop coming up on May 14th.</strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DXUq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0146a083-d954-4446-aba6-7d6d819ce7ee_600x300.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DXUq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0146a083-d954-4446-aba6-7d6d819ce7ee_600x300.png 424w, https://substackcdn.com/image/fetch/$s_!DXUq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0146a083-d954-4446-aba6-7d6d819ce7ee_600x300.png 848w, https://substackcdn.com/image/fetch/$s_!DXUq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0146a083-d954-4446-aba6-7d6d819ce7ee_600x300.png 1272w, https://substackcdn.com/image/fetch/$s_!DXUq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0146a083-d954-4446-aba6-7d6d819ce7ee_600x300.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DXUq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0146a083-d954-4446-aba6-7d6d819ce7ee_600x300.png" width="600" height="300" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0146a083-d954-4446-aba6-7d6d819ce7ee_600x300.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:300,&quot;width&quot;:600,&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_!DXUq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0146a083-d954-4446-aba6-7d6d819ce7ee_600x300.png 424w, https://substackcdn.com/image/fetch/$s_!DXUq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0146a083-d954-4446-aba6-7d6d819ce7ee_600x300.png 848w, https://substackcdn.com/image/fetch/$s_!DXUq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0146a083-d954-4446-aba6-7d6d819ce7ee_600x300.png 1272w, https://substackcdn.com/image/fetch/$s_!DXUq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0146a083-d954-4446-aba6-7d6d819ce7ee_600x300.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>This is a hands-on workshop that teaches you how to be more consistent when building with AI via spec-driven development. You&#8217;ll create a real application while learning how to define clear specs, guide AI reliably, and reduce rework.</p><p>This is the second cohort for this workshop after the first sold out. <strong>There are only 8 spots left. <a href="https://www.eventbrite.co.uk/e/hands-on-spec-driven-development-workshop-cohort-2-tickets-1985498625838?aff=logan">Secure your spot now</a> and get 45% off with code LOG45.</strong></p><p>I highly recommend Packt&#8217;s education resources so I&#8217;m excited to bring this discounted opportunity to you. The above is an affiliate link to help support the newsletter at no extra cost to you.</p><div><hr></div><h2>My top three tips</h2><p>From working with agents both in and outside of work, here are my top three tips for making your agentic development workflow <em>faster for you</em>. The primary focus of these tips is on saving your time instead of token costs for your company.</p><p>Below are also great tips for anyone building agents. Among other things, agents are fundamentally a context engineering problem. When you&#8217;re working with AI coding tools, you&#8217;re curating that context in real time.</p><h3>1. Use smarter models</h3><p>Ever since <a href="https://x.com/bcherny/status/2007179838864666847">Boris Cherny explained that he only uses Opus</a> for software development at Anthropic back in January, I&#8217;ve been trying to do the same with my own agentic development.</p><p>His thesis is using a larger model and spending more per token results in far less overall token use than using a smaller model on the same task. The smaller model requires more steering and rework, resulting in tokenmaxxing and costs more overall in the long run than using the more expensive model per token.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1S4J!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89da8d49-8668-4fad-b972-acce103398c3_1196x620.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1S4J!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89da8d49-8668-4fad-b972-acce103398c3_1196x620.png 424w, https://substackcdn.com/image/fetch/$s_!1S4J!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89da8d49-8668-4fad-b972-acce103398c3_1196x620.png 848w, https://substackcdn.com/image/fetch/$s_!1S4J!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89da8d49-8668-4fad-b972-acce103398c3_1196x620.png 1272w, https://substackcdn.com/image/fetch/$s_!1S4J!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89da8d49-8668-4fad-b972-acce103398c3_1196x620.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1S4J!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89da8d49-8668-4fad-b972-acce103398c3_1196x620.png" width="1196" height="620" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/89da8d49-8668-4fad-b972-acce103398c3_1196x620.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:620,&quot;width&quot;:1196,&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_!1S4J!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89da8d49-8668-4fad-b972-acce103398c3_1196x620.png 424w, https://substackcdn.com/image/fetch/$s_!1S4J!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89da8d49-8668-4fad-b972-acce103398c3_1196x620.png 848w, https://substackcdn.com/image/fetch/$s_!1S4J!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89da8d49-8668-4fad-b972-acce103398c3_1196x620.png 1272w, https://substackcdn.com/image/fetch/$s_!1S4J!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89da8d49-8668-4fad-b972-acce103398c3_1196x620.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>In proper agentic development, I&#8217;ve also found this to indeed be the case. Laying out requirements and setting up proper architecture is much more easily done with a more intelligent model with reasoning capabilities. It not only improves spending as mentioned above, it also decreases the time an engineer spends correcting the model. While this might seem contrary to tokenminning philosophy, it actually supports it in the long run.</p><p>A tip I&#8217;ve frequently seen shared to get better cost-performance from agentic tools is to route models according to the task. The advice to &#8216;use a smaller model when performing a simple task&#8217; is something I recommend against.</p><p>This is a very hard problem space. It&#8217;s very difficult to reliably predict which tasks a small model will be able to do on its own and which a larger model is needed for. I&#8217;ve used automated model routing for many tasks and can immediately tell when a small model has been prioritized. Even on teams that have the data necessary to make these decisions, model routing is difficult.</p><p>I recommend using larger, smarter models whenever possible as the time and cost trade-off in the end is worth it. One exception to this rule is for hobbyist projects. In that case, I recommend using whatever you want. Small models are often good enough in that environment and spending $100/mo on a subscription isn&#8217;t worth it.</p><p>See my article on that here:<br><br></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;d89bdbe8-3161-41f7-b858-a28d8534b157&quot;,&quot;caption&quot;:&quot;[Edit 1] This article has been edited after initial release for clarity. Both the tl;dr and the end section have added information.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;[Revised] You Don&#8217;t Need to Spend $100/mo on Claude Code: Your Guide to Local Coding Models&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:43759292,&quot;name&quot;:&quot;Logan Thorneloe&quot;,&quot;bio&quot;:&quot;ML infra &amp; agents at Google. I break down AI concepts every engineer should understand.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6da19a3b-49bd-4488-bdba-e7c21d45edd7_2048x2048.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100}],&quot;post_date&quot;:&quot;2025-12-20T14:55:12.022Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!fARn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb194c53f-7b2b-4f74-942b-5cf1c59b32aa_1920x1080.jpeg&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.aiforswes.com/p/you-dont-need-to-spend-100mo-on-claude&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:182132050,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:59,&quot;comment_count&quot;:20,&quot;publication_id&quot;:1744179,&quot;publication_name&quot;:&quot;AI for Software Engineers&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!zxAM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b5b71b6-d4c9-4b65-9e4e-e3e700e2421e_500x500.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><h3>2. Be precise</h3><p>The biggest downfall of coding agents is that they try to do too much. I&#8217;ve seen this manifest in random changes being made to unrelated files when an agent works on a task, an agent going beyond its current work on future tasks without being provided permission to do so, an agent repeating already finished work, and agents running unnecessary CLI commands in the midst of a task.</p><p>My biggest quality of life gain has been reining in these models to ensure they aren&#8217;t going off the rails. This is a harder task than it seems, but the best way to go about this is to be very precise in your requests to the agent and the environment you set up for them to work in.</p><p>Here are the considerations I take to be more precise:</p><ol><li><p><strong>Do some engineering before you start coding</strong>. Understand the problem and the code that needs to be written so you can properly direct the agent in the tasks it needs to do. You should know what needs to be done before the agent starts working. If you want to better understand how to do this, check out the workshop above.</p></li><li><p><strong>Scope your requests to the agent to manageable tasks</strong>. Agents tend to go off the rails when you give it too much freedom to interpret implementation details. Be explicit about what you want the agent to do <em>and</em> the changes that need to be made to make that happen. This can&#8217;t be done without step 1.</p></li><li><p><strong>In your requests, </strong><em><strong>try not to make any typos</strong></em>. I&#8217;ve found this bit of precision helps an agent understand a request much better.</p></li><li><p><strong>Manage context based on the task</strong>. As context gets larger, the agent has a greater chance of working outside of its scope. This means using separate chats for separate tasks, as the entire chat is passed in each time a message is sent. You don&#8217;t want information from a previous task polluting the task you&#8217;re completing now.</p></li><li><p><strong>Be mindful when curating what the agent has access to</strong> and continually adjust this as you work. For example, I&#8217;ve found some agents to perform poorly when using source control tooling. I&#8217;ve removed that agent&#8217;s ability to call those tools and I do it myself instead. This also applies to the skills and MCP servers the agent can access which have the potential to pollute context and hurt performance.</p></li></ol><h3>3. Write manual code</h3><p>This one might seem preposterous to anyone else who is chronically online, but, yes, the art of manually writing code is not dead. I&#8217;ve seen many people resort to only coding with AI even to the point of prompting for tiny changes.</p><p>You&#8217;re going to save a lot of your time spent waiting for agents to understand your request if you take care of small changes yourself. It&#8217;s often wise to &#8216;Accept All&#8217; to an agent&#8217;s output and make minor tweaks on your own instead of telling the agent what&#8217;s wrong and have it do it for you.</p><p>Examples of these changes include:</p><ul><li><p>Renaming a variable to be more descriptive.</p></li><li><p>Simple readability fixes.</p></li><li><p>Fixing or removing imports.</p></li></ul><p>The only downside to manual coding is that you need to tell the agent you tweaked the code, otherwise, the next change by the agent will end up overwriting your work. If you don&#8217;t let the agent know, this can be a serious source of repeated work.</p><p>Don&#8217;t fall for the &#8220;I haven&#8217;t written a single line of code&#8221; narrative. I don&#8217;t know of a single engineer working on large-scale production services that doesn&#8217;t write some of the code by hand.</p><h2>A better metric for agentic engineering velocity</h2><p>The current best way to measure agentic development velocity is a metric called <strong>stickiness </strong>or <strong>code retention</strong> (but I prefer stickiness). This is a measurement of how much AI-generated code lasts without needing to be tweaked and without being overwritten soon after.</p><p>This metric is much better measured by AI coding tools to understand their efficiency, but it&#8217;s also something engineers should keep in mind when using their tooling. If their AI-generated code is sticky, it&#8217;s likely they&#8217;re working productively with the AI. If it isn&#8217;t sticky, there might be too much rework occurring, which means the above tips should be worked on.</p><p>&#8212;</p><p>Tokenmaxxing is a silly way to measure developer productivity. The most important metric you should maximize with agentic engineering tools is the amount of time you reclaim to work on other things. Tokenminning, in my opinion, is the way to do this.</p><p>What tips do you have for faster agentic development? I&#8217;d love to hear them in the comments.</p><p>If you enjoyed this article, don&#8217;t forget to subscribe to AI for Software Engineers to get more just like it in your inbox.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.aiforswes.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://www.aiforswes.com/subscribe?"><span>Subscribe now</span></a></p><p>Thanks for reading!</p><p><strong>Always be (machine) learning,</strong></p><p><strong>Logan</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.aiforswes.com/p/the-real-way-to-make-agentic-development?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.aiforswes.com/p/the-real-way-to-make-agentic-development?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p>]]></content:encoded></item><item><title><![CDATA[The Mistakes Most Entry-Level Candidates Make in Technical Interviews]]></title><description><![CDATA[And how to set yourself apart from the other entry-level candidates]]></description><link>https://www.aiforswes.com/p/the-mistakes-most-entry-level-candidates</link><guid isPermaLink="false">https://www.aiforswes.com/p/the-mistakes-most-entry-level-candidates</guid><dc:creator><![CDATA[Logan Thorneloe]]></dc:creator><pubDate>Thu, 12 Feb 2026 15:09:27 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!K3J5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a69ad90-59ed-4918-b8b2-d698b4e2604f_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!K3J5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a69ad90-59ed-4918-b8b2-d698b4e2604f_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!K3J5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a69ad90-59ed-4918-b8b2-d698b4e2604f_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!K3J5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a69ad90-59ed-4918-b8b2-d698b4e2604f_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!K3J5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a69ad90-59ed-4918-b8b2-d698b4e2604f_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!K3J5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a69ad90-59ed-4918-b8b2-d698b4e2604f_1280x720.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!K3J5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a69ad90-59ed-4918-b8b2-d698b4e2604f_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2a69ad90-59ed-4918-b8b2-d698b4e2604f_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;technical article thumbnail (8).png&quot;,&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="technical article thumbnail (8).png" title="technical article thumbnail (8).png" srcset="https://substackcdn.com/image/fetch/$s_!K3J5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a69ad90-59ed-4918-b8b2-d698b4e2604f_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!K3J5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a69ad90-59ed-4918-b8b2-d698b4e2604f_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!K3J5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a69ad90-59ed-4918-b8b2-d698b4e2604f_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!K3J5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a69ad90-59ed-4918-b8b2-d698b4e2604f_1280x720.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><p>I&#8217;ve conducted enough entry-level technical interviews to identify the patterns and mistakes most candidates make. Below I detail the top three things you can do to avoid common mistakes and separate yourself as a top candidate during the interview process.</p><p>This is specifically regarding technical Leetcode-style interviews (not system design, although some of the information might apply to both). I&#8217;ll share a question I&#8217;ve asked quite a bit recently and how each of the tips below applies to it.</p><p>Each tip below also applies to a part of the technical interview evaluation that <em>does</em> transition to real-world software engineering skills. I know this isn&#8217;t always the case, but I feel these are especially important for anyone being evaluated for a software engineering role.</p><p>Note: While I work for Google and have access to Google interviewing resources, everything below is my personal opinion. Interviewing is a very human experience, after all.</p><h2>What an Interviewer is Looking For</h2><p>There&#8217;s always a lot of focus on finding the optimal solution in a technical interview and being perfect in your reasoning for how you arrived at that solution, but an interviewer is looking for much more than just that.</p><p>They don&#8217;t just want to evaluate your technical knowledge. They want to understand how you think. Understanding a candidate&#8217;s reasoning along with their knowledge of software engineering fundamentals tells them a lot about how you will perform on the job.</p><p>When you&#8217;re interviewing at this level, your interviewer will focus on three things:</p>
      <p>
          <a href="https://www.aiforswes.com/p/the-mistakes-most-entry-level-candidates">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI Can’t Fix a Broken Engineering Culture—It Can Only Make it Worse]]></title><description><![CDATA[Notes on Google&#8217;s findings about how AI has impacted software development in 2025 and what your team needs to do to ensure AI works for you instead of against you]]></description><link>https://www.aiforswes.com/p/ai-cant-fix-a-broken-engineering</link><guid isPermaLink="false">https://www.aiforswes.com/p/ai-cant-fix-a-broken-engineering</guid><dc:creator><![CDATA[Logan Thorneloe]]></dc:creator><pubDate>Tue, 30 Dec 2025 20:10:23 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Ju15!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ju15!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ju15!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!Ju15!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!Ju15!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!Ju15!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ju15!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:137654,&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://www.aiforswes.com/i/182991041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.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_!Ju15!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!Ju15!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!Ju15!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!Ju15!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8853990-a4ea-47b9-99e6-eb68a033d17e_1280x720.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><p>I&#8217;ve seen an interesting new fad on social media recently that I like to call &#8220;vibe releasing&#8221;. This is the same as &#8220;vibe coding&#8221; but it takes it one step further and releases the code to production without properly reviewing it first.</p><p><strong>I can&#8217;t overstate how terrible of an idea this is.</strong></p><p>In fact, this year&#8217;s <a href="https://services.google.com/fh/files/misc/2025_state_of_ai_assisted_software_development.pdf">&#8220;State of AI-assisted Development&#8221; report</a> released by Google centered around one idea:<strong> AI is an amplifier</strong>. It analyzes AI coding metrics from this past and proves that coding with AI makes proper engineering practices more, <em>not less</em>, important.</p><p>It shows that companies with good engineering culture and practices will see AI positively impact their development velocity and companies with bad engineering culture and practices will see the opposite. &#8220;Vibe releasing&#8221; is the definition of a bad engineering practice.</p><p>This article includes everything you should take away from Google&#8217;s report and how it applies to you.</p><h2>Takeaways</h2><p>If you&#8217;re just here for the takeaways, here they are:</p><ul><li><p><strong>2025 was the first year AI had a quantifiable positive impact on software development.</strong></p></li><li><p><strong>Trust</strong> is a huge factor in AI coding tool effectiveness.</p></li><li><p><strong>Companies with bad engineering cultures and practices will see their development velocity slow with AI.</strong> Conversely, companies with good engineering cultures and practices will see their development velocity quicken with AI.</p></li></ul><p>If you want to know the specifics and what your organization should do to ensure AI works for you instead of against you, read on.</p><h2>Report methodology</h2><p>First, let&#8217;s understand how the report was created and how research was conducted. When evaluating metrics, this is always the first step.</p>
      <p>
          <a href="https://www.aiforswes.com/p/ai-cant-fix-a-broken-engineering">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[DMs Are the New Cover Letter: How to Get Hired in AI in 2025/2026]]></title><description><![CDATA[How you should go about DM'ing others for job opportunities and a few other tips to stand out]]></description><link>https://www.aiforswes.com/p/get-hired-2025-2026</link><guid isPermaLink="false">https://www.aiforswes.com/p/get-hired-2025-2026</guid><dc:creator><![CDATA[Logan Thorneloe]]></dc:creator><pubDate>Sat, 29 Nov 2025 14:01:07 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!8p7o!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8p7o!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8p7o!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!8p7o!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!8p7o!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!8p7o!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8p7o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:572484,&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://www.aiforswes.com/i/180126605?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.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_!8p7o!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!8p7o!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!8p7o!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!8p7o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F077d1df4-bdbc-4d3f-b43a-125e4df1e715_1280x720.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><p>Last week I posted a role my team is hiring for on <a href="https://x.com/loganthorneloe/status/1991522062922576371?s=20">X</a> and <a href="https://www.linkedin.com/posts/loganthorneloe_my-team-is-hiring-an-ml-infra-engineer-activity-7397287759121440768-Q7Nn?utm_source=share&amp;utm_medium=member_desktop&amp;rcm=ACoAACCXi0QBtoiJ7yjbk0l56QXNhUiFrM-g12U">LinkedIn</a> (check them out because we&#8217;re still hiring!) and I received hundreds of messages. Sorting through them made one thing clear&#8212;people suck at presenting themselves.</p><p>It&#8217;s a tough market right now and differentiation is more important than ever. Most great jobs aren&#8217;t found by cold applying to positions, but through one&#8217;s network. DMs are the new cover letter and understanding how to DM properly is paramount to optimally present oneself.</p><p>This article uses my experience on the hiring side of DMs to teach you how to DM for a job properly. I share this primarily because I think it&#8217;s important and AI for Software Engineers readers should stand out, but also because I learned a lot about what I was doing incorrectly too.</p><p>I&#8217;ve split this into five parts. In this new</p><p>sletter, I explain:</p><ol><li><p>The current job climate and why that&#8217;s the first thing to understand.</p></li><li><p>How to set up a good elevator pitch.</p></li><li><p>Why your resume is still important.</p></li><li><p>The things you should avoid.</p></li><li><p>One final tip.</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_!69dm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c8e53b2-01fa-4e6f-8c1e-28874a8db92d_1196x1836.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!69dm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c8e53b2-01fa-4e6f-8c1e-28874a8db92d_1196x1836.png 424w, https://substackcdn.com/image/fetch/$s_!69dm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c8e53b2-01fa-4e6f-8c1e-28874a8db92d_1196x1836.png 848w, https://substackcdn.com/image/fetch/$s_!69dm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c8e53b2-01fa-4e6f-8c1e-28874a8db92d_1196x1836.png 1272w, https://substackcdn.com/image/fetch/$s_!69dm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c8e53b2-01fa-4e6f-8c1e-28874a8db92d_1196x1836.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!69dm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c8e53b2-01fa-4e6f-8c1e-28874a8db92d_1196x1836.png" width="534" height="819.752508361204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8c8e53b2-01fa-4e6f-8c1e-28874a8db92d_1196x1836.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1836,&quot;width&quot;:1196,&quot;resizeWidth&quot;:534,&quot;bytes&quot;:565070,&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;:false,&quot;internalRedirect&quot;:&quot;https://www.aiforswes.com/i/180126605?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c8e53b2-01fa-4e6f-8c1e-28874a8db92d_1196x1836.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_!69dm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c8e53b2-01fa-4e6f-8c1e-28874a8db92d_1196x1836.png 424w, https://substackcdn.com/image/fetch/$s_!69dm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c8e53b2-01fa-4e6f-8c1e-28874a8db92d_1196x1836.png 848w, https://substackcdn.com/image/fetch/$s_!69dm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c8e53b2-01fa-4e6f-8c1e-28874a8db92d_1196x1836.png 1272w, https://substackcdn.com/image/fetch/$s_!69dm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c8e53b2-01fa-4e6f-8c1e-28874a8db92d_1196x1836.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></figure></div><h2>1. Understand the current job climate</h2><p>The current <a href="https://www.aiforswes.com/p/the-strange-reality-of-ai-hiring-2025?utm_source=publication-search">job market is weird</a>. Overall demand for software engineers has gone down, but demand for developers with experience in AI is at its peak. This means we have a lot of people competing for jobs, but for many roles there are very few qualified applicants.</p><p>To put things into perspective, only a few hours after posting about the open role, I had ~100 DMs on X and about half that on LinkedIn. Over the next few days, I had hundreds on both platforms. Yet, only a small group of candidates were actually a good fit.</p><p>In the current job market, you should understand that:</p><ol><li><p>You need to stand out immediately. Your messaging should be efficient.</p></li><li><p>A response may be delayed. You shouldn&#8217;t expect a response in hours or even up to a day. Be smart about when you follow up. </p></li><li><p>You may never get a response. Responding to everyone isn&#8217;t feasible due to volume.</p></li><li><p>You need to be prepared. Your resume and other supporting materials should be ready to go.</p></li></ol><p>Your goal is to make it easy for the person reviewing your experience. I can&#8217;t emphasize this enough: <strong>Making it easy for the person to review your work makes a huge difference in how likely you are to make it further in the hiring process</strong>.</p><p>With these things in mind, let&#8217;s figure out how we can make this process easy.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!uGgx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23bfb5f2-352f-4fe3-a2d5-be2eef5e777c_1196x764.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uGgx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23bfb5f2-352f-4fe3-a2d5-be2eef5e777c_1196x764.png 424w, https://substackcdn.com/image/fetch/$s_!uGgx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23bfb5f2-352f-4fe3-a2d5-be2eef5e777c_1196x764.png 848w, https://substackcdn.com/image/fetch/$s_!uGgx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23bfb5f2-352f-4fe3-a2d5-be2eef5e777c_1196x764.png 1272w, https://substackcdn.com/image/fetch/$s_!uGgx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23bfb5f2-352f-4fe3-a2d5-be2eef5e777c_1196x764.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uGgx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23bfb5f2-352f-4fe3-a2d5-be2eef5e777c_1196x764.png" width="1196" height="764" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/23bfb5f2-352f-4fe3-a2d5-be2eef5e777c_1196x764.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:764,&quot;width&quot;:1196,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:268940,&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://www.aiforswes.com/i/180126605?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23bfb5f2-352f-4fe3-a2d5-be2eef5e777c_1196x764.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_!uGgx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23bfb5f2-352f-4fe3-a2d5-be2eef5e777c_1196x764.png 424w, https://substackcdn.com/image/fetch/$s_!uGgx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23bfb5f2-352f-4fe3-a2d5-be2eef5e777c_1196x764.png 848w, https://substackcdn.com/image/fetch/$s_!uGgx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23bfb5f2-352f-4fe3-a2d5-be2eef5e777c_1196x764.png 1272w, https://substackcdn.com/image/fetch/$s_!uGgx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23bfb5f2-352f-4fe3-a2d5-be2eef5e777c_1196x764.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><h2>2. Developing a good elevator pitch</h2><p><em><strong>Update: After spending a lot of time going through DMs I realized it makes my life a ton easier when a person sends their resume immediately with their elevator pitch. Send it as a pdf via shareable link (such as Google Drive).</strong></em></p><p>Your goal with your first message should be to fit enough information in a blurb readable in fifteen seconds to make the person feel they&#8217;re missing out on talent if they don&#8217;t respond to you.</p><p>There are two things to pull from that.</p><p>First, your message should be readable in fifteen seconds or less. If you send a wall of text containing your entire CV, it won&#8217;t be read. You&#8217;ll be skipped and the person hiring won&#8217;t think twice. They simply don&#8217;t have time for this. Remember, you don&#8217;t need to list all your experience, just the most relevant and recent.</p><p>Second, your message should be convincing. It should figuratively scream &#8220;I&#8217;m the person for this job.&#8221; So many people fall into the trap of just sharing <em>what they do</em> instead of <em>the impact they&#8217;ve had</em>.</p><p>Those hiring care <em>much</em> more about the outcome of work than the work done. When you share the impact your work had, you&#8217;re also forced to get into more detail about it. Descriptions of &#8216;what someone has done&#8217; tend to be generic. I can&#8217;t tell if you&#8217;re the right person for the job based on a vague description of work. I can tell much better if I understand the outcome of that work.</p><p>I responded to so many people with &#8216;Tell me more about your work&#8217; because they only sent me a generic description of what they did. In many cases, when they responded with more detail, their work was much cooler than they had originally made it seem.</p><p>Here&#8217;s a bad DM:</p><blockquote><p>&#8220;Hi, I&#8217;m a software engineer with 5 years of experience in AI and machine learning. I&#8217;ve worked at Company X and Company Y building models. Let me know if you want my resume. Interested in your role.&#8221;</p></blockquote><p>Here&#8217;s a good, very similar DM:</p><blockquote><p>&#8220;Saw your AI engineer role&#8212;I&#8217;ve built production ML systems at Company X that boosted user engagement by 35% using PyTorch and deployed via AWS. Resume: [link]. Excited to chat about how I can contribute.&#8221;</p></blockquote><p>Outside of the content, notice how the second message sent a resume link immediately. This isn&#8217;t a link to a LinkedIn profile, portfolio, or personal site. This is a link to a polished resume. The reader doesn&#8217;t have time to visit a website for everyone to look for information. You need to bring the info to them.</p><p>Interestingly, the quality of DMs on LinkedIn was much higher than X in general, but qualified candidates overwhelmingly came from X.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dcrg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa81e79-943f-410c-9b4d-66a057469282_1196x812.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dcrg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa81e79-943f-410c-9b4d-66a057469282_1196x812.png 424w, https://substackcdn.com/image/fetch/$s_!dcrg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa81e79-943f-410c-9b4d-66a057469282_1196x812.png 848w, https://substackcdn.com/image/fetch/$s_!dcrg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa81e79-943f-410c-9b4d-66a057469282_1196x812.png 1272w, https://substackcdn.com/image/fetch/$s_!dcrg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa81e79-943f-410c-9b4d-66a057469282_1196x812.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dcrg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa81e79-943f-410c-9b4d-66a057469282_1196x812.png" width="1196" height="812" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8fa81e79-943f-410c-9b4d-66a057469282_1196x812.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:812,&quot;width&quot;:1196,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:301054,&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://www.aiforswes.com/i/180126605?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa81e79-943f-410c-9b4d-66a057469282_1196x812.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_!dcrg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa81e79-943f-410c-9b4d-66a057469282_1196x812.png 424w, https://substackcdn.com/image/fetch/$s_!dcrg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa81e79-943f-410c-9b4d-66a057469282_1196x812.png 848w, https://substackcdn.com/image/fetch/$s_!dcrg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa81e79-943f-410c-9b4d-66a057469282_1196x812.png 1272w, https://substackcdn.com/image/fetch/$s_!dcrg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa81e79-943f-410c-9b4d-66a057469282_1196x812.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><h2>3. Your resume is still important!</h2><p>The number one issue I see when looking over resumes is bullet points that share <em>what someone did</em> instead of <em>the impact they had</em>. I mentioned this in the previous section, but it&#8217;s by far a bigger issue on a resume than in a DM.</p><p>When you focus resume bullet points on the impact of your work, you&#8217;ll not only share what the work was, but why it was important and better communicate what you&#8217;re capable of.</p><p>A bad bullet point:</p><blockquote><p>&#8220;Trained machine learning models for image recognition using TensorFlow.&#8221;</p></blockquote><p>A good bullet point:</p><blockquote><p>&#8220;Achieved 92% accuracy for image recognition tasks and reduced image processing time by 40% by training a machine learning model on a 50k-image dataset using TensorFlow.&#8221;</p></blockquote><p>To write excellent resume bullet points, I recommend <a href="https://ocs.yale.edu/resources/writing-impactful-resume-bullets/">the XYZ formula</a>: &#8220;Accomplished [X] as measured by [Y], by doing [Z].&#8221; You can find more examples of good and bad bullet points at that link.</p><p>The second issue is poor formatting and non-important information. <strong>Your resume should be a single page.</strong> Those hiring won&#8217;t have time to look at a second. The single page should contain the most relevant information first and call attention to the technologies and skills your work shows you have.</p><p>Your resume <strong>should not</strong> contain a skills section that lists your proficiency in languages and technologies. Those proficiencies should come across in your bullet points. As you share your impact, include what you used to make that impact and bold those technologies so they stand out.</p><p>Take care to draw attention to the technologies listed in the job description. This is a really easy way for a recruiter (especially one with a non-technical background) to decide you might be a fit for a role.</p><p>Some examples of this:</p><blockquote><p>&#8220;Increased user retention by 25% for a platform with 1M+ daily active users, by leading development of scalable recommendation engine using <strong>Python</strong>, <strong>PyTorch</strong>, and <strong>Kubernetes</strong>.&#8221;</p></blockquote><p>Or:</p><blockquote><p>&#8220;Increased user retention by 25% for a platform with 1M+ daily active users, by leading development of scalable recommendation engine (<strong>Python</strong>, <strong>PyTorch</strong>, <strong>Kubernetes</strong>).&#8221;</p></blockquote><p>The fourth issue I see is candidates not being honest about their experience. I&#8217;ve seen very few people outright lie about their experience but I&#8217;ve seen a lot of people embellish it. Lies and embellishments come across very quickly when having an actual conversation with someone about what they&#8217;ve done and it doesn&#8217;t look good.</p><p>This also frequently comes across when looking over someone&#8217;s resume. The experience listed in your DM should match the experience listed on your resume. I should be able to look at your resume and think &#8220;That&#8217;s what they were talking about.&#8221; I&#8217;ve seen too many resumes that seem like an entirely different candidate than was portrayed via DM. That&#8217;s a red flag to me.</p><p>The final issue I see in resumes (and very frequently when chatting with candidates) is using the term <em>we</em> or similar group phrasing. Your resume and candidacy are about <em>you</em>. You need to specifically share the impact <em>you</em> had.</p><p>A tip: <strong>Tailor your resume to each job listing</strong>. Other candidates are doing this and you&#8217;re competing with them. You should match your experience exactly with what the hiring team is looking for if you want the best chance of making it through to the hiring rounds.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dkuy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c055b4-3def-4394-a687-b0d459c1a496_1196x1148.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dkuy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c055b4-3def-4394-a687-b0d459c1a496_1196x1148.png 424w, https://substackcdn.com/image/fetch/$s_!dkuy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c055b4-3def-4394-a687-b0d459c1a496_1196x1148.png 848w, https://substackcdn.com/image/fetch/$s_!dkuy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c055b4-3def-4394-a687-b0d459c1a496_1196x1148.png 1272w, https://substackcdn.com/image/fetch/$s_!dkuy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c055b4-3def-4394-a687-b0d459c1a496_1196x1148.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dkuy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c055b4-3def-4394-a687-b0d459c1a496_1196x1148.png" width="1196" height="1148" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a6c055b4-3def-4394-a687-b0d459c1a496_1196x1148.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1148,&quot;width&quot;:1196,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:602901,&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://www.aiforswes.com/i/180126605?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c055b4-3def-4394-a687-b0d459c1a496_1196x1148.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_!dkuy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c055b4-3def-4394-a687-b0d459c1a496_1196x1148.png 424w, https://substackcdn.com/image/fetch/$s_!dkuy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c055b4-3def-4394-a687-b0d459c1a496_1196x1148.png 848w, https://substackcdn.com/image/fetch/$s_!dkuy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c055b4-3def-4394-a687-b0d459c1a496_1196x1148.png 1272w, https://substackcdn.com/image/fetch/$s_!dkuy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c055b4-3def-4394-a687-b0d459c1a496_1196x1148.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><h2>4. Things not to do</h2><p>Before we finish, here are a few things you shouldn&#8217;t do when messaging someone for a job opportunity. I experienced all of these and more this past week.</p><ol><li><p><strong>Don&#8217;t spam</strong> (in messages or elsewhere). Many people would follow up with a &#8216;gentle ping&#8217; two hours after sending their previous message. Remember, the person you are messaging is looking for someone to work with. Be respectful because they definitely won&#8217;t want to work with someone who isn&#8217;t.</p></li><li><p><strong>Don&#8217;t use AI for these messages</strong>. It&#8217;s very obvious and a very quick filter anyone can use to eliminate candidates. If you&#8217;re using AI to write, your DM will be poorly written and super generic. It only takes a minute or two to draft a worthwhile message.</p></li><li><p><strong>Don&#8217;t be threatening</strong>. I don&#8217;t know if this is a result of the alpha male mentality spread around the internet, but anyone telling me I must hire them or I&#8217;ll regret it is immediately disqualified.</p></li><li><p><strong>Don&#8217;t just say &#8216;hi&#8217;</strong>. This is a good rule of thumb for all professional communications. Time is limited and sending &#8216;hi&#8217; is a waste of it. Get right to the point.</p></li><li><p><strong>Don&#8217;t DM just because you want to ask a question</strong>, yet. This isn&#8217;t because it&#8217;s disrespectful, but simply due to logistics. I&#8217;m happy to answer questions via DM, but I won&#8217;t have time when filtering through job-related messages.</p></li></ol><div><hr></div><p>One final tip: <strong>Do things in public</strong>. Learn new skills, build cool things, and share what you&#8217;re doing online. This is the differentiating factor for getting a job in the current market.</p><p>If I&#8217;ve missed anything, leave it below! Thanks for reading.</p><p><strong>Always be (machine) learning,</strong></p><p><strong>Logan</strong> </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.aiforswes.com/p/get-hired-2025-2026?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.aiforswes.com/p/get-hired-2025-2026?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p>]]></content:encoded></item><item><title><![CDATA[The Top 10 AI Skills Software Engineers Should Focus On (In Order)]]></title><description><![CDATA[A straightforward list from my market research]]></description><link>https://www.aiforswes.com/p/the-top-10-2025</link><guid isPermaLink="false">https://www.aiforswes.com/p/the-top-10-2025</guid><dc:creator><![CDATA[Logan Thorneloe]]></dc:creator><pubDate>Fri, 03 Oct 2025 13:47:25 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!AshN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>This is the last article where I&#8217;ll be sharing my recent job market research. In case you missed it, I&#8217;ve also written about the <strong>five AI-related jobs every software engineer should know about</strong> and the <strong>strange reality of the current job market</strong> (why it isn&#8217;t just a bad market, but also a weird one).</em></p><p><em>You can find both of these below:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;2189b220-7bc9-4ca3-8ef9-9d335f8c5786&quot;,&quot;caption&quot;:&quot;For the past few months, I&#8217;ve been tracking the AI and software engineering job market to better understand what&#8217;s going on. I&#8217;ve even written about how the job market isn&#8217;t just bad, it&#8217;s strange.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;The 5 AI-Related Jobs Every Software Engineer Should Know About&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:43759292,&quot;name&quot;:&quot;Logan Thorneloe&quot;,&quot;bio&quot;:&quot;ml infra at Google teaching software engineers how to ship with AI&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dcabb40d-0160-46a4-ad4f-55b486a11ee0_1024x1024.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-09-12T14:43:59.458Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!q5Iz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://mlforswes.com/p/the-5-ai-related-jobs&quot;,&quot;section_name&quot;:&quot;&#128188; Career&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:173437809,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:18,&quot;comment_count&quot;:0,&quot;publication_id&quot;:1744179,&quot;publication_name&quot;:&quot;Machine Learning for Software Engineers&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!dRNW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a6f2ce2-153f-4600-814b-6344641e3210_500x500.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;485a5857-20a0-4c7f-ab7e-141ab1def81c&quot;,&quot;caption&quot;:&quot;Welcome to the first of many career-focused articles within ML for SWEs! This week, I&#8217;ll be going over the strange reality of the current job market and tips I have for you. I&#8217;ll be going over the following topics in the near-future:&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;The Strange Reality of AI and SWE Hiring in 2025&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:43759292,&quot;name&quot;:&quot;Logan Thorneloe&quot;,&quot;bio&quot;:&quot;ml infra at Google teaching software engineers how to ship with AI&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dcabb40d-0160-46a4-ad4f-55b486a11ee0_1024x1024.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-22T13:51:50.595Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!Y5gd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1ebed63-87e0-4a26-970d-8d30ca6feed0_1280x720.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://mlforswes.com/p/the-strange-reality-of-ai-hiring-2025&quot;,&quot;section_name&quot;:&quot;&#128188; Career&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:171654161,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:11,&quot;comment_count&quot;:0,&quot;publication_id&quot;:1744179,&quot;publication_name&quot;:&quot;Machine Learning for Software Engineers&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!dRNW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a6f2ce2-153f-4600-814b-6344641e3210_500x500.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>This list contains the top 10 skills every software engineering working in (or wanting to work in) AI should be focusing on in order of how frequently they occurred on AI-related engineering job descriptions.</p><p>My methodology for gathering my data points isn&#8217;t 100% foolproof, but I&#8217;ve been tracking job listings for close to 6 months now while focusing on companies with the following 3 qualities:</p><ol><li><p><strong>A high hiring bar</strong>. I know these companies put time and effort into their hiring process to get the best engineers. They&#8217;re more likely to provide more accurate and higher quality job listings.</p></li><li><p><strong>Are doing interesting work in AI and ML</strong>. Most were companies at the forefront of AI including startups and large tech companies. These are companies that are innovating in the space and likely to use the most up-to-date technologies.</p></li><li><p><strong>Companies that pay well</strong>. A huge reason this is interesting is so you can learn the skills that will let you increase your compensation.</p></li></ol><p>Let&#8217;s jump right in!</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AshN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AshN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!AshN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!AshN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!AshN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AshN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:537433,&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://www.aiforswes.com/i/173993708?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.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_!AshN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!AshN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!AshN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!AshN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e1217c-2baa-499e-ad90-9b3bbd713c6a_1280x720.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><h2><strong>The most-mentioned skills in job descriptions</strong></h2><h3><strong>1. Python</strong></h3><p>This one is kind of obvious, but learning Python as a software engineer has a huge return on investment. The entire ML ecosystem is built on top of Python code, and the large majority of machine learning libraries are built to work with it.</p><p>About 90% of job descriptions mentioned Python. In my opinion, this is a language all software engineers should learn anyway for interviews, as it removes a lot of the language-related hardship so you can focus on the data structures and algorithms.</p><div><hr></div><h3><strong>2. PyTorch</strong></h3><p>PyTorch is the dominant deep learning framework across the industry. Companies hiring for AI engineering roles expect engineers to be fluent in PyTorch because it underlies most modern systems. PyTorch was included as a requirement for about 70% of roles.</p><p>It&#8217;s the easiest deep learning framework to get started with and, in my opinion, the most readable. I&#8217;d say it&#8217;s the most beginner-friendly, even though the framework you use in industry will depend on the company you work for. The other popular frameworks are also included in this list, just further down.</p><div><hr></div><h3><strong>3. Kubernetes</strong></h3><p>Kubernetes is the infra layer that allows ML systems to run at scale. It shows up in nearly every listing that touches ML infrastructure because it allows containerized workloads to be deployed, managed, and scaled across clusters. Kubernetes was also mentioned in about 70% of roles.</p><p>Kubernetes is the standard way to train and serve models on multi-GPU clusters. Training and serving in production rarely occurs on one machine. Kubernetes handles scheduling, scaling, and fault tolerance for large workloads.</p><div><hr></div><h3><strong>4. Cloud Platforms (AWS, GCP, Azure)</strong></h3><p>Most companies are running their training and serving on one of the three major cloud platforms. These showed up on job descriptions about 70% of the time combined. To me, having experience working with one shows that you can learn how to work with the others. Most companies seemed to share this opinion, though some asked specifically for experience in one or the other.</p><p>AWS was mentioned the most, then GCP, and then Azure. I think Azure actually has a more dominant market share, but the switch to TPUs for many companies has them using Google&#8217;s infrastructure. Understanding cloud platforms, the tools they offer, and how to use those tools is beneficial for an AI-related job search.</p><div><hr></div><h3><strong>5. SQL</strong></h3><p>Any time you&#8217;re working in AI, you&#8217;ll be working with data. Anytime you work with data, understanding SQL is a must. There hasn&#8217;t been a single role that I&#8217;ve worked that hasn&#8217;t required SQL. It appeared in about half of job descriptions.</p><p>Being able to inspect data is a must for any engineer wanting to work in machine learning.</p><div><hr></div><h3><strong>6. C++</strong></h3><p>C++ shows up consistently in job listings for performance engineering, inference optimization, and GPU-related work. While Python dominates at the surface, the underlying libraries and kernels are written in C++.</p><p>For an infrastructure-related role or any role focusing on ML efficiency, C++ is the go-to language. It appeared in about half of the job descriptions.</p><div><hr></div><h3><strong>7. LLM APIs and Prompt Engineering</strong></h3><p>Companies want engineers that already have experience working with LLMs. Building systems with AI is fundamentally different from building traditional software systems because of their non-deterministic nature. Language models are quickly being integrated into every product, and it&#8217;s beneficial to understand and have experience doing that.</p><p>Many companies asked for experience with major LLM API providers (Google, OpenAI, Anthropic, etc.), but skills like prompt engineering were also in demand. This was in just under 50% of job listings, but I expect it to rise in the coming months.</p><div><hr></div><h3><strong>8. Data Processing at Scale (Spark, Kafka, Airflow)</strong></h3><p>Similar to SQL, technologies enabling data pipeline handling at scale are central to building AI and machine learning systems. The real key to bringing value to ML (whether infra or at the product level) is understanding how to scale. These technologies help you do so.</p><p>I don&#8217;t work with these technologies currently, but my understanding is that Spark is the standard for batch jobs, Kafka for real-time streams, and Airflow for orchestrating workflows. Engineers will need to build and maintain systems processing massive datasets using these technologies. These three technologies were included in about 40% of listings combined.</p><div><hr></div><h3><strong>9. Inference and Model Serving (Triton, TensorRT, ONNX)</strong></h3><p>Companies are very keen to find engineers that know how to serve large machine learning models efficiently. Companies are currently burning cash at the scale they&#8217;re serving models. Bringing serving costs down is a huge goal right now and probably will be for the next few years.</p><p>Tools like NVIDIA Triton, TensorRT, and ONNX are frequently listed in infra roles because they allow companies to deploy models with lower latency and lower cost. Basically, companies want engineers that know how to squeeze performance out of their compute. These were listed on about 30% of job listings.</p><div><hr></div><h3><strong>10. JAX and TensorFlow</strong></h3><p>Both JAX and TensorFlow are ML frameworks like PyTorch. However, if I were to recommend learning one right now, it would be JAX. It seems companies are favoring it, especially for training on TPUs. TensorFlow is still relevant, but more and more companies seem to be transitioning away from it to JAX.</p><p>Even if you aren&#8217;t primarily training models, it&#8217;s worth understanding these frameworks because you&#8217;ll likely use them to a certain extent. They were included just under 30% of the time together on job listings.</p><div><hr></div><p>Let me know if I missed anything. Thanks for reading!</p><p><strong>Always be (machine) learning,</strong></p><p><strong>Logan</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.aiforswes.com/p/the-top-10-2025?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.aiforswes.com/p/the-top-10-2025?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p>]]></content:encoded></item><item><title><![CDATA[The 5 AI-Related Jobs Every Software Engineer Should Know About]]></title><description><![CDATA[What each role actually entails and the qualifications to work each]]></description><link>https://www.aiforswes.com/p/the-5-ai-related-jobs</link><guid isPermaLink="false">https://www.aiforswes.com/p/the-5-ai-related-jobs</guid><dc:creator><![CDATA[Logan Thorneloe]]></dc:creator><pubDate>Fri, 12 Sep 2025 14:43:59 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!q5Iz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!q5Iz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!q5Iz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!q5Iz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!q5Iz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!q5Iz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!q5Iz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:115353,&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://mlforswes.com/i/173437809?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.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_!q5Iz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!q5Iz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!q5Iz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!q5Iz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeec1ffd-a25c-43a4-90b2-db98278dceba_1280x720.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><p>For the past few months, I&#8217;ve been tracking the AI and software engineering job market to better understand what&#8217;s going on. I&#8217;ve even written about how the job market <a href="https://mlforswes.com/p/the-strange-reality-of-ai-hiring-2025">isn&#8217;t just </a><em><a href="https://mlforswes.com/p/the-strange-reality-of-ai-hiring-2025">bad</a></em><a href="https://mlforswes.com/p/the-strange-reality-of-ai-hiring-2025">, it&#8217;s </a><em><a href="https://mlforswes.com/p/the-strange-reality-of-ai-hiring-2025">strange</a></em>.</p><p>One thing I found particularly interesting is how companies are titling job postings and just how inconsistent those titles are across the industry. This inconsistency makes it even more difficult for potential employers to find jobs they qualify for.</p><p>I&#8217;ve consolidated the research I&#8217;ve done into 5 AI-related roles engineers should know about if they want to work in AI. I&#8217;ve detailed what the job actually does and the qualifications for each for the following five roles:</p><ul><li><p>AI Research Scientist</p></li><li><p>Research Engineer</p></li><li><p>Machine Learning Engineer</p></li><li><p>Software Engineer, AI</p></li><li><p>AI Engineer</p></li></ul><p>In the future, I&#8217;ll be getting more into the actual skills employers expect and how prevalent they are in job applications. Enjoy!</p><h2>1. AI Research Scientist</h2><p>This role is pretty cut-and-dry: AI research scientists conduct original research with the goal of advancing AI capabilities. The focus is on finding novel capabilities of AI. </p><p>The role entails a lot of experimentation and follows a research workflow (hypothesis, test, iterate, etc.). You&#8217;ll be expected to keep up with AI research and write papers to share what you&#8217;re working on.</p><p>In industry, there are <em>very </em>few research positions that require absolutely zero software engineering skills. Working in industry, you should know <em>at least</em> the basics of software engineering. You&#8217;ll work with engineers that will do most of the engineering but you need to be able to contribute where needed and communicate effectively with those engineers.</p><p><strong>Qualifications: </strong></p><ul><li><p>PhD (sometimes an MS) in a related field</p></li><li><p>Deep research experience in a relevant AI field</p></li><li><p>Papers at AI conferences</p></li><li><p>Strong mathematical background</p></li><li><p>An ability to independently develop new research hypotheses</p></li></ul><h2>2. Research Engineer</h2><p>This is another established role where the responsibilities are well-defined, but it can get muddied due to the introduction of the next job in this list.</p><p>A research engineer&#8217;s focus is understanding how novel research can be applied to real-world applications. This means research engineers work very closely with research scientists to turn advancements in AI into something that can be used in the real-world.</p><p>This role includes things like implementing cutting-edge research papers from scratch, building prototypes of new AI capabilities to prove their usefulness, creating tools to support research activities, and iterating upon all of the above.</p><p><strong>Qualifications:</strong></p><ul><li><p>PhD or MS in a related field</p></li><li><p>A strong understanding of ML and AI fundamentals</p></li><li><p>Experience building prototypes and new products</p></li><li><p>Experience with common ML frameworks and tooling</p></li><li><p>Strong software engineering skills</p></li></ul><h2>3. Machine Learning Engineer</h2><p>This is where the roles start getting a bit muddied but I think the industry has settled on what a machine learning engineer is.</p><p>A machine learning engineer is responsible for creating AI systems that work in production. This means all the software engineering that goes into create production software systems at scale plus being responsible for the entire model lifecycle.</p><p>At some companies, ML engineers will design, train, and evaluate models from scratch along with setting up the systems to make them work in production. In others, they&#8217;ll take the models from the research scientists and/or prototypes from research engineers and do the work needed to make those function at scale.</p><p>This role includes building and maintaining training pipelines, implementing model evals and testing, setting up model monitoring and performance tracking, handling model versioning and deployments, and everything else that goes into software systems (A/B testing, CI/CD, etc.).</p><p>As an aside, <a href="https://mlforswes.com/p/machine-learning-infra">I would also include anyone working in MLOps or Infrastructure as a Machine Learning Engineer</a> as their entire role is to understand the engineering that goes into ML. However, it seems many of those roles are included in the last two roles listed below.</p><p><strong>Qualifications:</strong></p><ul><li><p>BS or MS in a related field</p></li><li><p>Deep understanding of ML algorithms and their applications</p></li><li><p>An understanding of modeling techniques and the ML experimentation process</p></li><li><p>Proficiency with MLOps tools</p></li><li><p>Strong software engineering skills</p></li></ul><h2>4. Software Engineer, AI</h2><p>This is by definition a bit more broad of a role title because both &#8220;software engineer&#8221; and &#8220;AI&#8221; have very broad definitions.</p><p>A software engineer working in AI builds AI systems. Their focus is on the application layer and they use (usually) pretrained models to solve a specific problem. Essentially, this is a lot of backend or fullstack software engineering with the complexities of AI layered on top.</p><p>This role can also be responsible for ML-related work such as data or training pipelines, but usually this role doesn&#8217;t train models and solely focuses on applications and the complexity of that application. This means understanding memory usage, cost estimates, resource optimization, data handling and integrity, evals and testing, safety, and more.</p><p>This is the title out of these five with the highest growth potential. The application layer is incredibly important and where real people find the most value from AI. Working with AI systems is <a href="https://mlforswes.com/p/what-makes-machine-learning-so-hard?utm_source=publication-search">more difficult than working with traditional software systems</a> and requires great engineers to function effectively.</p><p><strong>Qualifications:</strong></p><ul><li><p>BS or MS in a related field (or equivalent experience)</p></li><li><p>An understanding of AI/ML fundamentals and recent advancements</p></li><li><p>Proficiency in cloud platforms and distributed systems</p></li><li><p>Proficiency in common languages (C++/Python/Go are pretty common)</p></li></ul><h2>5. AI Engineer</h2><p>This is <strong>by far</strong> the most vague job title in this space. I&#8217;ve seen it used as the same thing as an ML engineer, the same as a software engineer working in AI, and I&#8217;ve even seen it used to describe what I would consider a product engineer.</p><p>My take: The title &#8216;AI engineer&#8217; is commonly used for roles that are less well-defined. I see this role listed frequently at startups where an employee needs to wear multiple hats and at larger companies with poor job descriptions. The one thing that&#8217;s pretty consistent is AI engineers work on the application of AI (jobs are often titles as &#8216;applied AI engineer&#8217; because of this).</p><p>My suggestion for working as an AI engineer is to think about which of the above roles you&#8217;re most interested in and focus on the qualifications for that. Then, pay attention to the actual job description for AI engineering roles to find out more specifically what qualifications you need.</p><p><strong>Qualifications:</strong></p><ul><li><p>BS or MS in a related field (or equivalent experience)</p></li><li><p>An understanding of ML frameworks and tooling</p></li><li><p>Strong software engineering skills</p></li><li><p>Whatever else is specific to the given job description</p><div><hr></div></li></ul><p>Hopefully this is helpful! As always, let me know if I missed something or you have an questions by leaving a comment.</p><p><strong>Always be (machine) learning,</strong></p><p><strong>Logan</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.aiforswes.com/p/the-5-ai-related-jobs?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.aiforswes.com/p/the-5-ai-related-jobs?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p>]]></content:encoded></item><item><title><![CDATA[How to be an agentic engineer]]></title><description><![CDATA[Everyone tells you to be an 'agentic engineer' but no one tells you how]]></description><link>https://www.aiforswes.com/p/how-to-be-an-agentic-engineer</link><guid isPermaLink="false">https://www.aiforswes.com/p/how-to-be-an-agentic-engineer</guid><dc:creator><![CDATA[Logan Thorneloe]]></dc:creator><pubDate>Mon, 12 May 2025 13:02:54 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The term &#8216;<strong>agentic engineer</strong>&#8217; has certainly been used before, but it hasn&#8217;t really gained momentum until this past week. There&#8217;s a simple reason why: AI has been gotten to a point where it removes most of the blockers inhibiting engineers from building. <strong>This has made being an agentic engineer more important than ever.</strong></p><p><strong>An agentic enginee</strong>r is an engineer who <em>just does things</em>. They&#8217;re able to identify high-impact work that needs to be done and take care of it without being told what to do or how to do it.</p><p>You might think that sounds like what every senior engineer should be able to, but there&#8217;s a difference. The key to being a senior engineer is the capability to take a system from requirements through the design and build stages on their own. An agentic engineer takes this a step forward. </p><p>An agentic engineer starts earlier in the pipeline. They identify the requirements on their own by understanding problems, recognizing needs, defining scope, and taking initiative entirely on their own. While senior engineers make progress, an agentic engineers drive outcomes.</p><p>Now you might be thinking: &#8220;Oh, I&#8217;m familiar with this. You&#8217;re talking about <strong>a 10x engineer</strong>.&#8221; I want to clarify that <strong>I&#8217;m not</strong>. In fact, articulating why I&#8217;m not talking about The 10x Engineer will put into perspective why an agentic engineer is becoming so important.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ducr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F030a5964-dace-49af-a5e2-7035c4e27414_1362x290.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ducr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F030a5964-dace-49af-a5e2-7035c4e27414_1362x290.png 424w, https://substackcdn.com/image/fetch/$s_!Ducr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F030a5964-dace-49af-a5e2-7035c4e27414_1362x290.png 848w, https://substackcdn.com/image/fetch/$s_!Ducr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F030a5964-dace-49af-a5e2-7035c4e27414_1362x290.png 1272w, https://substackcdn.com/image/fetch/$s_!Ducr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F030a5964-dace-49af-a5e2-7035c4e27414_1362x290.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ducr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F030a5964-dace-49af-a5e2-7035c4e27414_1362x290.png" width="1362" height="290" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/030a5964-dace-49af-a5e2-7035c4e27414_1362x290.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:290,&quot;width&quot;:1362,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:119491,&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://societysbackend.com/i/163361308?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F030a5964-dace-49af-a5e2-7035c4e27414_1362x290.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_!Ducr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F030a5964-dace-49af-a5e2-7035c4e27414_1362x290.png 424w, https://substackcdn.com/image/fetch/$s_!Ducr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F030a5964-dace-49af-a5e2-7035c4e27414_1362x290.png 848w, https://substackcdn.com/image/fetch/$s_!Ducr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F030a5964-dace-49af-a5e2-7035c4e27414_1362x290.png 1272w, https://substackcdn.com/image/fetch/$s_!Ducr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F030a5964-dace-49af-a5e2-7035c4e27414_1362x290.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p>To me, a 10x engineer has always been a legend due to their in-depth understanding of technical concepts and their intuition that allows them to pick up new concepts quickly. Previously, this knowledge and intuition was the key to obtain 10x output and their ability to build systems faster than their colleagues. However, this is no longer the case.</p><p>As AI progresses, it breaks down the barrier that separated a 10x engineer from the rest of the pack. Technical concepts and fast coding are becoming more accessible to everyone. The defining factor in the age of AI is <strong>taking action.</strong> This is what defines an agentic engineer and what puts them ahead of their peers: Their ability to know what actions to take and the drive to execute them.</p><p>What you&#8217;ll see all over social media is everyone telling you to be an agentic engineer. <strong>What you don&#8217;t see anyone telling you is how. </strong>Why is this? <strong>Being an agentic engineer is difficult</strong> and is rooted outside of technical ability.</p><p>It&#8217;s something I&#8217;ve struggled with and I think about a lot, so in this article <strong>I&#8217;ll simplify the three things that set an agentic engineer apart from the rest and how you can become one.</strong></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.aiforswes.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Society's Backend is a machine learning newsletter for software engineers. If you want to build effective, real-world AI, make sure to subscribe.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>If you missed last week&#8217;s article, I wrote about why right now is the best time to be a software engineer (contrary to everyone&#8217;s opinion). You can check it out here:</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;767b49dd-4358-4dea-8055-a0a8e3964397&quot;,&quot;caption&quot;:&quot;Welcome to our weekly curated machine learning roundup specifically for software engineers. Each week I detail:&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Now is The Best Time to Be a Software Engineer (ML for SWEs 9)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:43759292,&quot;name&quot;:&quot;Logan Thorneloe&quot;,&quot;bio&quot;:&quot;ML infra engineer at Google teaching software engineers how to build real-world AI.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ba547486-5348-4c08-934e-7e11412b5ee7_500x500.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-05-05T13:02:50.120Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a6d112-ac8b-43bf-b4f5-77b0232e5366_1280x720.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://societysbackend.com/p/5-5-25&quot;,&quot;section_name&quot;:&quot;ML for SWEs&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:162851242,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:11,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Society's Backend&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80fcf279-d2b0-443a-ae4d-50b29831486e_500x500.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><h2>1. Understand Business Objectives</h2><p>The first step that turns someone into an agentic engineer is understanding business objectives. Regardless of the size of company you work for, the problems that need to be solved align with business objectives. If you want to identify the most important problems and tackle them, you must take the time to understand the business objectives they aim to solve.</p><p>When I first started working as a software engineer, I naively thought my job was just to build software. I&#8217;ve always been confident in my knowledge of technical concepts but I quickly realized I had no experience in applying that knowledge.</p><p>This is something many engineers, researchers, and PMs in tech struggle with because it&#8217;s a learned skilled that isn&#8217;t taught in school. It also isn&#8217;t a skill that just clicks and you have it&#8212;it&#8217;s a skill highly dependent on the technology you&#8217;re working on, the company you&#8217;re working for, and the role you play in building the systems you work on. <strong>Understanding business objectives is an ongoing, frequently changing task.</strong></p><p>The good news is that it gets easier with practice&#8212;and practicing it <em><strong>should </strong></em>always be readily accessible. Take note of the emphasis on &#8216;should&#8217; here because it&#8217;s something we&#8217;ll get back to.</p><p>At most companies, leadership frequently goes through planning cycles with their team where they identify what they want to accomplish and the work needed to do so (objectives). They also identify concrete metrics that define whether or not those objectives were met (these are KPIs, which stands for &#8216;key performance indicators&#8217;).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!l3cU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d98f2bd-44fd-49eb-880d-df4de0be6906_960x540.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!l3cU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d98f2bd-44fd-49eb-880d-df4de0be6906_960x540.png 424w, https://substackcdn.com/image/fetch/$s_!l3cU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d98f2bd-44fd-49eb-880d-df4de0be6906_960x540.png 848w, https://substackcdn.com/image/fetch/$s_!l3cU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d98f2bd-44fd-49eb-880d-df4de0be6906_960x540.png 1272w, https://substackcdn.com/image/fetch/$s_!l3cU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d98f2bd-44fd-49eb-880d-df4de0be6906_960x540.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!l3cU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d98f2bd-44fd-49eb-880d-df4de0be6906_960x540.png" width="960" height="540" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d98f2bd-44fd-49eb-880d-df4de0be6906_960x540.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:540,&quot;width&quot;:960,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:33233,&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://societysbackend.com/i/163361308?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d98f2bd-44fd-49eb-880d-df4de0be6906_960x540.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_!l3cU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d98f2bd-44fd-49eb-880d-df4de0be6906_960x540.png 424w, https://substackcdn.com/image/fetch/$s_!l3cU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d98f2bd-44fd-49eb-880d-df4de0be6906_960x540.png 848w, https://substackcdn.com/image/fetch/$s_!l3cU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d98f2bd-44fd-49eb-880d-df4de0be6906_960x540.png 1272w, https://substackcdn.com/image/fetch/$s_!l3cU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d98f2bd-44fd-49eb-880d-df4de0be6906_960x540.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">How KPIs and projects are aligned</figcaption></figure></div><p>The results of this planning cycle are shared throughout the organization with all roles so they can understand the most important problems to tackle and align on projects to do so.</p><p>The easiest way to know the most important problems you (as an individual) can solve to make an impact is to internalize the objectives and KPIs from these planning cycles. Coincidentally, this is also the best way to manage up and understand the work the leadership that controls your career progress wants completed. Every agentic engineer I know understands current business objectives and KPIs and solves problems accordingly.</p><p>Let me bring it back to the emphasis I put on <em>should</em> some paragraphs earlier. All the information I mentioned above <em>should</em> be made widely available to the entire organization. Some companies have well-defined processes for doing so.</p><p>One of the biggest and less-talked-about advantages of working for companies like Google, Meta, Microsoft, or other large tech companies early in a developer&#8217;s career is that these companies have these processes in place and this make it easy for junior developers to gain the skills they need to understand business objectives&#8212;a skill that pays dividends throughout their career.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Au7r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F865a4f2c-957b-474d-ad84-4df45fde5193_960x540.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Au7r!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F865a4f2c-957b-474d-ad84-4df45fde5193_960x540.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Au7r!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F865a4f2c-957b-474d-ad84-4df45fde5193_960x540.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Au7r!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F865a4f2c-957b-474d-ad84-4df45fde5193_960x540.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Au7r!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F865a4f2c-957b-474d-ad84-4df45fde5193_960x540.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Au7r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F865a4f2c-957b-474d-ad84-4df45fde5193_960x540.jpeg" width="960" height="540" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/865a4f2c-957b-474d-ad84-4df45fde5193_960x540.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:540,&quot;width&quot;:960,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:27756,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://societysbackend.com/i/163361308?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F865a4f2c-957b-474d-ad84-4df45fde5193_960x540.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Au7r!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F865a4f2c-957b-474d-ad84-4df45fde5193_960x540.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Au7r!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F865a4f2c-957b-474d-ad84-4df45fde5193_960x540.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Au7r!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F865a4f2c-957b-474d-ad84-4df45fde5193_960x540.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Au7r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F865a4f2c-957b-474d-ad84-4df45fde5193_960x540.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">Who is actually driving business decisions at large tech companies.</figcaption></figure></div><p>Some companies don&#8217;t have these processes and it makes it much more difficult to practice this skill. If the company you work for doesn&#8217;t have these processes, you have two options:</p><ol><li><p>Find a way to communicate up your management chain to understand business objectives. This will require frequent communication with your leadership and good communication from them.</p></li><li><p>Find a company that does. I know this isn&#8217;t an excellent solution, but it&#8217;s reality.</p></li></ol><h2>2. Be Curious</h2><p>In my first software engineering job out of college, I lucked out with an <strong>incredible </strong>manager. He&#8217;s now a Partner at Microsoft<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a> and gave me some of the best early career advice I&#8217;ve ever received.</p><p>He simply told me to <strong>be more curious</strong>. He reminded me that one of the best things about software engineering is you can figure out how anything works as long as you have access to the source code (with the exception of machine learning systems, of course, but even then it&#8217;s helpful).</p><p>It had never crossed my mind that I could just look into anything I had access to just because I was curious about it and learn how it works simply because I can. It was such a simple concept that was absolutely mind-blowing for naive, new-grad Logan.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MbLo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f58781-00e9-4123-9699-72ec4295214c_960x540.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MbLo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f58781-00e9-4123-9699-72ec4295214c_960x540.png 424w, https://substackcdn.com/image/fetch/$s_!MbLo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f58781-00e9-4123-9699-72ec4295214c_960x540.png 848w, https://substackcdn.com/image/fetch/$s_!MbLo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f58781-00e9-4123-9699-72ec4295214c_960x540.png 1272w, https://substackcdn.com/image/fetch/$s_!MbLo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f58781-00e9-4123-9699-72ec4295214c_960x540.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MbLo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f58781-00e9-4123-9699-72ec4295214c_960x540.png" width="960" height="540" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c7f58781-00e9-4123-9699-72ec4295214c_960x540.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:540,&quot;width&quot;:960,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:24131,&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://societysbackend.com/i/163361308?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f58781-00e9-4123-9699-72ec4295214c_960x540.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_!MbLo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f58781-00e9-4123-9699-72ec4295214c_960x540.png 424w, https://substackcdn.com/image/fetch/$s_!MbLo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f58781-00e9-4123-9699-72ec4295214c_960x540.png 848w, https://substackcdn.com/image/fetch/$s_!MbLo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f58781-00e9-4123-9699-72ec4295214c_960x540.png 1272w, https://substackcdn.com/image/fetch/$s_!MbLo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7f58781-00e9-4123-9699-72ec4295214c_960x540.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">This is oversimplified, but it gets the point across. If you understand more of the codebase, you can make more of an impact.</figcaption></figure></div><p>With so many companies using monorepos or large repositories to group microservices, this advice is even more beneficial. At Google we use one giant monorepo for all our code called google3. This means I have access to the source code for all Google products with the exception of  intellectual property. I can literally dig into how any Google product works just because I want to.</p><p>Curiosity is important to be an agentic engineer because you can&#8217;t solve the problems you identify by understanding business objectives using the tips above if you don&#8217;t understanding the code currently solving those objectives. Or, more simply put, <strong>you can&#8217;t improve systems if you don&#8217;t understand how they already works.</strong></p><p>So I&#8217;ll echo my first manager&#8217;s advice to anyone I meet: <strong>The best software engineers stay curious.</strong></p><h2>3. Just Start Building</h2><p>A common phrase in the software community that I love is &#8220;you can just do things.&#8221; I&#8217;ll take this one step more and say &#8220;you can just build things.&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FomT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FomT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!FomT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!FomT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!FomT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FomT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.png" width="570" height="320.625" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:570,&quot;bytes&quot;:66039,&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://societysbackend.com/i/163361308?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.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_!FomT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.png 424w, https://substackcdn.com/image/fetch/$s_!FomT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.png 848w, https://substackcdn.com/image/fetch/$s_!FomT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.png 1272w, https://substackcdn.com/image/fetch/$s_!FomT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F721e4ff9-d693-4401-975c-ebdbbb732546_1280x720.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>Too often we forget this. At large tech companies, there are processes put in place to align individuals on working within the same problem space. Usually these processes are meant to identify key stakeholders, refine plans, deduplicate work, and coordinate execution. Really that&#8217;s just a bunch of business speak for letting people know what&#8217;s going on and getting feedback.</p><p>One of these processes used at both Google and Microsoft (the two places I&#8217;ve worked) is document-driven design. This means writing a plan in a document, tagging reviews and approvers, and going through a feedback cycle and making changes as needed. It&#8217;s a great process for getting more eyes on a plan and informing others of the work you&#8217;re doing. It can also be great at delaying execution of the project by weeks or even months.</p><p>If every project requires a document and every document requires multiple reviewers, you can imagine that a considerable amount of engineering time is spent reviewing docs and giving feedback. Combining that with multiple iterations of document reviews and projects (especially those with more ambiguity) can end up in a sort of document purgatory where progress is stunted as stakeholders try to find alignment.</p><p>Sometimes this can go on for so long that you could have built the system multiple times in the amount of time the project takes to gain approval. This is especially humorous because part of the reason for document-driven design is to ensure time is well-spent and man hours aren&#8217;t wasted (i.e. the work is important enough to warrant time spent on it).</p><p>Having been stuck in this situation, I asked a more senior engineer how to avoid it and he told me to &#8220;just build the thing.&#8221; There are many times where he&#8217;s been getting approval for a project while actively prototyping it on the side and making adjustments in real-time based on feedback. In fact, every Googler has an &#8220;experimental&#8221; directory in google3 specifically for prototyping away from production code.</p><p>I bring this up because a major difference between an agentic and non-agentic engineer is agentic engineers aren&#8217;t stopped by processes. This doesn&#8217;t mean they don&#8217;t participate in them&#8212;they just don&#8217;t let the processes stop them from building.</p><p>It&#8217;s really easy to get caught up in these processes because they&#8217;re a huge part of an engineer&#8217;s job. It&#8217;s fundamental for company success to encourage employee agency by making it easy for them to build software whenever they want to. Any company that inhibits their engineers&#8217; abilities to build software is not a company you want to work for.</p><div><hr></div><p>These are just a few things I&#8217;ve learned over the course of my time as a software engineer. Let me know what&#8217;s helpful and what isn&#8217;t, and let me know what you think is fundamental for someone to be an &#8216;agentic engineer&#8217; by leaving a comment.</p><p>I end my articles with a few resources to help you become a better engineer and some other interesting things you should know about. If you&#8217;re interested in getting these in your inbox each week don&#8217;t forget to subscribe.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.aiforswes.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://www.aiforswes.com/subscribe?"><span>Subscribe now</span></a></p><p>If you&#8217;ve found Society&#8217;s Backend beneficial, you can also become a paid subscriber <a href="https://societysbackend.com/subscribe?coupon=388e7f3f&amp;utm_content=163361308">for just $3/mo</a> to support me and get even more articles and resources.</p><p>Enjoy the resources!</p><h2>To help you become a better engineer</h2><p><a href="https://arxiv.org/abs/2503.16419">A Survey of AI Agent Protocols</a>: A survey centered around how AI agents communicate with tools and data sources. A great read on a space I feel has been <a href="https://societysbackend.com/p/3-14-25">dominated by MCP</a> without much thought for other options.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jsUm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F238edd2f-ddab-4f16-8d11-8141197aa701_1396x818.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jsUm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F238edd2f-ddab-4f16-8d11-8141197aa701_1396x818.png 424w, https://substackcdn.com/image/fetch/$s_!jsUm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F238edd2f-ddab-4f16-8d11-8141197aa701_1396x818.png 848w, https://substackcdn.com/image/fetch/$s_!jsUm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F238edd2f-ddab-4f16-8d11-8141197aa701_1396x818.png 1272w, https://substackcdn.com/image/fetch/$s_!jsUm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F238edd2f-ddab-4f16-8d11-8141197aa701_1396x818.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jsUm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F238edd2f-ddab-4f16-8d11-8141197aa701_1396x818.png" width="532" height="311.730659025788" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/238edd2f-ddab-4f16-8d11-8141197aa701_1396x818.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:818,&quot;width&quot;:1396,&quot;resizeWidth&quot;:532,&quot;bytes&quot;:222763,&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://societysbackend.com/i/163361308?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F238edd2f-ddab-4f16-8d11-8141197aa701_1396x818.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_!jsUm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F238edd2f-ddab-4f16-8d11-8141197aa701_1396x818.png 424w, https://substackcdn.com/image/fetch/$s_!jsUm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F238edd2f-ddab-4f16-8d11-8141197aa701_1396x818.png 848w, https://substackcdn.com/image/fetch/$s_!jsUm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F238edd2f-ddab-4f16-8d11-8141197aa701_1396x818.png 1272w, https://substackcdn.com/image/fetch/$s_!jsUm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F238edd2f-ddab-4f16-8d11-8141197aa701_1396x818.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><a href="https://www.seangoedecke.com/getting-things-done/">Getting things "done" in large tech companies</a>: Another commentary on what it takes and (more importantly) what it means to get things done at large tech companies.</p><div class="embedded-post-wrap" data-attrs="{&quot;id&quot;:163228409,&quot;url&quot;:&quot;https://artificialintelligencemadesimple.substack.com/p/the-ai-infrastructure-phase-has-begun&quot;,&quot;publication_id&quot;:1315074,&quot;publication_name&quot;:&quot;Artificial Intelligence Made Simple&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77504fa0-0f08-4a38-bbde-becb151d2db8_643x644.png&quot;,&quot;title&quot;:&quot;The AI Infrastructure Phase Has Begun&quot;,&quot;truncated_body_text&quot;:&quot;Every month, the Chocolate Milk Cult reaches over a million Builders, Startup Founders, Investors, Policy Makers, Leaders, and more. If you&#8217;d like to meet other members of our community, please fill out this contact form here (I will never sell your data nor will I make intros w/o your explicit permission&quot;,&quot;date&quot;:&quot;2025-05-11T00:23:25.257Z&quot;,&quot;like_count&quot;:22,&quot;comment_count&quot;:2,&quot;bylines&quot;:[{&quot;id&quot;:8101724,&quot;name&quot;:&quot;Devansh&quot;,&quot;handle&quot;:&quot;chocolatemilkcultleader&quot;,&quot;previous_name&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ff955b89-d08e-4cb7-8add-709e6dc14d8e_1080x1080.jpeg&quot;,&quot;bio&quot;:&quot;The best meme-maker in Tech. Writer on AI, Software, and the Tech Industry. Currently in NYC Come say hi, I want more friends. &quot;,&quot;profile_set_up_at&quot;:&quot;2021-08-21T20:28:53.612Z&quot;,&quot;reader_installed_at&quot;:&quot;2024-03-11T12:27:10.271Z&quot;,&quot;publicationUsers&quot;:[{&quot;id&quot;:1274217,&quot;user_id&quot;:8101724,&quot;publication_id&quot;:1315074,&quot;role&quot;:&quot;admin&quot;,&quot;public&quot;:true,&quot;is_primary&quot;:true,&quot;publication&quot;:{&quot;id&quot;:1315074,&quot;name&quot;:&quot;Artificial Intelligence Made Simple&quot;,&quot;subdomain&quot;:&quot;artificialintelligencemadesimple&quot;,&quot;custom_domain&quot;:null,&quot;custom_domain_optional&quot;:false,&quot;hero_text&quot;:&quot;Covering the important ideas in AI from all angles- technical, social, and economic. Read in over 180 countries.  Useful to everyone who wants to learn AI. Critical to anyone trying to see what happens next. Sister Publication to Tech Made Simple&quot;,&quot;logo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/77504fa0-0f08-4a38-bbde-becb151d2db8_643x644.png&quot;,&quot;author_id&quot;:8101724,&quot;primary_user_id&quot;:8101724,&quot;theme_var_background_pop&quot;:&quot;#009B50&quot;,&quot;created_at&quot;:&quot;2023-01-14T23:37:24.692Z&quot;,&quot;email_from_name&quot;:null,&quot;copyright&quot;:&quot;Devansh&quot;,&quot;founding_plan_name&quot;:&quot;Founding Member&quot;,&quot;community_enabled&quot;:true,&quot;invite_only&quot;:false,&quot;payments_state&quot;:&quot;enabled&quot;,&quot;language&quot;:null,&quot;explicit&quot;:false,&quot;homepage_type&quot;:&quot;magaziney&quot;,&quot;is_personal_mode&quot;:false}},{&quot;id&quot;:109622,&quot;user_id&quot;:8101724,&quot;publication_id&quot;:108704,&quot;role&quot;:&quot;admin&quot;,&quot;public&quot;:true,&quot;is_primary&quot;:false,&quot;publication&quot;:{&quot;id&quot;:108704,&quot;name&quot;:&quot;Technology Made Simple&quot;,&quot;subdomain&quot;:&quot;codinginterviewsmadesimple&quot;,&quot;custom_domain&quot;:null,&quot;custom_domain_optional&quot;:false,&quot;hero_text&quot;:&quot;Deep yet digestible insights about Computer Science, Programming Interviews, Software Engineering Careers, Machine Learning, and the Tech Industry for Tech Leaders. Amazing For Coders and Managers. Beneficial to anyone trying to make money in Tech. &quot;,&quot;logo_url&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/8546dc69-af46-4d5d-9a80-b66cb76c833b_644x644.png&quot;,&quot;author_id&quot;:8101724,&quot;primary_user_id&quot;:null,&quot;theme_var_background_pop&quot;:&quot;#45D800&quot;,&quot;created_at&quot;:&quot;2020-10-07T10:47:41.199Z&quot;,&quot;email_from_name&quot;:&quot;Devansh from Tech Made Simple&quot;,&quot;copyright&quot;:&quot;Devansh&quot;,&quot;founding_plan_name&quot;:&quot;Founding Member&quot;,&quot;community_enabled&quot;:true,&quot;invite_only&quot;:false,&quot;payments_state&quot;:&quot;disabled&quot;,&quot;language&quot;:null,&quot;explicit&quot;:false,&quot;homepage_type&quot;:&quot;magaziney&quot;,&quot;is_personal_mode&quot;:false}}],&quot;twitter_screen_name&quot;:&quot;Machine01776819&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100}],&quot;utm_campaign&quot;:null,&quot;belowTheFold&quot;:true,&quot;type&quot;:&quot;newsletter&quot;,&quot;language&quot;:&quot;en&quot;,&quot;source&quot;:null}" data-component-name="EmbeddedPostToDOM"><a class="embedded-post" native="true" href="https://artificialintelligencemadesimple.substack.com/p/the-ai-infrastructure-phase-has-begun?utm_source=substack&amp;utm_campaign=post_embed&amp;utm_medium=web"><div class="embedded-post-header"><img class="embedded-post-publication-logo" src="https://substackcdn.com/image/fetch/$s_!Pfon!,w_56,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77504fa0-0f08-4a38-bbde-becb151d2db8_643x644.png" loading="lazy"><span class="embedded-post-publication-name">Artificial Intelligence Made Simple</span></div><div class="embedded-post-title-wrapper"><div class="embedded-post-title">The AI Infrastructure Phase Has Begun</div></div><div class="embedded-post-body">Every month, the Chocolate Milk Cult reaches over a million Builders, Startup Founders, Investors, Policy Makers, Leaders, and more. If you&#8217;d like to meet other members of our community, please fill out this contact form here (I will never sell your data nor will I make intros w/o your explicit permission&#8230;</div><div class="embedded-post-cta-wrapper"><span class="embedded-post-cta">Read more</span></div><div class="embedded-post-meta">a year ago &#183; 22 likes &#183; 2 comments &#183; Devansh</div></a></div><p><a href="https://huggingface.co/docs/peft/main/en/developer_guides/quantization">Quantization by Hugging Face</a>: Quantization represents data with fewer bits, making it a useful technique for reducing memory-usage and accelerating inference especially when it comes to large language models (LLMs). This is a guide on quantizing a model to 4-bits and training it with LoRA.</p><h2>Other interesting things</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tS5q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd66257e2-5873-44b6-a57f-2154d19e8ebb_1368x748.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tS5q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd66257e2-5873-44b6-a57f-2154d19e8ebb_1368x748.png 424w, https://substackcdn.com/image/fetch/$s_!tS5q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd66257e2-5873-44b6-a57f-2154d19e8ebb_1368x748.png 848w, https://substackcdn.com/image/fetch/$s_!tS5q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd66257e2-5873-44b6-a57f-2154d19e8ebb_1368x748.png 1272w, https://substackcdn.com/image/fetch/$s_!tS5q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd66257e2-5873-44b6-a57f-2154d19e8ebb_1368x748.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tS5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd66257e2-5873-44b6-a57f-2154d19e8ebb_1368x748.png" width="540" height="295.2631578947368" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d66257e2-5873-44b6-a57f-2154d19e8ebb_1368x748.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:748,&quot;width&quot;:1368,&quot;resizeWidth&quot;:540,&quot;bytes&quot;:207002,&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://societysbackend.com/i/163361308?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd66257e2-5873-44b6-a57f-2154d19e8ebb_1368x748.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_!tS5q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd66257e2-5873-44b6-a57f-2154d19e8ebb_1368x748.png 424w, https://substackcdn.com/image/fetch/$s_!tS5q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd66257e2-5873-44b6-a57f-2154d19e8ebb_1368x748.png 848w, https://substackcdn.com/image/fetch/$s_!tS5q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd66257e2-5873-44b6-a57f-2154d19e8ebb_1368x748.png 1272w, https://substackcdn.com/image/fetch/$s_!tS5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd66257e2-5873-44b6-a57f-2154d19e8ebb_1368x748.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>A <a href="https://x.com/elonmusk/status/1921467596810915939?s=12">post by Elon</a> to essentially crowdsource difficult questions for Grok. As anyone working with machine learning knows, data cleanliness is incredibly important for proper model performance. I&#8217;m not sure how xAI intends to use this info, but I could see low-quality data be a major issue with this approach.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zbDP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f4e199b-2005-45f3-be75-8e6f48a4b887_1376x466.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zbDP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f4e199b-2005-45f3-be75-8e6f48a4b887_1376x466.png 424w, https://substackcdn.com/image/fetch/$s_!zbDP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f4e199b-2005-45f3-be75-8e6f48a4b887_1376x466.png 848w, https://substackcdn.com/image/fetch/$s_!zbDP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f4e199b-2005-45f3-be75-8e6f48a4b887_1376x466.png 1272w, https://substackcdn.com/image/fetch/$s_!zbDP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f4e199b-2005-45f3-be75-8e6f48a4b887_1376x466.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zbDP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f4e199b-2005-45f3-be75-8e6f48a4b887_1376x466.png" width="556" height="188.29651162790697" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f4e199b-2005-45f3-be75-8e6f48a4b887_1376x466.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:466,&quot;width&quot;:1376,&quot;resizeWidth&quot;:556,&quot;bytes&quot;:158984,&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://societysbackend.com/i/163361308?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f4e199b-2005-45f3-be75-8e6f48a4b887_1376x466.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_!zbDP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f4e199b-2005-45f3-be75-8e6f48a4b887_1376x466.png 424w, https://substackcdn.com/image/fetch/$s_!zbDP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f4e199b-2005-45f3-be75-8e6f48a4b887_1376x466.png 848w, https://substackcdn.com/image/fetch/$s_!zbDP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f4e199b-2005-45f3-be75-8e6f48a4b887_1376x466.png 1272w, https://substackcdn.com/image/fetch/$s_!zbDP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f4e199b-2005-45f3-be75-8e6f48a4b887_1376x466.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>A different, <a href="https://x.com/fchollet/status/1921338462570979348?s=12">more useful approach to using difficult questions with LLMs</a>. This is something I&#8217;ve done before as well but I imagine Francois Chollet&#8217;s difficult questions are probably more difficult than mine.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xNxL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d056d97-cfe6-411a-b2ea-e4f235f0992a_1200x1156.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xNxL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d056d97-cfe6-411a-b2ea-e4f235f0992a_1200x1156.jpeg 424w, https://substackcdn.com/image/fetch/$s_!xNxL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d056d97-cfe6-411a-b2ea-e4f235f0992a_1200x1156.jpeg 848w, https://substackcdn.com/image/fetch/$s_!xNxL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d056d97-cfe6-411a-b2ea-e4f235f0992a_1200x1156.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!xNxL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d056d97-cfe6-411a-b2ea-e4f235f0992a_1200x1156.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xNxL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d056d97-cfe6-411a-b2ea-e4f235f0992a_1200x1156.jpeg" width="535" height="515.3833333333333" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2d056d97-cfe6-411a-b2ea-e4f235f0992a_1200x1156.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1156,&quot;width&quot;:1200,&quot;resizeWidth&quot;:535,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Image&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Image" title="Image" srcset="https://substackcdn.com/image/fetch/$s_!xNxL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d056d97-cfe6-411a-b2ea-e4f235f0992a_1200x1156.jpeg 424w, https://substackcdn.com/image/fetch/$s_!xNxL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d056d97-cfe6-411a-b2ea-e4f235f0992a_1200x1156.jpeg 848w, https://substackcdn.com/image/fetch/$s_!xNxL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d056d97-cfe6-411a-b2ea-e4f235f0992a_1200x1156.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!xNxL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d056d97-cfe6-411a-b2ea-e4f235f0992a_1200x1156.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></figure></div><p>Klarna has backed off from their &#8220;only hiring AI&#8221; approach very quickly. I said this was a bad idea when they announced this approach so <a href="https://x.com/loganthorneloe/status/1921265641601802661?s=12">I can&#8217;t say I was surprised</a> to see they had reverted their decision so soon.</p><div class="comment" data-attrs="{&quot;url&quot;:&quot;https://open.substack.com/home&quot;,&quot;commentId&quot;:115990867,&quot;comment&quot;:{&quot;id&quot;:115990867,&quot;date&quot;:&quot;2025-05-10T08:46:01.982Z&quot;,&quot;edited_at&quot;:null,&quot;body&quot;:&quot;Want to learn CPU architecture through playing a game? Turing Complete is just what you need!&quot;,&quot;body_json&quot;:{&quot;type&quot;:&quot;doc&quot;,&quot;attrs&quot;:{&quot;schemaVersion&quot;:&quot;v1&quot;},&quot;content&quot;:[{&quot;type&quot;:&quot;paragraph&quot;,&quot;content&quot;:[{&quot;type&quot;:&quot;text&quot;,&quot;text&quot;:&quot;Want to learn CPU architecture through playing a game? Turing Complete is just what you need!&quot;}]}]},&quot;restacks&quot;:5,&quot;reaction_count&quot;:20,&quot;attachments&quot;:[{&quot;id&quot;:&quot;d6ef6980-7c63-4adc-8772-18f9871d00ec&quot;,&quot;type&quot;:&quot;image&quot;,&quot;imageUrl&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9b669d93-d6f0-400e-9918-6962247e6415_1920x1080.jpeg&quot;,&quot;imageWidth&quot;:1920,&quot;imageHeight&quot;:1080,&quot;explicit&quot;:false},{&quot;id&quot;:&quot;d275c3b1-84ed-4015-8ae0-0938f7b3c359&quot;,&quot;type&quot;:&quot;image&quot;,&quot;imageUrl&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ee6123e0-e4f9-43c4-a6e2-65340a743a9e_1920x1080.jpeg&quot;,&quot;imageWidth&quot;:1920,&quot;imageHeight&quot;:1080,&quot;explicit&quot;:false},{&quot;id&quot;:&quot;e51165e8-5a29-42f2-b372-4ce805d1b5cb&quot;,&quot;type&quot;:&quot;link&quot;,&quot;linkMetadata&quot;:{&quot;url&quot;:&quot;https://store.steampowered.com/app/1444480/Turing_Complete/&quot;,&quot;host&quot;:&quot;store.steampowered.com&quot;,&quot;title&quot;:&quot;Turing Complete on Steam&quot;,&quot;description&quot;:&quot;Learn CPU architecture with puzzles&quot;,&quot;image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b3d4d2cf-e8ca-42da-92a8-ee5c75b8821a_616x353.jpeg&quot;,&quot;original_image&quot;:&quot;https://shared.fastly.steamstatic.com/store_item_assets/steam/apps/1444480/capsule_616x353.jpg?t=1740369335&quot;},&quot;explicit&quot;:false}],&quot;name&quot;:&quot;Babbage&quot;,&quot;user_id&quot;:102722254,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F82525b9c-ee3c-4996-916c-54267a4d354b_416x416.png&quot;,&quot;user_bestseller_tier&quot;:100},&quot;source&quot;:null,&quot;forumChannel&quot;:null}" data-component-name="CommentPlaceholder"></div><p>An interesting Note from <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Babbage&quot;,&quot;id&quot;:102722254,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F82525b9c-ee3c-4996-916c-54267a4d354b_416x416.png&quot;,&quot;uuid&quot;:&quot;3d7878ea-8f16-4ecb-90b0-131c917cedbd&quot;}" data-component-name="MentionToDOM"></span> right here on Substack. Learn about CPU architecture by playing a game! Who wouldn&#8217;t think this is awesome?</p><p>I&#8217;m glad to see more interesting technology and AI content on the Notes feed. It&#8217;s got huge potential but it&#8217;s too dominated by writing content and meaningless platitudes.</p><div><hr></div><p>That&#8217;s all for this week! I&#8217;ll send a roundup at the end of the month with a more comprehensive overview of AI for the May. Make sure to subscribe so you don&#8217;t miss it!</p><p><strong>Thanks for reading!</strong></p><p><em><strong>Always be (machine) learning,</strong></em></p><p><em><strong>Logan</strong></em></p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>Partner at any large tech company is VERY difficult to get to. Usually they have a limited number of employees that are allowed to be Partner at any given time so someone actually has to leave for someone else to be promoted.</p></div></div>]]></content:encoded></item><item><title><![CDATA[Why You Should Never Let AI Debug for You]]></title><description><![CDATA[And 3 ways you should be using AI to code]]></description><link>https://www.aiforswes.com/p/why-you-should-never-let-ai-debug</link><guid isPermaLink="false">https://www.aiforswes.com/p/why-you-should-never-let-ai-debug</guid><dc:creator><![CDATA[Logan Thorneloe]]></dc:creator><pubDate>Wed, 05 Mar 2025 22:01:50 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!zgVS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff09722c2-fb02-43d4-8b79-696e3925ccf8_500x500.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>If you&#8217;re interested in machine learning engineering, don&#8217;t forget to <a href="https://societysbackend.com/susbcribe">subscribe</a> to get articles like these in your inbox each week. My goal is to help 10,000 software engineers learn ML by the end of this year. You can also find me on <a href="https://x.com/loganthorneloe">X</a>, <a href="https://linkedin.com/in/loganthorneloe">LinkedIn</a>, and <a href="https://youtube.com/@loganthorneloe">YouTube</a> for more content like this. Enjoy!</em></p><div><hr></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zgVS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff09722c2-fb02-43d4-8b79-696e3925ccf8_500x500.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zgVS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff09722c2-fb02-43d4-8b79-696e3925ccf8_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!zgVS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff09722c2-fb02-43d4-8b79-696e3925ccf8_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!zgVS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff09722c2-fb02-43d4-8b79-696e3925ccf8_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!zgVS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff09722c2-fb02-43d4-8b79-696e3925ccf8_500x500.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zgVS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff09722c2-fb02-43d4-8b79-696e3925ccf8_500x500.jpeg" width="500" height="500" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09722c2-fb02-43d4-8b79-696e3925ccf8_500x500.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:500,&quot;width&quot;:500,&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_!zgVS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff09722c2-fb02-43d4-8b79-696e3925ccf8_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!zgVS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff09722c2-fb02-43d4-8b79-696e3925ccf8_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!zgVS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff09722c2-fb02-43d4-8b79-696e3925ccf8_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!zgVS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff09722c2-fb02-43d4-8b79-696e3925ccf8_500x500.jpeg 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><p>This <a href="https://societysbackend.com/p/02-28-25">past week</a> saw the release of many different coding models and tools. These releases brought up an interesting conversation that is more important than ever for software engineers to pay attention to.</p><p>The first party in this conversation I like to call Team &#8220;Software Engineers are Cooked&#8221;. They&#8217;ve been around and going strong for about three years now. Every time a new model comes out, demos pop up on social media showing what the model is capable of and how it can replace software engineers.</p><p>The second party was definitely the minority, but much louder than usual last week. This is Team &#8220;Don&#8217;t ruin your skills by coding with AI.&#8221; This team has popped up primarily in opposition to the above team. There is a strong voice not to let engineering skills atrophy by outsourcing engineering work to AI.</p><p>This situation is nuanced, of course. The counterargument to the first group is that only the successful demos tend to go viral. The failures of these models tend to be shared less. However, the failures are much more interesting when evaluating model viability for complex projects.</p><p>The counterargument to the second is that coding with AI has already proven to provide enormous productivity gains when done correctly. However, we&#8217;re now at the point where we can see the long-term negative impact from incorrect use. We&#8217;re also realizing that the magnitude of these negatives can be <em>immense</em>.</p><p>As someone who has coded with AI quite a bit at work (Google has been doing it since before it was cool) and on my personal projects, I want to provide a bit of important context about coding with AI. This article will go over the importance of <strong>never letting AI debug for you</strong> and mention three applications for which you <em>should</em> let AI code for you.</p><p>And, yes, this is another article similar to others you might find online about &#8220;How to code with AI.&#8221; The important distinction between this article and those is that those articles are about making your<strong> code better</strong> using AI. This article is about coding with AI in a way that will make <strong>you better</strong>.</p><h2>Tedium: The secret sauce of software engineering</h2><p>The first tasks to get automated with AI are anything tedious. Humans hate working on things that are time consuming, progress slowly, and can be monotonous. No one likes wasting time and no one wants to feel like they&#8217;re struggling on something that should be an easy task.</p><p>Software engineering is a field rife with tedium. Debugging, writing documentation, creating tests, code reviews, refactoring code, etc. are all tasks that can feel incredibly tedious, yet they&#8217;re essential to the job. It actually takes a great deal of effort as a software engineer not to get stuck in a rut when doing these tasks for hours on end.</p><p>Since software engineers are most familiar with new technology and software engineers deal with many tedious tasks, it makes sense for us to try and automate these tasks with AI. This is why we see so many posts online about software engineering being replaced by AI when in reality many more jobs would take the hit before we do. It&#8217;s because we&#8217;re so close to the technology and apply it to what we&#8217;re working on.</p><p><strong>Replacing all tedious software engineering tasks with AI is a problem.</strong> Just because a task is <em>tedious</em> doesn&#8217;t mean it&#8217;s <em>bad</em>. In software engineering, the tedious tasks are often the ones we learn the most from. The tedium can be a struggle, but it&#8217;s the effort required on these tasks that helps us improve.</p><p>Just think about the hardest bug you&#8217;ve ever had to troubleshoot. In my experience, the difficult bugs require me to get very technical and <em>really</em> understanding what&#8217;s going on. I usually come out of these debugging sessions with a better understanding of the system as a whole and a greater knowledge of the specific topics that contributed to the error. I&#8217;ve found this knowledge to almost always be applicable to a later project.</p><p>If I had told AI, &#8220;Here&#8217;s my error message. Take a look at my code and fix it.&#8221; I never would have had that experience and I never would have learned. That&#8217;s a big issue in software engineering. Just like being a doctor or lawyer, continued education is paramount. The field moves quickly and if you aren&#8217;t constantly learning, you&#8217;ll fall behind.</p><p>I&#8217;m very specific about using debugging as an example. It seems to be the task engineers are most excited about automating. It&#8217;s also the task that&#8217;s most beneficial for an engineer to do themselves. <strong>You should never let AI debug for you.</strong> Automating this task has major long-term ramifications on <em>you </em>and your capabilities. This doesn&#8217;t mean you should never use AI to debug. Instead of letting it debug for you, you should let it debug <em>with</em> you (more on this below).</p><p>There are three applications where I&#8217;ve found it particularly helpful to have AI code for me:</p><ol><li><p>Vibe coding</p></li><li><p>Working on particular tasks</p></li><li><p>Planning and understanding</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_!kZQ9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b219454-2ae0-4d6b-9001-968c2bcfab5e_647x560.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kZQ9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b219454-2ae0-4d6b-9001-968c2bcfab5e_647x560.png 424w, https://substackcdn.com/image/fetch/$s_!kZQ9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b219454-2ae0-4d6b-9001-968c2bcfab5e_647x560.png 848w, https://substackcdn.com/image/fetch/$s_!kZQ9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b219454-2ae0-4d6b-9001-968c2bcfab5e_647x560.png 1272w, https://substackcdn.com/image/fetch/$s_!kZQ9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b219454-2ae0-4d6b-9001-968c2bcfab5e_647x560.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kZQ9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b219454-2ae0-4d6b-9001-968c2bcfab5e_647x560.png" width="647" height="560" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7b219454-2ae0-4d6b-9001-968c2bcfab5e_647x560.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:560,&quot;width&quot;:647,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:144601,&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://societysbackend.com/i/158473470?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b219454-2ae0-4d6b-9001-968c2bcfab5e_647x560.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_!kZQ9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b219454-2ae0-4d6b-9001-968c2bcfab5e_647x560.png 424w, https://substackcdn.com/image/fetch/$s_!kZQ9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b219454-2ae0-4d6b-9001-968c2bcfab5e_647x560.png 848w, https://substackcdn.com/image/fetch/$s_!kZQ9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b219454-2ae0-4d6b-9001-968c2bcfab5e_647x560.png 1272w, https://substackcdn.com/image/fetch/$s_!kZQ9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b219454-2ae0-4d6b-9001-968c2bcfab5e_647x560.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><h2>Vibe coding</h2><p>Vibe coding is a <a href="https://x.com/karpathy/status/1886192184808149383">term coined by Andrej Karpathy on X</a> that is essentially giving AI a list of system requirements and letting it take over from there. Engineers take a more hands-off approach to let the AI &#8220;do its thing&#8221;.</p><p>Vibe coding has really made waves for one specific reason: It allows people with next to zero programming knowledge to build their own applications. This is huge, there&#8217;s no doubt about it, but there&#8217;s also a very real value for those who do know how to code too.</p><p>First, vibe coding is great for prototyping. Now that AI can build things from the ground up, it can be a great tool for saying, &#8220;This is what I&#8217;m thinking of building, let me know what you come up with&#8221; and sitting back to see what it does. Waiting on a prompt generally takes a few minutes and can end with a working prototype. That speed is invaluable.</p><p>Second, vibe coding can grow a project beyond what you had anticipated. Giving the AI a bit more freedom allows it to write code uninhibited. Without strict requirements, it can be more creative. It&#8217;s great for coming up with alternate ways of satisfying the original requirements.</p><p>Vibe coding shines when the AI is given less requirements. Vibe coding fails when you try to adhere to a specific vision or requirements for a project. It can be very difficult to exactly match those specifications via prompting.</p><p>Stricter requirements are more common in industry and that&#8217;s why vibe coding works well on standalone projects but isn&#8217;t as successful when making changes to a complex and large codebase. It&#8217;s very difficult to non-specifically prompt a model to make a change while both ensuring the change is correct and it doesn&#8217;t have unintended side effects.</p><h2>Working on particular tasks</h2><p>While vibe coding doesn&#8217;t work for particular tasks, AI can still be used for those tasks. It just requires the engineer to have more knowledge of the code themselves. A prompt to do this would be something like: &#8220;I need X function to handle this case. I also need the tests adjusted to check for X.&#8221;</p><p>The more specific the prompt (and task) is, the better chance the AI will be able to succeed at the task without breaking functionality elsewhere in the code. Vibe coding doesn&#8217;t work in this case because it&#8217;s difficult to make a specific enough prompt without knowing the codebase.</p><p>You might ask: Why use AI for a change like this when I can do it myself?</p><p>First: speed. Just because the task is specific and the engineer knows what change needs to be made to the code doesn&#8217;t mean actually making the change itself is fast. This depends on many factors but codebase health is a big one. I&#8217;ve seen many simple changes require many lines of refactoring and additions in unhealthy codebases.</p><p>Second: AI is much better at avoiding &#8220;human errors&#8221;. Some examples of these are forgetting some references or not adjusting some tests when committing a change. These are things an engineer likely knows needs to be done but misses them for some reason or another.</p><p>A great example of a particular task that can be made much easier with AI is the task we discussed earlier: debugging. If you know what your error code is, where in the code you&#8217;re looking, and what you need that code to do, you can prompt a model to help you with it. Using prompting specific to the actual code (i.e. &#8220;this function needs&#8230;&#8221; and not just &#8220;do this&#8221;) will help you work through a problem while understanding what caused it.</p><h2>Planning and understanding</h2><p>AI is an excellent tool for learning while coding because you can learn in the context of the project you&#8217;re working on. Anyone can learn about system design, technical topics, etc. by asking an LLM or looking online, but learning these topics becomes more valuable (and easier) when you&#8217;re learning them in the context of the project you&#8217;re working on.</p><p>I use AI to help me plan and understand the systems I&#8217;m trying to build before I dig into them. I found it an excellent tool for planning projects, clarifying system goals, and understanding the optimal way for putting a system together. Again, you don&#8217;t want the AI to do these things<em> for you</em>. You want the AI to do them<em> with you</em>.</p><p>I&#8217;ve found this to work best when I reason <em>with</em> the model. I start my conversation with a long prompt with a lot of context and my reasoning behind the decisions I&#8217;ve already made and tradeoffs I&#8217;ve already considered. The prompt generally takes this form: &#8220;I want to make X change. I&#8217;m thinking about doing it X way because of X&#8230;&#8221; and runs for at least a paragraph.</p><p>I&#8217;ve found this prompt particularly helpful for a few reasons:</p><ol><li><p><strong>It provides complete context of what I&#8217;m trying to learn to the model</strong>. You can also provide this context with back and forth prompting, but I&#8217;ve found it less effective. Models tend to focus more on what has been said more recently and forget the context provided further back.</p></li><li><p><strong>The model will explain correct and incorrect assumptions in detail.</strong> By prompting the model with the explanations it tends to reply in kind. This is exactly what I need when I&#8217;m trying to learn.</p></li><li><p><strong>The model doesn&#8217;t give into my questions and suggestions nearly as easily</strong>. Most language models are trained to be agreeable. That&#8217;s particularly bad when coding with them because they tend to rate a user&#8217;s questions/suggestions highly when considering correctness. So when I ask, &#8220;Shouldn&#8217;t we do this?&#8221; the model will automatically agree that we should even if I&#8217;m wrong. The above prompt has helped mitigate this significantly.</p></li><li><p><strong>The model avoids spinning its wheels.</strong> By adding explanations to the prompt, I&#8217;ve found models to spin their wheels less. I&#8217;ve gotten into situations where a model goes back and forth between two incorrect responses multiple times. Explanations and proper context seem to help with this.</p></li></ol><p>It&#8217;s invaluable to have a learning tool directly integrated with your code and I greatly recommend using it, just make sure to take care to use it to learn and <em>not</em> to do things for you.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jWjz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F562c651e-2fbd-4d31-9cd7-24fa8aa29c8d_1498x596.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jWjz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F562c651e-2fbd-4d31-9cd7-24fa8aa29c8d_1498x596.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jWjz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F562c651e-2fbd-4d31-9cd7-24fa8aa29c8d_1498x596.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jWjz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F562c651e-2fbd-4d31-9cd7-24fa8aa29c8d_1498x596.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jWjz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F562c651e-2fbd-4d31-9cd7-24fa8aa29c8d_1498x596.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jWjz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F562c651e-2fbd-4d31-9cd7-24fa8aa29c8d_1498x596.jpeg" width="1456" height="579" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/562c651e-2fbd-4d31-9cd7-24fa8aa29c8d_1498x596.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:579,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Image&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Image" title="Image" srcset="https://substackcdn.com/image/fetch/$s_!jWjz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F562c651e-2fbd-4d31-9cd7-24fa8aa29c8d_1498x596.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jWjz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F562c651e-2fbd-4d31-9cd7-24fa8aa29c8d_1498x596.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jWjz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F562c651e-2fbd-4d31-9cd7-24fa8aa29c8d_1498x596.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jWjz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F562c651e-2fbd-4d31-9cd7-24fa8aa29c8d_1498x596.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></figure></div><h2>A few more tips</h2><p>Here are just a few more tips for coding with AI that aren&#8217;t directly related to maximizing your long-term potential, but I still think are worth mentioning:</p><ul><li><p>Make small changes. Just like commits, have AI make small changes and frequently accept them.</p></li><li><p>Make sure to review your AI-generated changes. This should be obvious, but it&#8217;s worth mentioning.</p></li><li><p>Use Git especially if you&#8217;re new to programming and you&#8217;re vibe coding. Don&#8217;t <a href="https://x.com/catalinmpit/status/1891947359510331876">end up like this</a>.</p></li><li><p>Ignore hype and test models yourself. The random people online aren&#8217;t going to know which model is best for your use case.</p></li><li><p>Pay attention to model output, not just code changes. The model will output the code and also the &#8220;why&#8221; behind it. The &#8220;why&#8221; is more important than the change itself.</p></li></ul><h2>Important Takeaways</h2><p>The first important takeaway from this article is <strong>tedium isn&#8217;t always bad</strong>. In software engineering it&#8217;s the tedious tasks that help us grow as engineers. This is especially true about debugging. <strong>However unpleasant it is, don&#8217;t let AI debug </strong><em><strong>for</strong></em><strong> you. Let AI do it </strong><em><strong>with</strong></em><strong> you.</strong></p><p>A follow-on to this is to <strong>never replace your learning experiences with AI</strong>. Identify the things you&#8217;re doing that help you learn and make sure you continue those actions. Replace unhelpful tasks with AI instead. I see this pitfall a lot in writing. People try to replace their writing with AI when the act of writing is the learning experience.</p><p>Third, these <strong>lessons are most important to be intentional about now more than ever</strong> because of where AI is at. We&#8217;re seeing the long-term effects of coding with AI causing engineering skills to atrophy and the negative impact that has on a person (and their work) long-term.</p><p>AI has become performant enough at coding to do some important tasks entirely for us. However, AI isn&#8217;t good enough to solve everything for you. If you lose your skill set due to <br>AI, you&#8217;ll be in a very bad position when you reach a problem AI can&#8217;t solve for you.</p><p>Essentially, we&#8217;re seeing AI coding become good enough to be helpful, but still bad enough to be even more detrimental if used incorrectly. I urge you to be cognizant about how you&#8217;re using AI to code. If you&#8217;re using it correctly, you&#8217;ll surpass what you were previously capable of. If you use it incorrectly, you&#8217;ll fall far<em> </em>behind.</p><p>Let me know how you&#8217;re intentional about your AI use in general in the comments. I&#8217;m always up for learning new tips and tricks.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.aiforswes.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://www.aiforswes.com/subscribe?"><span>Subscribe now</span></a></p>]]></content:encoded></item></channel></rss>