<?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: Thong Nguyen</title>
    <description>The latest articles on DEV Community by Thong Nguyen (@thong_nguyen_83f79b7c77db).</description>
    <link>https://dev.to/thong_nguyen_83f79b7c77db</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4226421%2Fd2a8c8f5-2136-458d-9cf4-064a08c208c9.jpg</url>
      <title>DEV Community: Thong Nguyen</title>
      <link>https://dev.to/thong_nguyen_83f79b7c77db</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/thong_nguyen_83f79b7c77db"/>
    <language>en</language>
    <item>
      <title>Developer portfolio examples that prove you can ship (not just code)</title>
      <dc:creator>Thong Nguyen</dc:creator>
      <pubDate>Wed, 04 Nov 2026 16:11:24 +0000</pubDate>
      <link>https://dev.to/thong_nguyen_83f79b7c77db/developer-portfolio-examples-that-prove-you-can-ship-not-just-code-1pnk</link>
      <guid>https://dev.to/thong_nguyen_83f79b7c77db/developer-portfolio-examples-that-prove-you-can-ship-not-just-code-1pnk</guid>
      <description>&lt;p&gt;Open ten developer portfolios and you'll see the same thing: a grid of screenshots, a "Tech stack" row of logos, and demo links that return 404 or a Heroku "application error". A reviewer has about a minute per candidate. If the first link is dead, they don't click the second.&lt;/p&gt;

&lt;p&gt;The fix isn't a prettier template. It's &lt;strong&gt;proof&lt;/strong&gt;. Below are five things that make a portfolio believable, each with a quick way to check it yourself.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Every project links to something that runs
&lt;/h2&gt;

&lt;p&gt;A screenshot shows that you once had a UI. A live link shows the thing still works. Before you share your portfolio, check every demo link from a terminal:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="k"&gt;for &lt;/span&gt;url &lt;span class="k"&gt;in &lt;/span&gt;https://app-one.example https://app-two.example&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="k"&gt;do
  &lt;/span&gt;&lt;span class="nb"&gt;printf&lt;/span&gt; &lt;span class="s2"&gt;"%s -&amp;gt; "&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$url&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; curl &lt;span class="nt"&gt;-s&lt;/span&gt; &lt;span class="nt"&gt;-o&lt;/span&gt; /dev/null &lt;span class="nt"&gt;-L&lt;/span&gt; &lt;span class="nt"&gt;-w&lt;/span&gt; &lt;span class="s2"&gt;"%{http_code}&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$url&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;span class="k"&gt;done&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Anything that isn't &lt;code&gt;200&lt;/code&gt; (or a redirect that ends in &lt;code&gt;200&lt;/code&gt;) either gets fixed or comes off the list. One dead link costs more trust than one missing project.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Prove the project is actually yours
&lt;/h2&gt;

&lt;p&gt;"I built this" is easy to type. Domain ownership is harder to fake. The same trick Google Search Console uses works for portfolios: put a token in a DNS TXT record (or a &lt;code&gt;&amp;lt;meta&amp;gt;&lt;/code&gt; tag) on the project's domain, and have something check it.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;dig +short TXT yourapp.com
&lt;span class="c"&gt;# "your-verification-token=..."&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you control the DNS or the HTML of the live site, that's a strong signal you're the one who shipped it.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Show it running, not just standing still
&lt;/h2&gt;

&lt;p&gt;Reviewers don't sign up for your app. Give them a 30–60 second screen recording (YouTube unlisted is fine) plus 3–5 screenshots of the screens that matter. Put the video first. Order the screenshots like a user journey: landing → core action → result.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Say what you built it with, honestly
&lt;/h2&gt;

&lt;p&gt;In 2026 a lot of side projects are built with AI tools like Cursor, Claude Code, Codex or Lovable. Hiding that doesn't help; reviewers can tell. Saying "built with Claude Code, I designed the data model and wrote the billing logic myself" tells them exactly what you're good at, and it makes your project findable by people browsing "apps built with X".&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Put it all behind one link
&lt;/h2&gt;

&lt;p&gt;Experience, skills and shipped products should live at one URL you can paste anywhere: resume, GitHub bio, job applications. Write the summary as 3–5 sentences (who you are, what you're strong at, what you're looking for), list experience as &lt;strong&gt;results with numbers&lt;/strong&gt;, and name skills the way job posts do (React, Node.js, AWS) so keyword filters match.&lt;/p&gt;

&lt;h2&gt;
  
  
  A checklist you can copy
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;[ ] Every demo link returns 200 today&lt;/li&gt;
&lt;li&gt;[ ] Ownership proven for at least your main project (DNS TXT or meta tag)&lt;/li&gt;
&lt;li&gt;[ ] One short demo video per project, video first&lt;/li&gt;
&lt;li&gt;[ ] Tools used are listed, including AI tools&lt;/li&gt;
&lt;li&gt;[ ] One URL holds summary, experience, skills and projects&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Where I'm going with this
&lt;/h2&gt;

&lt;p&gt;I got tired of doing these checks by hand, so I built &lt;strong&gt;&lt;a href="https://shipwall.dev" rel="noopener noreferrer"&gt;Shipwall&lt;/a&gt;&lt;/strong&gt;, a free developer portfolio where each project has to be live to be posted. It checks the link automatically, verifies ownership through a DNS TXT record or a meta tag, shows a YouTube demo plus up to 5 screenshots, and tags each app with the AI tool it was built with (&lt;a href="https://shipwall.dev/built-with/cursor" rel="noopener noreferrer"&gt;apps built with Cursor&lt;/a&gt;, &lt;a href="https://shipwall.dev/built-with/claude-code" rel="noopener noreferrer"&gt;Claude Code&lt;/a&gt;…). Your profile lives at &lt;code&gt;shipwall.dev/@you&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Even if you never use it, run the checklist above on your current portfolio. What's the first thing you check when you open someone's portfolio?&lt;/p&gt;

</description>
      <category>career</category>
      <category>portfolio</category>
      <category>webdev</category>
      <category>sideprojects</category>
    </item>
  </channel>
</rss>
