<?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: Darshit Gajjar</title>
    <description>The latest articles on DEV Community by Darshit Gajjar (@gajjardarshithasmukhbhai).</description>
    <link>https://dev.to/gajjardarshithasmukhbhai</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%2F158540%2F7cd2b230-2730-40a7-bb34-cef33184741d.jpg</url>
      <title>DEV Community: Darshit Gajjar</title>
      <link>https://dev.to/gajjardarshithasmukhbhai</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/gajjardarshithasmukhbhai"/>
    <language>en</language>
    <item>
      <title>I built DrawDesign to make system architecture easier to explain</title>
      <dc:creator>Darshit Gajjar</dc:creator>
      <pubDate>Mon, 05 Oct 2026 10:56:48 +0000</pubDate>
      <link>https://dev.to/gajjardarshithasmukhbhai/i-built-drawdesign-to-make-system-architecture-easier-to-explain-4846</link>
      <guid>https://dev.to/gajjardarshithasmukhbhai/i-built-drawdesign-to-make-system-architecture-easier-to-explain-4846</guid>
      <description>&lt;p&gt;A system design diagram can contain all the right boxes and still leave the reader wondering what actually happens.&lt;/p&gt;

&lt;p&gt;Where does a request start? What does each arrow mean? Which part of the design needs a discussion?&lt;/p&gt;

&lt;p&gt;I'm Darshit, the creator of &lt;strong&gt;&lt;a href="https://draw-designs.com/?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=drawdesign_intro" rel="noopener noreferrer"&gt;DrawDesign&lt;/a&gt;&lt;/strong&gt;, a browser-based tool for system architecture diagrams and flowcharts. In this post, I'll introduce the tool and share a small exercise you can use to make your next diagram easier to explain.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is DrawDesign?
&lt;/h2&gt;

&lt;p&gt;DrawDesign provides a canvas with shapes for the components developers often need to describe: servers, databases, load balancers, caches, message queues, API gateways, containers, and Kubernetes.&lt;/p&gt;

&lt;p&gt;The shape library also covers networking and security, data and analytics, monitoring, and DevOps. The editor includes templates and an AI Assistant.&lt;/p&gt;

&lt;p&gt;The use cases I want to support are straightforward:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sketching an architecture before implementing it.&lt;/li&gt;
&lt;li&gt;Explaining a request flow to another developer.&lt;/li&gt;
&lt;li&gt;Practising system design discussions.&lt;/li&gt;
&lt;li&gt;Turning a rough workflow into a diagram people can review.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But choosing a diagramming tool is only one part of the work. The more useful question is: &lt;strong&gt;what should the diagram communicate?&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  A small exercise: explain one request
&lt;/h2&gt;

&lt;p&gt;Imagine you're sketching a product catalogue API. Resist the temptation to draw every service the application might eventually need. Start with one question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;How does a user request product details?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  1. Draw only the participants in that path
&lt;/h3&gt;

&lt;p&gt;Begin with a client, an API, and a database. Give them specific names: “Web client,” “Product API,” and “Product database” communicate more than three identical boxes labelled “service.”&lt;/p&gt;

&lt;p&gt;Keep the scope visible in a note: “Product detail reads.” Someone looking at this diagram should not have to guess whether it also covers checkout, inventory updates, or payment processing.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Label the arrows
&lt;/h3&gt;

&lt;p&gt;An arrow tells the reader that two components interact. Its label tells them why.&lt;/p&gt;

&lt;p&gt;For this exercise, use labels such as:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Connection&lt;/th&gt;
&lt;th&gt;Example label&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Client to API&lt;/td&gt;
&lt;td&gt;Request product details&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;API to database&lt;/td&gt;
&lt;td&gt;Look up product by ID&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;API to client&lt;/td&gt;
&lt;td&gt;Return product details or an error&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;You don't need to put every implementation detail on the canvas. Include the information someone needs to follow the story.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Add a cache as a design question
&lt;/h3&gt;

&lt;p&gt;Now add a cache shape. Before drawing more arrows, write down the decisions you need to make:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What data would go into it?&lt;/li&gt;
&lt;li&gt;How would the system handle a missing entry?&lt;/li&gt;
&lt;li&gt;How would updated product data become visible?&lt;/li&gt;
&lt;li&gt;What should happen if the cache is unavailable?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These questions are more valuable than adding a cache icon just because it appears in other architecture diagrams. The drawing should expose decisions that still need an answer.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Make uncertainty visible
&lt;/h3&gt;

&lt;p&gt;Use notes to distinguish an agreed decision from an assumption. For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Open question: how fresh must product descriptions be?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Or:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Scope: this diagram describes reads only; inventory updates are a separate flow.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This keeps a clean-looking diagram from implying that every tradeoff has already been settled.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Ask another developer to narrate it
&lt;/h3&gt;

&lt;p&gt;Show someone the diagram without explaining it first. Ask them where a request starts, what happens next, and which failure case deserves attention.&lt;/p&gt;

&lt;p&gt;If their interpretation differs from yours, that is useful feedback. Rename a component, label a connection, or split an overloaded diagram into smaller views.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where DrawDesign fits
&lt;/h2&gt;

&lt;p&gt;This is the kind of exercise I'd like people to try in DrawDesign. Pick the components you need, sketch the flow, and use the result as the starting point for a discussion.&lt;/p&gt;

&lt;p&gt;The infrastructure shapes help express the components in that story. Templates and the AI Assistant are additional starting points, but the architecture still needs your reasoning: requirements, assumptions, and tradeoffs should remain explicit.&lt;/p&gt;

&lt;p&gt;I don't want feedback to stop at “the UI looks good.” The most useful feedback is specific:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Which component was difficult to find?&lt;/li&gt;
&lt;li&gt;Which editing step interrupted your explanation?&lt;/li&gt;
&lt;li&gt;What would make the diagram easier to use in a design review?&lt;/li&gt;
&lt;li&gt;Which template would you actually reuse?&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try it with a real problem
&lt;/h2&gt;

&lt;p&gt;Open DrawDesign using the link above and sketch one flow from a project you understand. Keep it small enough that another developer can follow it without a guided tour.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is your biggest frustration with system design diagramming tools?&lt;/strong&gt; Share a concrete example in the comments—I'd like that feedback to shape what I improve next.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>architecture</category>
      <category>showdev</category>
      <category>productivity</category>
    </item>
    <item>
      <title>EBS key important Features that every DevOps Developer Need to know</title>
      <dc:creator>Darshit Gajjar</dc:creator>
      <pubDate>Sun, 23 Oct 2022 17:38:03 +0000</pubDate>
      <link>https://dev.to/gajjardarshithasmukhbhai/ebs-key-important-features-that-every-devops-developer-need-to-know-32p0</link>
      <guid>https://dev.to/gajjardarshithasmukhbhai/ebs-key-important-features-that-every-devops-developer-need-to-know-32p0</guid>
      <description>&lt;p&gt;&lt;strong&gt;EBS Snapshot Archive&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;EBS Snapshot Archive is somthing, you have not taken data very frequently manner
ex. you will taken data on monthly or yearly&lt;/li&gt;
&lt;li&gt;it will goes on the 24 to 72 hours for restoring the Archive (Clear fancy word of Archive : Archive is something either Data/Files that you can Access them Again in the Future)&lt;/li&gt;
&lt;li&gt;Mover a Snapshot to an "Archive tier" that is 75% cheaper&lt;/li&gt;
&lt;li&gt;In EBS Snapshot it lower you're storage Cost as compare to EBS tier.&lt;/li&gt;
&lt;li&gt;In EBS you have to pay money as you get the data from it&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Recyle Bin for EBS Snapshot&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Setup Rules to retain deleted snapshots so you can recover them after an Accidental deletion&lt;/li&gt;
&lt;li&gt;where retention is 1 day to 1 year&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Fast Snapshot Restore(FSR)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Basically this Functionality used as Diaster, lets' you have to created the snapshot AZ Region.In unfortuanitely any natural/human made diaster occur so in that situation, you will easily recover that snapshot within few minutes&lt;/li&gt;
&lt;li&gt;when you're snapshot is so-much Big and you want to intialized fully w/o latency so this is so much helpful but you'have to spend much &lt;strong&gt;$$$&lt;/strong&gt; for that.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thanks for Reading the Content!!&lt;/p&gt;

</description>
      <category>aws</category>
      <category>ebs</category>
      <category>ebsnapshot</category>
    </item>
    <item>
      <title>Better Utilization Of EBS Snapshot for Multiple EC2 Instances ?</title>
      <dc:creator>Darshit Gajjar</dc:creator>
      <pubDate>Sun, 16 Oct 2022 18:39:30 +0000</pubDate>
      <link>https://dev.to/gajjardarshithasmukhbhai/better-utilization-of-ebs-snapshot-for-multiple-ec2-instances--39mi</link>
      <guid>https://dev.to/gajjardarshithasmukhbhai/better-utilization-of-ebs-snapshot-for-multiple-ec2-instances--39mi</guid>
      <description>&lt;ul&gt;
&lt;li&gt;EBS is something Like External Hard-Drive or SSD, that is used to handle External Data things.&lt;/li&gt;
&lt;li&gt;Most Coolest Thing is we can Attach Multiple EBS to a single Instance that is seated in the same Availability Zone &lt;/li&gt;
&lt;li&gt;But the main point is how to Architecturized the Efficient EBS so Anyone Use Very Efficiently in Various Instances without Duplication of Volume&lt;/li&gt;
&lt;li&gt;I Attached the Efficient SC of EBS Architecture.
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvbv0okgqwz4mxbfnzgc0.png" alt="Image description" width="800" height="407"&gt;
&lt;/li&gt;
&lt;li&gt;In Above Image First I created the 10 GB of Snapshot, then After I Architecture the Memory that will be changed and Not Changed.&lt;/li&gt;
&lt;li&gt;In Not Changed Memory Referenced with the Memory Snap A, Then After I make Difficult Model. In that Model, I Add an Extra 2 GB of Memory.&lt;/li&gt;
&lt;li&gt;In that Memory, I Attached two reference Snap respectively 6 GB and 4 GB, and Boom..............!&lt;/li&gt;
&lt;li&gt;I successfully Architecturized those memories without repetition. so thing thing save customer cost.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>aws</category>
      <category>ebs</category>
      <category>ec2</category>
      <category>docker</category>
    </item>
    <item>
      <title>Insight About EBS in EC2</title>
      <dc:creator>Darshit Gajjar</dc:creator>
      <pubDate>Sun, 16 Oct 2022 12:01:06 +0000</pubDate>
      <link>https://dev.to/gajjardarshithasmukhbhai/insight-about-ebs-in-ec2-2bfk</link>
      <guid>https://dev.to/gajjardarshithasmukhbhai/insight-about-ebs-in-ec2-2bfk</guid>
      <description>&lt;p&gt;As Full Stack + Devops Engineer, We Need to Handle Different Types of EC2 Instances and Instance Volumes. so in this Article I attached my Practical App Experience &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;When We create the NEW AWS EC2 Instance. so Default EBS is created By default. Attach SC for Ref
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fogh6q1blbuln735e0osg.png" alt="Image description" width="800" height="480"&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;So As per Above EBS exist when AWS EC2 Instance &lt;code&gt;Not Terminated&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;We can Create multiple AWS EBS and Attach with one or Multiple EC2 Instance. If that All are in same &lt;code&gt;Availibility Zone&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In Industry We have Various Crtical Scenario where we need EBS Volume in Different Availibility Zone. For that We need to Create &lt;code&gt;EBS Snapshot&lt;/code&gt; for various Operation&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>aws</category>
      <category>ebs</category>
      <category>ec2</category>
    </item>
  </channel>
</rss>
