<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Leo Yang</title>
    <description>The latest articles on DEV Community by Leo Yang (@leo_ai_builds).</description>
    <link>https://dev.to/leo_ai_builds</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3979785%2F240e9d06-858d-4753-8318-756ee337f23d.png</url>
      <title>DEV Community: Leo Yang</title>
      <link>https://dev.to/leo_ai_builds</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/leo_ai_builds"/>
    <language>en</language>
    <item>
      <title>A Practical Guide to Claude Code for Backend Engineers</title>
      <dc:creator>Leo Yang</dc:creator>
      <pubDate>Thu, 11 Jun 2026 16:33:18 +0000</pubDate>
      <link>https://dev.to/leo_ai_builds/a-practical-guide-to-claude-code-for-backend-engineers-a75</link>
      <guid>https://dev.to/leo_ai_builds/a-practical-guide-to-claude-code-for-backend-engineers-a75</guid>
      <description>&lt;p&gt;Claude Code has become my default for backend work that involves more than a single file. Here is the workflow I settled on after a few false starts.&lt;/p&gt;

&lt;h2&gt;
  
  
  The setup that matters
&lt;/h2&gt;

&lt;p&gt;Two things made a real difference for me:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A clean &lt;code&gt;AGENTS.md&lt;/code&gt; that lists the project conventions, the test command, and the things it must never touch.&lt;/li&gt;
&lt;li&gt;A &lt;code&gt;Makefile&lt;/code&gt; target that runs the full check, not just the unit tests, so the model sees failures it can react to.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The shape of a good task
&lt;/h2&gt;

&lt;p&gt;I try to write every prompt as a small story: what I want, why I want it, and how I will know it works. Something like:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Add a &lt;code&gt;POST /v1/sessions/:id/cancel&lt;/code&gt; endpoint. It should be idempotent, return 204 on success and 404 if the session does not exist. Add tests for both paths and make sure the existing webhook tests still pass.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The more concrete the success criteria, the less I have to argue with it later.&lt;/p&gt;

&lt;h2&gt;
  
  
  When I do not use it
&lt;/h2&gt;

&lt;p&gt;Anything that touches money, auth tokens, or production data does not get pasted in. The risk is not worth the time saved.&lt;/p&gt;

&lt;p&gt;Happy to compare notes if you have a different setup that works for your team.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>productivity</category>
      <category>tooling</category>
    </item>
    <item>
      <title>How I Use Codex CLI to Ship AI Features Without Losing My Mind</title>
      <dc:creator>Leo Yang</dc:creator>
      <pubDate>Thu, 11 Jun 2026 16:32:44 +0000</pubDate>
      <link>https://dev.to/leo_ai_builds/how-i-use-codex-cli-to-ship-ai-features-without-losing-my-mind-hio</link>
      <guid>https://dev.to/leo_ai_builds/how-i-use-codex-cli-to-ship-ai-features-without-losing-my-mind-hio</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fchnb4yfig03vulx4tkex.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fchnb4yfig03vulx4tkex.jpg" alt="Codex CLI in action: terminal showing a multi-file edit session" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I have been using Codex CLI as my daily driver for AI-assisted coding for a few months now, and I keep coming back to a handful of patterns that made my work faster and less error-prone. This post is a short, opinionated tour of the workflow that finally clicked for me.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why another AI coding tool?
&lt;/h2&gt;

&lt;p&gt;I bounced off several chat-only assistants because they forget context the moment I switch files. Codex CLI runs in the same terminal where my project lives, so it can actually read what I am looking at, run tests, and propose diffs I can review line by line.&lt;/p&gt;

&lt;h2&gt;
  
  
  The three commands I actually use
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;code&gt;codex "explain this function in plain English"&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;codex --edit&lt;/code&gt; to let the model propose and apply small refactors&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;codex --plan&lt;/code&gt; when I want a written plan before any code changes&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Lessons from the trenches
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Always commit before letting it edit. It is rare, but it does occasionally nuke something.&lt;/li&gt;
&lt;li&gt;Treat the first response as a draft, not an answer. I almost always ask for a second pass.&lt;/li&gt;
&lt;li&gt;Keep the change scope tiny. The smaller the diff, the better the review.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What is next
&lt;/h2&gt;

&lt;p&gt;I am still figuring out how to use it well for non-code tasks like writing tests, reviewing PRs, and triaging issues. If you have a workflow that works for you, I would love to hear it in the comments.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>productivity</category>
      <category>beginners</category>
      <category>tooling</category>
    </item>
    <item>
      <title>Probe Tags</title>
      <dc:creator>Leo Yang</dc:creator>
      <pubDate>Thu, 11 Jun 2026 16:07:39 +0000</pubDate>
      <link>https://dev.to/leo_ai_builds/probe-tags-nfe</link>
      <guid>https://dev.to/leo_ai_builds/probe-tags-nfe</guid>
      <description>&lt;h2&gt;
  
  
  body
&lt;/h2&gt;

&lt;p&gt;text&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Probe Title</title>
      <dc:creator>Leo Yang</dc:creator>
      <pubDate>Thu, 11 Jun 2026 16:07:06 +0000</pubDate>
      <link>https://dev.to/leo_ai_builds/probe-title-37j8</link>
      <guid>https://dev.to/leo_ai_builds/probe-title-37j8</guid>
      <description>&lt;h2&gt;
  
  
  Hello body
&lt;/h2&gt;

&lt;p&gt;This is the body.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
