<?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>Forem: Pronnoy Goswami</title>
    <description>The latest articles on Forem by Pronnoy Goswami (@pronnoygoswami).</description>
    <link>https://forem.com/pronnoygoswami</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%2F738924%2Fc0b935d9-dbee-4ef7-bbe8-17bb39120053.jpg</url>
      <title>Forem: Pronnoy Goswami</title>
      <link>https://forem.com/pronnoygoswami</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/pronnoygoswami"/>
    <language>en</language>
    <item>
      <title>✍️ 📄 𝐖𝐫𝐢𝐭𝐢𝐧𝐠 𝐃𝐞𝐬𝐢𝐠𝐧 𝐃𝐨𝐜𝐬 𝐓𝐡𝐚𝐭 𝐃𝐨𝐧’𝐭 𝐒𝐮𝐜𝐤 (𝐀𝐧𝐝 𝐖𝐡𝐲 𝐈𝐭’𝐬 𝐚 𝐒𝐮𝐩𝐞𝐫𝐩𝐨𝐰𝐞𝐫 𝐟𝐨𝐫 𝐄𝐧𝐠𝐢𝐧𝐞𝐞𝐫𝐬) What separates 𝘨𝘰𝘰𝘥 engineers from 𝘨𝘳𝘦𝘢𝘵 ones? Give it a read!</title>
      <dc:creator>Pronnoy Goswami</dc:creator>
      <pubDate>Thu, 01 May 2025 22:04:48 +0000</pubDate>
      <link>https://forem.com/pronnoygoswami/-what-m1a</link>
      <guid>https://forem.com/pronnoygoswami/-what-m1a</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/pronnoygoswami/writing-design-docs-that-dont-suck-and-why-its-a-superpower-for-engineers-1gk8" class="crayons-story__hidden-navigation-link"&gt;✍️ Writing Design Docs That Don’t Suck (And Why It’s a Superpower for Engineers)&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/pronnoygoswami" class="crayons-avatar  crayons-avatar--l  "&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%2Fuser%2Fprofile_image%2F738924%2Fc0b935d9-dbee-4ef7-bbe8-17bb39120053.jpg" alt="pronnoygoswami profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/pronnoygoswami" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Pronnoy Goswami
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Pronnoy Goswami
                
              
              &lt;div id="story-author-preview-content-2450970" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/pronnoygoswami" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&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%2Fuser%2Fprofile_image%2F738924%2Fc0b935d9-dbee-4ef7-bbe8-17bb39120053.jpg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Pronnoy Goswami&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/pronnoygoswami/writing-design-docs-that-dont-suck-and-why-its-a-superpower-for-engineers-1gk8" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;May 1 '25&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/pronnoygoswami/writing-design-docs-that-dont-suck-and-why-its-a-superpower-for-engineers-1gk8" id="article-link-2450970"&gt;
          ✍️ Writing Design Docs That Don’t Suck (And Why It’s a Superpower for Engineers)
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/systemdesign"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;systemdesign&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/softwareengineering"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;softwareengineering&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/career"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;career&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/bigtech"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;bigtech&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/pronnoygoswami/writing-design-docs-that-dont-suck-and-why-its-a-superpower-for-engineers-1gk8" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;1&lt;span class="hidden s:inline"&gt; reaction&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/pronnoygoswami/writing-design-docs-that-dont-suck-and-why-its-a-superpower-for-engineers-1gk8#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


              &lt;span class="hidden s:inline"&gt;Add Comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            4 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
      <category>systemdesign</category>
      <category>softwareengineering</category>
      <category>career</category>
      <category>bigtech</category>
    </item>
    <item>
      <title>✍️ Writing Design Docs That Don’t Suck (And Why It’s a Superpower for Engineers)</title>
      <dc:creator>Pronnoy Goswami</dc:creator>
      <pubDate>Thu, 01 May 2025 21:00:00 +0000</pubDate>
      <link>https://forem.com/pronnoygoswami/writing-design-docs-that-dont-suck-and-why-its-a-superpower-for-engineers-1gk8</link>
      <guid>https://forem.com/pronnoygoswami/writing-design-docs-that-dont-suck-and-why-its-a-superpower-for-engineers-1gk8</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;“If you can’t explain it simply, you don’t understand it well enough.”  — Albert Einstein&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;When systems break, people usually point to a bug in the code. But more often than not? The real bug was upstream — in how the idea was communicated.&lt;/p&gt;

&lt;p&gt;As engineers, we spend years mastering code but very little time mastering the craft of explaining our ideas. That gap can make the difference between launching with clarity or drowning in confusion.&lt;/p&gt;

&lt;p&gt;The truth is: &lt;strong&gt;clear writing is clear thinking&lt;/strong&gt;. And nowhere is this more visible than in a design doc.&lt;/p&gt;

&lt;p&gt;If you want to drive real impact as a software engineer — especially at senior levels — writing great design docs isn’t just a nice-to-have. It’s a superpower!&lt;/p&gt;

&lt;p&gt;Because whether you’re building a new service, proposing architectural changes, or aligning across teams, your design doc becomes the &lt;strong&gt;source of truth&lt;/strong&gt;, the &lt;strong&gt;collaboration artifact&lt;/strong&gt;, and the &lt;strong&gt;technical memory&lt;/strong&gt; of your system.&lt;/p&gt;




&lt;h2&gt;
  
  
  🙅‍♂️ Don’t Write Design Docs Just for the Sake of It
&lt;/h2&gt;

&lt;p&gt;This is one of the biggest traps.&lt;/p&gt;

&lt;p&gt;A design doc isn’t a status symbol. It’s a thinking tool. A collaboration vehicle. And sometimes, it’s the right one.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Write a design doc when:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You’re making architectural decisions with trade-offs.&lt;/li&gt;
&lt;li&gt;You need to bring alignment across functions or teams.&lt;/li&gt;
&lt;li&gt;You’re capturing context for future contributors.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you’re just updating configs, don’t hold back shipping waiting for a 5-pager.&lt;/p&gt;

&lt;p&gt;And when you &lt;em&gt;do&lt;/em&gt; write a doc, anchor it around these &lt;strong&gt;three questions&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Why&lt;/strong&gt; are we doing this? What’s the motivation?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;What&lt;/strong&gt; are we building or changing?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;So what?&lt;/strong&gt; Why should your leadership or anyone care?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If you can’t answer these, you’re not ready to write — or you’re solving the wrong problem.&lt;/p&gt;




&lt;h2&gt;
  
  
  ⚙️ Don’t Over-Bake the First Version
&lt;/h2&gt;

&lt;p&gt;Your first draft isn’t your north star. It’s your rough cut — your MVP.&lt;/p&gt;

&lt;p&gt;Share early. Let feedback shape the details. It’s like code:&lt;br&gt;
If you hold on too long, you get attached. And when feedback inevitably comes, you resist it.&lt;/p&gt;

&lt;p&gt;Start lean. Let it evolve. And &lt;strong&gt;time-box the writing process&lt;/strong&gt; ⏱️.&lt;/p&gt;

&lt;p&gt;Design docs, like engineering itself, hit a point of diminishing returns. Chasing the “perfect solution” is tempting, but it can delay execution.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Clarity &amp;gt; cleverness.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🧠 A Personal Lesson — When My Doc Missed the Mark
&lt;/h2&gt;

&lt;p&gt;Early in my career, I once spent days crafting a long, polished design doc. I covered every corner case, drew all the diagrams, and hit 14 pages before I hit “Send.” 📩&lt;/p&gt;

&lt;p&gt;Then, in the very first review:&lt;br&gt;
&lt;strong&gt;“Wait, that upstream system was deprecated last quarter.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Turns out, I had built a house on a demolished foundation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What did I learn?&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Don’t write in isolation. Don’t gold-plate.
&lt;/li&gt;
&lt;li&gt;Validate early, write lean, and evolve collaboratively.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔄 The Lifecycle of a Design Doc (Done Right)
&lt;/h2&gt;

&lt;p&gt;Here’s a flow that’s helped me:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Identify the why&lt;/strong&gt; – Align, clarify, or document design.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sketch headlines&lt;/strong&gt; – Start with bullets and big questions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Get early feedback&lt;/strong&gt; – Share with tech leads or partners.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Iterate collaboratively&lt;/strong&gt; – Comments are a gift, not a threat.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Drive review meeting&lt;/strong&gt; – Focus on open questions, not reading the doc line by line.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Launch, learn, and update&lt;/strong&gt; – Docs age fast. Keep them alive. (at least minimally)&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  🦴 Anatomy of a Good Design Doc
&lt;/h2&gt;

&lt;p&gt;Follow this simple structure to keep things crisp and clear:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Objective&lt;/strong&gt;: What is this doc solving?&lt;/li&gt;
&lt;li&gt;**Goals/Non-Goals: What’s in scope? What’s out?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Background&lt;/strong&gt;: Context, history, links to prior docs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Requirements &amp;amp; Constraints&lt;/strong&gt;: Functional and non-functional.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Overview&lt;/strong&gt;: High-level component breakdown with a diagram.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Detailed Design&lt;/strong&gt;: Trade-offs, component flows, API surface (lightweight).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Design Decisions&lt;/strong&gt;: Questions, options, pros/cons, chosen path.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Appendix&lt;/strong&gt;: Non-critical details, alt ideas, migration notes.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;✅ Bullet points &amp;gt; paragraphs&lt;br&gt;&lt;br&gt;
✅ Diagrams &amp;gt; walls of text&lt;br&gt;&lt;br&gt;
✅ Clarity &amp;gt; cleverness&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;One important note: &lt;strong&gt;Don’t go too deep into implementation details.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
You’re not writing a README or code walkthrough. Avoid dumping full APIs or code blocks unless absolutely necessary.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  😬 How Not to Write One (Mistakes I’ve Made Too)
&lt;/h2&gt;

&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%2Frtabjo5gj25g636u0bix.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%2Frtabjo5gj25g636u0bix.jpg" alt="Side-by-side illustration comparing a badly written, scribbled design doc with a clean, well-structured design doc" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Writing for everyone (from VP to intern) → outcome: rambling.&lt;/li&gt;
&lt;li&gt;Worrying it was “too short” → so I padded it. Waste of time.&lt;/li&gt;
&lt;li&gt;Dumping code snippets → design ≠ implementation.&lt;/li&gt;
&lt;li&gt;Paragraph soup 🍜 → just bullet it.&lt;/li&gt;
&lt;li&gt;Ignoring feedback → reviewers are helping you succeed.&lt;/li&gt;
&lt;li&gt;Getting defensive → good docs welcome being challenged.&lt;/li&gt;
&lt;li&gt;Not editing → writing is rewriting.&lt;/li&gt;
&lt;li&gt;No practice → like code, writing improves with reps.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ✨ Final Thoughts
&lt;/h2&gt;

&lt;p&gt;A design doc isn’t just a document. It’s a &lt;strong&gt;decision amplifier&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;It sharpens your thinking, aligns your team, and creates technical clarity that lasts long after the code is shipped.&lt;/p&gt;

&lt;p&gt;But here’s the thing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You don’t need a 10-page masterpiece. &lt;/li&gt;
&lt;li&gt;You need just enough structure to spark the right conversations, surface trade-offs, and guide execution.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Use design docs intentionally.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;👉 Write when there’s complexity to untangle.&lt;br&gt;
🚫 Skip when it’s just a config change.&lt;br&gt;
🎯 Focus on clarity, not perfection.&lt;/p&gt;

&lt;p&gt;Because good engineers write code. &lt;strong&gt;Great engineers write things that outlive the code.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🔗 More Like This?
&lt;/h2&gt;

&lt;p&gt;If you found this helpful:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;📰 Subscribe to my &lt;a href="https://www.linkedin.com/newsletters/distributed-bytes-with-pronnoy-7279272484409909250/" rel="noopener noreferrer"&gt;LinkedIn Newsletter&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;🤝 Follow me on &lt;a href="https://www.linkedin.com/in/pronnoygoswami/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; for more deep dives on systems, engineering craft, and lessons from the field.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;#DesignDocs&lt;/code&gt; &lt;code&gt;#SoftwareEngineering&lt;/code&gt; &lt;code&gt;#TechWriting&lt;/code&gt; &lt;code&gt;#SystemDesign&lt;/code&gt; &lt;code&gt;#DeveloperExcellence&lt;/code&gt; &lt;code&gt;#Career&lt;/code&gt; &lt;code&gt;#Layoffs&lt;/code&gt; &lt;code&gt;#TechnicalLeadership&lt;/code&gt; &lt;code&gt;#EngineeringCulture&lt;/code&gt; &lt;code&gt;#BackendEngineering&lt;/code&gt; &lt;code&gt;#ProductEngineering&lt;/code&gt; &lt;code&gt;#MLOps&lt;/code&gt; &lt;code&gt;#ScalingSystems&lt;/code&gt; &lt;code&gt;#EngineeringWisdom&lt;/code&gt; &lt;code&gt;#DistributedBytes&lt;/code&gt; &lt;code&gt;#WDAYLife&lt;/code&gt; &lt;code&gt;#AWS&lt;/code&gt; &lt;code&gt;#Microsoft&lt;/code&gt; &lt;code&gt;#Google&lt;/code&gt; &lt;code&gt;#BigTech&lt;/code&gt;&lt;/p&gt;

</description>
      <category>systemdesign</category>
      <category>softwareengineering</category>
      <category>career</category>
      <category>bigtech</category>
    </item>
  </channel>
</rss>
