<?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[Javarevisited Newsletter]]></title><description><![CDATA[Master Java and System Design Interviews. Level up your Software Engineering career. Subscribe and get free copy of my book Grokking the Spring Boot Interview in your inbox]]></description><link>https://javarevisited.substack.com</link><image><url>https://substackcdn.com/image/fetch/$s_!WbL3!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb9abffb-bd2d-4fe4-a166-4f88de0a3cba_512x512.png</url><title>Javarevisited Newsletter</title><link>https://javarevisited.substack.com</link></image><generator>Substack</generator><lastBuildDate>Sat, 08 Aug 2026 13:37:56 GMT</lastBuildDate><atom:link href="https://javarevisited.substack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[javinpaul]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[javarevisited@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[javarevisited@substack.com]]></itunes:email><itunes:name><![CDATA[javinpaul]]></itunes:name></itunes:owner><itunes:author><![CDATA[javinpaul]]></itunes:author><googleplay:owner><![CDATA[javarevisited@substack.com]]></googleplay:owner><googleplay:email><![CDATA[javarevisited@substack.com]]></googleplay:email><googleplay:author><![CDATA[javinpaul]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[How Does SSO Work? Single Sign-On Explained Simply]]></title><description><![CDATA[Demystifying SSO: A Deep Dive into the Mechanics of Single Sign-On Authentication]]></description><link>https://javarevisited.substack.com/p/system-design-basics-single-sign</link><guid isPermaLink="false">https://javarevisited.substack.com/p/system-design-basics-single-sign</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Fri, 07 Aug 2026 15:40:13 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/O1cRJWYF-g4" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello guys, in today&#8217;s digital landscape, you will often find yourself interacting with multiple applications and services that require authentication. Since juggling multiple usernames and passwords can be cumbersome and time-consuming.</p><p>That&#8217;s where<strong> Single Sign-On (SSO) comes into play.</strong> SSO offers a streamlined and secure approach to authentication, allowing users to access multiple applications with a single set of credentials.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>For a developer, it&#8217;s important to know not just<strong> what is SSO but also how it works,</strong> and it&#8217;s also a popular interview question. </p><p>In my earlier article, I explained the <strong><a href="https://medium.com/javarevisited/difference-between-jwt-oauth-and-saml-for-authentication-and-authorization-in-web-apps-75b412754127">difference between JWT, SAML, and OAuth</a></strong> and In this article, we will delve into the workings of SSO, its benefits, and the underlying technologies that make it possible.</p><p>Now that, we know the basics, it&#8217;s time to deep dive and learn them in more detail so that you can answer any follow-up questions.</p><p>If you are preparing for System design interviews and want to learn System Design in-depth then you can also check out sites like <strong><a href="https://bit.ly/3P3eqMN">ByteByteGo</a></strong>,<a href="https://www.bugfree.ai/?via=javarevisited">Codemia.io</a>,  <strong><a href="https://bit.ly/3pMiO8g">Design Guru</a></strong>, <strong><a href="https://bit.ly/3cNF0vw">Exponent</a></strong>, <strong><a href="https://bit.ly/3Mnh6UR">Educative, </a><a href="https://www.bugfree.ai/?via=javarevisited">Bugfree.ai</a>, </strong>and <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2F">Udemy </a></strong>which have many great System design courses.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/pricing?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DEOF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18c2ecfa-23ed-460e-aa39-978f34786768_1008x661.png 424w, https://substackcdn.com/image/fetch/$s_!DEOF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18c2ecfa-23ed-460e-aa39-978f34786768_1008x661.png 848w, https://substackcdn.com/image/fetch/$s_!DEOF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18c2ecfa-23ed-460e-aa39-978f34786768_1008x661.png 1272w, https://substackcdn.com/image/fetch/$s_!DEOF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18c2ecfa-23ed-460e-aa39-978f34786768_1008x661.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DEOF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18c2ecfa-23ed-460e-aa39-978f34786768_1008x661.png" width="728" height="477.3888888888889" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18c2ecfa-23ed-460e-aa39-978f34786768_1008x661.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:661,&quot;width&quot;:1008,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;ByteByteGo New Design and 50% Discount (Launch SALE) : r/ByteByteGo&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bytebytego.com/pricing?fpr=javarevisited&quot;,&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="ByteByteGo New Design and 50% Discount (Launch SALE) : r/ByteByteGo" title="ByteByteGo New Design and 50% Discount (Launch SALE) : r/ByteByteGo" srcset="https://substackcdn.com/image/fetch/$s_!DEOF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18c2ecfa-23ed-460e-aa39-978f34786768_1008x661.png 424w, https://substackcdn.com/image/fetch/$s_!DEOF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18c2ecfa-23ed-460e-aa39-978f34786768_1008x661.png 848w, https://substackcdn.com/image/fetch/$s_!DEOF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18c2ecfa-23ed-460e-aa39-978f34786768_1008x661.png 1272w, https://substackcdn.com/image/fetch/$s_!DEOF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18c2ecfa-23ed-460e-aa39-978f34786768_1008x661.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 aria-hidden="true" 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><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><h1>What is Single Sign-On (SSO)?</h1><p>Single Sign-On, as the name suggests, enables users to authenticate once and gain access to multiple applications or systems without the need for re-authentication for each service.</p>
      <p>
          <a href="https://javarevisited.substack.com/p/system-design-basics-single-sign">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How Apache Kafka Actually Works (With Simple Diagrams)]]></title><description><![CDATA[How does Apache Kafka works? Why Apache Kafka so fast?]]></description><link>https://javarevisited.substack.com/p/system-design-basics-apache-kafka</link><guid isPermaLink="false">https://javarevisited.substack.com/p/system-design-basics-apache-kafka</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Wed, 05 Aug 2026 15:34:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!WRxs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b110b64-35fa-4ee3-ad0f-e4671c33a269_640x708.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p><strong>Preparing for Coding and System Design Interviews? <a href="https://bytebytego.com/pricing?fpr=javarevisited">Join ByteByteGo now</a> for a more structured preparation. They are also offering a huge <a href="https://bytebytego.com/pricing?fpr=javarevisited">50% discount</a> now on their lifetime plan.</strong></p></blockquote><p>Hello friends, today, I am going to talk about an interesting topic and an in-demand skill, Apache Kafka. I am old enough and worked for enough years to see through different messaging platform from TIBCO RV to JMS to MQ Services to ActiveMQ, <a href="https://javarevisited.substack.com/p/difference-between-kafka-rabbitmq">RabbitMQ</a> and now Apache Kafka.</p><p>In one of the recent interview I was asked about <strong>Why Apache Kafka works and why it is considered a fast messaging platform?</strong></p><p>Honestly speaking, I couldn&#8217;t answer that question in a convincing way so I researched and learn more about inner working of Kafka and I today, I am going to share that experience with you guys.</p><p>By the way, if you are preparing for System design interviews and want to learn System Design in depth then you can also checkout sites like <strong><a href="https://bit.ly/3P3eqMN">ByteByteGo</a></strong>, <a href="https://upwardandonwardinc.sjv.io/RG2Aka">InterviewKickStart</a>, <strong><a href="https://bit.ly/3pMiO8g">Design Guru</a></strong>, <strong><a href="https://bit.ly/3cNF0vw">Exponent</a></strong>, <strong><a href="https://bit.ly/3Mnh6UR">Educative</a></strong>, <strong><a href="https://codemia.io/?via=javarevisited">Codemia.io</a></strong>, <strong><a href="https://www.bugfree.ai/?via=javarevisited">Bugfree.ai</a></strong> and <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?p.campaignid=UDEAFFAI225">Udemy</a></strong> which have many great System design courses</p>
      <p>
          <a href="https://javarevisited.substack.com/p/system-design-basics-apache-kafka">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Master Java Polymorphism: Method Overloading vs Overriding Explained]]></title><description><![CDATA[Master Java Polymorphism: Method Overloading vs Overriding Explained]]></description><link>https://javarevisited.substack.com/p/overloading-vs-overriding-in-java</link><guid isPermaLink="false">https://javarevisited.substack.com/p/overloading-vs-overriding-in-java</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Sun, 02 Aug 2026 15:54:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!SPOe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd08897-166d-40e2-874d-075668225a75_1162x645.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Before we dive in, if you're preparing for Java interviews, you may also want to check out my books, <a href="https://gumroad.com/l/QqjGH">Grokking the Java Interview</a> and <a href="https://gumroad.com/l/hrUXKY">Grokking the Spring Boot Interview</a>. They cover hundreds of frequently asked interview questions, detailed explanations, interview tips, and practical examples to help you prepare with confidence. As a reader of this blog, you can use the coupon code </em><code>FRIENDS20</code><em> to get <strong>20% off</strong> your purchase. And, if you love kindle edition <a href="https://www.amazon.com/dp/B08V1NN4LW/?tag=javamysqlanta-20">check it here</a></em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://gumroad.com/l/QqjGH" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SPOe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd08897-166d-40e2-874d-075668225a75_1162x645.png 424w, https://substackcdn.com/image/fetch/$s_!SPOe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd08897-166d-40e2-874d-075668225a75_1162x645.png 848w, https://substackcdn.com/image/fetch/$s_!SPOe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd08897-166d-40e2-874d-075668225a75_1162x645.png 1272w, https://substackcdn.com/image/fetch/$s_!SPOe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd08897-166d-40e2-874d-075668225a75_1162x645.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SPOe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd08897-166d-40e2-874d-075668225a75_1162x645.png" width="1162" height="645" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2fd08897-166d-40e2-874d-075668225a75_1162x645.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:645,&quot;width&quot;:1162,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:178498,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://gumroad.com/l/QqjGH&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/209509557?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd08897-166d-40e2-874d-075668225a75_1162x645.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_!SPOe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd08897-166d-40e2-874d-075668225a75_1162x645.png 424w, https://substackcdn.com/image/fetch/$s_!SPOe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd08897-166d-40e2-874d-075668225a75_1162x645.png 848w, https://substackcdn.com/image/fetch/$s_!SPOe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd08897-166d-40e2-874d-075668225a75_1162x645.png 1272w, https://substackcdn.com/image/fetch/$s_!SPOe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd08897-166d-40e2-874d-075668225a75_1162x645.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 aria-hidden="true" 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><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></p><p>Hello guys, Method overloading and method overriding are two of the most fundamental concepts in Java, yet they are also among the most commonly confused topics for beginners. Both allow you to define methods with the same name, but they serve very different purposes and are resolved at different stages of program execution.</p><p>Simply put, <strong>method overloading</strong> lets you create multiple methods with the same name in the same class, provided they have different parameter lists. </p><p><strong>Method overriding</strong>, on the other hand, allows a subclass to provide its own implementation of a method already defined in its parent class. Together, these two features are powerful examples of <strong>polymorphism</strong>, one of the core principles of object-oriented programming.</p><p>The biggest difference between them is <strong>when Java decides which method to call</strong>. Overloaded methods are resolved <strong>at compile time</strong> using <strong>static binding</strong>, whereas overridden methods are resolved <strong>at runtime</strong> using <strong>dynamic binding</strong>. </p><p>This distinction has a significant impact on how Java applications behave and is a favorite topic in technical interviews.</p><p>There are also several important rules to remember. For example, <strong>private, static, and final methods cannot be overridden</strong>, although they can still be overloaded. Likewise, an overridden method must keep the <strong>same method signature</strong> as the parent method, while an overloaded method <strong>must have a different parameter list</strong>.</p><p>Because of their importance in object-oriented programming, understanding the differences between method overloading and method overriding is essential for every Java developer. It&#8217;s also one of the most frequently asked Java interview questions, appearing in interviews ranging from entry-level developer roles to senior Java positions.</p><p>In this article, we&#8217;ll compare <strong>method overloading vs. method overriding</strong> side by side, explain how each works with practical examples, and discuss the key differences, rules, and interview points you should know.</p><p>By the way, If you're serious about cracking Java interviews, I've put together two comprehensive guides&#8212;<em><strong><a href="https://gumroad.com/l/QqjGH">Grokking the Java Interview</a></strong></em> and <em><a href="https://gumroad.com/l/hrUXKY">Grokking the Spring Boot Interview</a></em>. These books include hundreds of real interview questions, in-depth explanations, coding tips, and common pitfalls to help you prepare for both beginner and experienced Java roles. As a special bonus for my readers, you can use the coupon code <code>FRIENDS20</code> to receive <strong>20% off</strong>.</p><p></p><h3>How Method Overloading Works in Java?</h3><p>Method overloading allows you to declare multiple methods with the <strong>same name</strong> in the <strong>same class</strong>, provided each method has a <strong>different parameter list</strong>.</p><p>Java distinguishes overloaded methods based on their <strong>method signature</strong>, which includes:</p><ul><li><p>Number of parameters</p></li><li><p>Parameter types</p></li><li><p>Order of parameters (when types differ)</p></li></ul><p>The <strong>return type is not part of the method signature</strong>, so simply changing the return type does <strong>not</strong> create an overloaded method.</p><p>Method overloading is resolved during <strong>compile time</strong>, also known as <strong>static binding</strong>.</p><p>One important point is that <strong>static, private, and final methods can all be overloaded</strong>, even though they cannot be overridden.<br><br>In our example of the Loan and PersonalLoan class, createLoan method is overloaded. Since you have two<code> crateLoan()</code> methods with one takes one argument lender while the other take two arguments both <span>lender</span> and <code>interestRate</code>. </p><p>Remember you can overload static methods in Java, you can also overload a private and final method in Java but you can not override them.<br><br></p><h3>How to Override a Method in Java?</h3><p>Method overriding allows a subclass to provide its own implementation of a method already defined in its parent class.</p><p>For a method to be overridden:</p><ul><li><p>The subclass must extend the parent class.</p></li><li><p>The method name and parameter list must remain the same.</p></li><li><p>The return type must be compatible (covariant return types are supported since Java 5).</p></li></ul><p>Unlike overloading, overriding is resolved <strong>at runtime</strong> using <strong>dynamic binding</strong>. This enables Java&#8217;s runtime polymorphism, where the actual object&#8212;not the reference type&#8212;determines which implementation is executed.</p><p>Methods declared as <strong>private, static, or final cannot be overridden.</strong></p><p>For example in our case when we call <code>personalLoan.toString()</code> method even though <code>personalLoan </code>object is of type <code>Loan</code> actual method called would be from <code>PersonalLoan </code>class because object referenced by <code>personalLoan </code>variable is of type <code>PersonalLoan()</code>.</p><p>This is a very useful technique to modify the behavior of a function in Java based on different implementations. <span>equals()</span>, <span>hashcode()</span> and <span>compareTo()</span> methods are classic example of overridden methods in Java.</p><p>By the way, as part of overriding best practice, always use @Override annotation, while overriding method from an abstract class or interface.</p><h3>Rules of Method Overriding in Java</h3><ul><li><p>Method signature must remain the same.</p></li><li><p>Return type must be the same or covariant.</p></li><li><p>Access level cannot be reduced.</p></li><li><p>Checked exceptions cannot be broader than the parent method.</p></li><li><p>Private, static and final methods cannot be overridden.</p></li><li><p>Always use the <strong>@Override</strong> annotation to let the compiler verify your implementation.<br></p></li></ul><h2>Difference between Method Overloading vs Overriding in Java</h2><p>Overloading vs Overriding in Java is one of the popular java interview questions at many companies and asked at different levels of programmers. Here are some important differences between overloading and overriding in Java. </p><p>Though It&#8217;s more important is to understand how to use both overloading and overriding, these difference are good from the interview perspective and gives some basic idea as well:<br><br>1) First and most important difference between method overloading and overriding is that In the case of method overloading in Java, the signature of the method changes while in the case of method overriding it remains the same.<br><br>2) Second major difference between method overloading vs overriding in Java is that You can overload the method in one class but overriding can only be done on the subclass.<br><br>3) You can not override <span>static</span>, <span>final,</span> and <span>private</span> methods in Java but you can overload static, final, or private methods in Java.<br><br>4) Overloaded method in Java is bonded by static binding and overridden methods are subject to the dynamic binding.<br><br>5) Private and final method can also be not overridden in Java.<br><br>By the way, you might have heard about &#8220;<strong>a picture is worth more than a thousand words&#8221;</strong> and this is made true by the following image. By looking at the pic you can clearly understand the difference between method overloading and overriding in Java.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!y84r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0850f1-2ec5-4461-81f1-b1be1089dfa5_1005x557.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!y84r!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0850f1-2ec5-4461-81f1-b1be1089dfa5_1005x557.png 424w, https://substackcdn.com/image/fetch/$s_!y84r!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0850f1-2ec5-4461-81f1-b1be1089dfa5_1005x557.png 848w, https://substackcdn.com/image/fetch/$s_!y84r!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0850f1-2ec5-4461-81f1-b1be1089dfa5_1005x557.png 1272w, https://substackcdn.com/image/fetch/$s_!y84r!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0850f1-2ec5-4461-81f1-b1be1089dfa5_1005x557.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!y84r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0850f1-2ec5-4461-81f1-b1be1089dfa5_1005x557.png" width="1005" height="557" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cf0850f1-2ec5-4461-81f1-b1be1089dfa5_1005x557.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:557,&quot;width&quot;:1005,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:141234,&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://javarevisited.substack.com/i/209509557?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0850f1-2ec5-4461-81f1-b1be1089dfa5_1005x557.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_!y84r!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0850f1-2ec5-4461-81f1-b1be1089dfa5_1005x557.png 424w, https://substackcdn.com/image/fetch/$s_!y84r!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0850f1-2ec5-4461-81f1-b1be1089dfa5_1005x557.png 848w, https://substackcdn.com/image/fetch/$s_!y84r!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0850f1-2ec5-4461-81f1-b1be1089dfa5_1005x557.png 1272w, https://substackcdn.com/image/fetch/$s_!y84r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0850f1-2ec5-4461-81f1-b1be1089dfa5_1005x557.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 aria-hidden="true" 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><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></p><h3>Handling Exception while overloading and overriding method in Java</h3><p>While overriding a method it can only throw checked exception declared by overridden method or any subclass of it, which means if the overridden method throws IOExcpetion then the overriding method can throw sub classes of <span>IOExcpetion</span> like <span>FileNotFoundException</span> but not wider exception like Exception or Throwable.</p><p>This restriction is only for checked Exception for RuntimeException you can throw any RuntimeException. The overloaded method in Java doesn&#8217;t have such restrictions and you are free to modify the throws clause as per your need.</p><h2>Method Overloading and Overriding Example in Java</h2><p> Here is an example of both method overloading and method overriding in Java. In order to explain the concept, we have created two classes <code>Loan </code>and <code>PersonalLoan</code>. <code>createLoan()</code> method is overloaded as it has different versions with a different signature, while <code>toString()</code> method which is original declared in Object class is overridden in both <span>Loan</span> and <code>PersonalLoan </code>class.<br></p><pre><code><strong><span>public</span></strong> <strong><span>class</span></strong> <strong><span>OverloadingOverridingTest</span></strong> {

    <strong><span>public</span></strong> <strong><span>static</span></strong> <strong><span>void</span></strong> <strong><span>main</span></strong>(String[] args) {

        <span>// Example of method overloading in Java</span>
        Loan cheapLoan = Loan.<span>createLoan</span>(<span>&#8220;HSBC&#8221;</span>);
        Loan veryCheapLoan = Loan.<span>createLoan</span>(<span>&#8220;Citibank&#8221;</span>, <strong><span>8.5</span></strong>);

        <span>// Example of method overriding in Java</span>
        Loan personalLoan = <strong><span>new</span></strong> PersonalLoan();
        personalLoan.<span>toString</span>();
    }

}

<strong><span>public</span></strong> <strong><span>class</span></strong> <strong><span>Loan</span></strong> {
    <strong><span>private</span></strong> <strong><span>double</span></strong> interestRate;
    <strong><span>private</span></strong> String customer;
    <strong><span>private</span></strong> String lender;

    <strong><span>public</span></strong> <strong><span>static</span></strong> Loan <strong><span>createLoan</span></strong>(String lender) {
        Loan loan = <strong><span>new</span></strong> Loan();
        loan.<span>lender</span> = lender;
        <strong><span>return</span></strong> loan;
    }

    <strong><span>public</span></strong> <strong><span>static</span></strong> Loan <strong><span>createLoan</span></strong>(String lender, <strong><span>double</span></strong> interestRate) {
        Loan loan = <strong><span>new</span></strong> Loan();
        loan.<span>lender</span> = lender;
        loan.<span>interestRate</span> = interestRate;
        <strong><span>return</span></strong> loan;
    }

    <strong><span>@Override</span></strong>
    <strong><span>public</span></strong> String <strong><span>toString</span></strong>() {
        <strong><span>return</span></strong> <span>&#8220;This is Loan by Citibank&#8221;</span>;
    }

}

<strong><span>public</span></strong> <strong><span>class</span></strong> <strong><span>PersonalLoan</span></strong> <strong><span>extends</span></strong> Loan {

    <strong><span>@Override</span></strong>
    <strong><span>public</span></strong> String <strong><span>toString</span></strong>() {
        <strong><span>return</span></strong> <span>&#8220;This is Personal Loan by Citibank&#8221;</span>;
    }
}</code></pre><h3>Things to Remember</h3><p> 1) In the case of method overloading method signature gets changed while in case of overriding signature remains the same.<br><br>2) Return type is not part of the method signature in Java.<br><br>3) Overloaded method can be subject to compile-time binding but the overridden method can only be bind at run-time.<br><br>4) Both overloaded and overridden method has the same name in Java.<br><br>5) Static method can not be overridden in Java.<br><br>6) Since the private method is also not visible outside of class, it can not be overridden and method binding happens during compile time.<br><br>7) From Java 5 onwards you can use annotation in Java to declare overridden method just like we did with <code>@Override</code>. <span>@override</span> annotation allows compiler, IDE like NetBeans and Eclipse to cross-verify or check if this method is really overridden super class method or not.</p><p></p><h2>Bonus: Covariant Return Types (Java 5+)</h2><p>Since Java 5, an overridden method can return a <strong>subclass</strong> of the original return type.</p><pre><code><code>class Animal {}

class Dog extends Animal {}

class AnimalFactory {
    Animal create() {
        return new Animal();
    }
}

class DogFactory extends AnimalFactory {

    @Override
    Dog create() {
        return new Dog();
    }
}</code></code></pre><p>This is called <strong>Covariant Return Type</strong>, and it improves type safety by eliminating unnecessary casts.<br></p><h2>Java Interview Tips</h2><p>Remember these five facts:</p><ul><li><p>Return type alone cannot overload a method.</p></li><li><p>Constructors can be overloaded.</p></li><li><p>Constructors cannot be overridden.</p></li><li><p>Static methods are hidden, not overridden.</p></li><li><p>Private methods cannot participate in polymorphism.</p></li></ul><p>And, If you're preparing for Java interviews, I also recommend checking out my books, <em><a href="https://gumroad.com/l/QqjGH">Grokking the Java Interview</a> and <a href="https://gumroad.com/l/hrUXKY">Grokking the Spring Boot Interview</a></em>. They contain hundreds of carefully selected interview questions, practical examples, and expert tips gathered from years of interviewing and mentoring Java developers. As a thank-you for being a reader, you can use the coupon code <code>FRIENDS20</code> to enjoy a <strong>20% discount</strong>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://javinpaul.gumroad.com/l/grokking-the-java-interview-volume2?offer_code=friends20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TDva!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd119fabc-f1e3-4ab9-909b-8427dc2d160e_4000x2667.jpeg 424w, https://substackcdn.com/image/fetch/$s_!TDva!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd119fabc-f1e3-4ab9-909b-8427dc2d160e_4000x2667.jpeg 848w, https://substackcdn.com/image/fetch/$s_!TDva!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd119fabc-f1e3-4ab9-909b-8427dc2d160e_4000x2667.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!TDva!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd119fabc-f1e3-4ab9-909b-8427dc2d160e_4000x2667.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TDva!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd119fabc-f1e3-4ab9-909b-8427dc2d160e_4000x2667.jpeg" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d119fabc-f1e3-4ab9-909b-8427dc2d160e_4000x2667.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3527745,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:&quot;https://javinpaul.gumroad.com/l/grokking-the-java-interview-volume2?offer_code=friends20&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/209509557?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd119fabc-f1e3-4ab9-909b-8427dc2d160e_4000x2667.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_!TDva!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd119fabc-f1e3-4ab9-909b-8427dc2d160e_4000x2667.jpeg 424w, https://substackcdn.com/image/fetch/$s_!TDva!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd119fabc-f1e3-4ab9-909b-8427dc2d160e_4000x2667.jpeg 848w, https://substackcdn.com/image/fetch/$s_!TDva!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd119fabc-f1e3-4ab9-909b-8427dc2d160e_4000x2667.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!TDva!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd119fabc-f1e3-4ab9-909b-8427dc2d160e_4000x2667.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 aria-hidden="true" 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><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></p><h2>Final Thoughts</h2><p>Method overloading and method overriding are two fundamental Java concepts that every developer should understand. Although both allow methods to share the same name, they solve different problems.</p><ul><li><p><strong>Use method overloading</strong> when you want multiple ways to perform a similar operation with different inputs.</p></li><li><p><strong>Use method overriding</strong> when you want subclasses to provide specialized behavior while preserving a common interface.</p></li></ul><p>Understanding the difference not only helps you write cleaner object-oriented code but also prepares you for one of the most frequently asked Java interview questions.<br><br>As I said one a good example of this is overriding the clone method and using return type as Actual type instead of <code>java.lang.Object</code>, which is suggested by Joshua Bloch in <strong><a href="https://www.amazon.com/Effective-Java-3rd-Joshua-Bloch/dp/0134685997/?tag=javamysqlanta-20">Effective Java</a></strong> as well. </p>
      <p>
          <a href="https://javarevisited.substack.com/p/overloading-vs-overriding-in-java">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[I Reviewed Dozens of Kubernetes Resources – These Are the Top 10 for 2026]]></title><description><![CDATA[These are best resources to master Kubernetes in 2026]]></description><link>https://javarevisited.substack.com/p/i-reviewed-dozens-of-kubernetes-resources</link><guid isPermaLink="false">https://javarevisited.substack.com/p/i-reviewed-dozens-of-kubernetes-resources</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Fri, 31 Jul 2026 15:55:53 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!mJbS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb62751fe-164b-42de-887c-f845c0dd4916_700x949.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p><strong><span>Preparing for Coding and System Design Interviews? </span><a href="https://bytebytego.com/pricing?fpr=javarevisited">Join ByteByteGo now</a><span> for a more structured preparation. They are also offering a huge </span><a href="https://bytebytego.com/pricing?fpr=javarevisited">50% discount</a><span> now on their lifetime plan.</span></strong></p></blockquote><p>Hello guys, <strong>Kubernetes </strong>has emerged as the leading container orchestration platform, enabling developers and DevOps engineers to deploy, scale, and manage containerized applications efficiently.</p><p>As cloud-native technologies continue to gain traction, mastering Kubernetes has become essential for IT professionals looking to advance their careers.</p><p>If you want to learn and master Kubernetes and looking for best resources then you have come to the right place. In the past I have shared<strong> <a href="https://javarevisited.substack.com/p/50-free-courses-to-learn-docker-git">Free Docker and Kubernetes Courses</a> </strong>and <strong><a href="https://medium.com/javarevisited/7-free-online-courses-to-learn-kubernetes-in-2020-3b8a68ec7abc">tutorials </a></strong>and in this article, I am going to share few more resources to learn K8 in depth.</p><p>By the way, if you are a complete beginner and like to learn from online courses then <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Flearn-kubernetes%2F">Kubernetes for the Absolute Beginners &#8212; Hands-on</a></strong> is a great resource to start with K8 by yourself.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Flearn-kubernetes%2F" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MFpe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F124b9e91-e091-4711-9c69-dffd343c2971_700x394.jpeg 424w, https://substackcdn.com/image/fetch/$s_!MFpe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F124b9e91-e091-4711-9c69-dffd343c2971_700x394.jpeg 848w, https://substackcdn.com/image/fetch/$s_!MFpe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F124b9e91-e091-4711-9c69-dffd343c2971_700x394.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!MFpe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F124b9e91-e091-4711-9c69-dffd343c2971_700x394.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MFpe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F124b9e91-e091-4711-9c69-dffd343c2971_700x394.jpeg" width="697" height="392.31142857142856" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/124b9e91-e091-4711-9c69-dffd343c2971_700x394.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:394,&quot;width&quot;:700,&quot;resizeWidth&quot;:697,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Flearn-kubernetes%2F&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!MFpe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F124b9e91-e091-4711-9c69-dffd343c2971_700x394.jpeg 424w, https://substackcdn.com/image/fetch/$s_!MFpe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F124b9e91-e091-4711-9c69-dffd343c2971_700x394.jpeg 848w, https://substackcdn.com/image/fetch/$s_!MFpe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F124b9e91-e091-4711-9c69-dffd343c2971_700x394.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!MFpe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F124b9e91-e091-4711-9c69-dffd343c2971_700x394.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 aria-hidden="true" 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><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>Created by <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fuser%2Fmumshad-mannambeth%2F">Mumshad Mannambeth</a></strong>, one of the best instructors to learn Kubernetes and Cloud computing topics and it shows in this course.</p><p>He spends over forty minutes only on the overview of Kubernetes, which is probably the best 40 minutes I have on Kubernetes.</p><h1>10 Best Kubernetes Resources for Beginners and Intermediate Developers </h1><p>Whether you are a beginner or looking to deepen your understanding, this guide provides the top 10 resources to master Kubernetes in 2024.</p><h2>1. The Official Kubernetes Tutorials</h2><p>The official Kubernetes documentation provides a comprehensive and up-to-date set of tutorials. These tutorials cover the fundamentals of Kubernetes, including installation, configuration, and usage.</p><p>With hands-on labs and interactive content, these resources are invaluable for beginners and experienced users alike.</p><p>The official tutorials offer a structured way to get acquainted with Kubernetes concepts and quickly get up to speed.</p><p><strong>Explore the Official Kubernetes Tutorials here:</strong> <a href="https://kubernetes.io/docs/tutorials/">The official Kubernetes tutorials</a></p><h2>2. IBM&#8217;s Introduction to Containers with Docker, Kubernetes &amp; OpenShift on Coursera</h2><p>IBM&#8217;s course on Coursera provides a holistic view of container technologies, including <a href="https://medium.com/javarevisited/5-best-docker-books-for-beginners-and-experienced-developers-5c0cc4da9230">Docker</a>, <a href="https://www.linkedin.com/pulse/7-best-free-kubernetes-courses-experienced-developers-soma-sharma-x9kpc/">Kubernetes</a>, and <a href="https://medium.com/javarevisited/6-best-openshift-courses-for-beginners-and-experienced-developers-d124edd2baff">OpenShift</a>.</p><p>This course is ideal for learners who want to understand how Kubernetes fits into the broader container ecosystem. With practical labs and quizzes, the course offers a balanced approach to learning.</p><p><strong>Start learning on Coursera:</strong> <a href="https://coursera.pxf.io/c/3294490/1164545/14726?u=https%3A%2F%2Fwww.coursera.org%2Flearn%2Fibm-containers-docker-kubernetes-openshift">IBM&#8217;s Introduction to Containers w/ Docker, Kubernetes &amp; OpenShift</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://coursera.pxf.io/c/3294490/1164545/14726?u=https%3A%2F%2Fwww.coursera.org%2Flearn%2Fibm-containers-docker-kubernetes-openshift" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XSzc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73d02f5b-970d-4da6-ba41-2f2e83e6df21_700x367.png 424w, https://substackcdn.com/image/fetch/$s_!XSzc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73d02f5b-970d-4da6-ba41-2f2e83e6df21_700x367.png 848w, https://substackcdn.com/image/fetch/$s_!XSzc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73d02f5b-970d-4da6-ba41-2f2e83e6df21_700x367.png 1272w, https://substackcdn.com/image/fetch/$s_!XSzc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73d02f5b-970d-4da6-ba41-2f2e83e6df21_700x367.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XSzc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73d02f5b-970d-4da6-ba41-2f2e83e6df21_700x367.png" width="700" height="367" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/73d02f5b-970d-4da6-ba41-2f2e83e6df21_700x367.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:367,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://coursera.pxf.io/c/3294490/1164545/14726?u=https%3A%2F%2Fwww.coursera.org%2Flearn%2Fibm-containers-docker-kubernetes-openshift&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!XSzc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73d02f5b-970d-4da6-ba41-2f2e83e6df21_700x367.png 424w, https://substackcdn.com/image/fetch/$s_!XSzc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73d02f5b-970d-4da6-ba41-2f2e83e6df21_700x367.png 848w, https://substackcdn.com/image/fetch/$s_!XSzc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73d02f5b-970d-4da6-ba41-2f2e83e6df21_700x367.png 1272w, https://substackcdn.com/image/fetch/$s_!XSzc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73d02f5b-970d-4da6-ba41-2f2e83e6df21_700x367.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 aria-hidden="true" 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><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>By the way, If you are planning to join multiple Coursera courses or specializations, then consider taking a <strong><a href="https://coursera.pxf.io/c/3294490/1164545/14726?u=https%3A%2F%2Fwww.coursera.org%2Fcourseraplus">Coursera Plus subscription</a></strong> which provides you unlimited access to their most popular courses, specialization, professional certificate, and guided projects.</p><p>It costs around $399 per year but is worth it because you get access to more than 7000+ courses and projects, and you can also get unlimited certificates.</p><blockquote><p>Note : &#8212; They are offering 30% discount on Coursera Plus annual plan now, So you can get one year of membership for just $270 instead of $399 <a href="https://coursera.pxf.io/c/3294490/1164545/14726?u=https%3A%2F%2Fwww.coursera.org%2Fcourseraplus%2Fspecial%2Fglobal-thirty-2024">click here to claim your discount</a>.</p><div><hr></div></blockquote><h2>3. Docker &amp; Kubernetes: The Practical Guide on Udemy</h2><p>This Udemy course, <em><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fdocker-kubernetes-the-practical-guide%2F%3FcouponCode%3DOF83024E">&#8220;Docker &amp; Kubernetes: The Practical Guide,&#8221;</a></em> is one of the most popular and highly rated courses available.</p><p>It takes a hands-on approach to teaching Docker and Kubernetes, making it ideal for those who want practical, real-world experience.</p><p>The course covers everything from Docker basics to advanced Kubernetes topics, ensuring a well-rounded learning experience.</p><p><strong>Check out the course on Udemy:</strong> <a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fdocker-kubernetes-the-practical-guide%2F%3FcouponCode%3DOF83024E">Docker &amp; Kubernetes: The Practical Guide</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fdocker-kubernetes-the-practical-guide%2F%3FcouponCode%3DOF83024E" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!R2mZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f8db389-bce7-4c11-ae23-341c3198b48b_700x394.jpeg 424w, https://substackcdn.com/image/fetch/$s_!R2mZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f8db389-bce7-4c11-ae23-341c3198b48b_700x394.jpeg 848w, https://substackcdn.com/image/fetch/$s_!R2mZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f8db389-bce7-4c11-ae23-341c3198b48b_700x394.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!R2mZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f8db389-bce7-4c11-ae23-341c3198b48b_700x394.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!R2mZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f8db389-bce7-4c11-ae23-341c3198b48b_700x394.jpeg" width="700" height="394" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3f8db389-bce7-4c11-ae23-341c3198b48b_700x394.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:394,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fdocker-kubernetes-the-practical-guide%2F%3FcouponCode%3DOF83024E&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!R2mZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f8db389-bce7-4c11-ae23-341c3198b48b_700x394.jpeg 424w, https://substackcdn.com/image/fetch/$s_!R2mZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f8db389-bce7-4c11-ae23-341c3198b48b_700x394.jpeg 848w, https://substackcdn.com/image/fetch/$s_!R2mZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f8db389-bce7-4c11-ae23-341c3198b48b_700x394.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!R2mZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f8db389-bce7-4c11-ae23-341c3198b48b_700x394.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 aria-hidden="true" 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><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. Book: Kubernetes &#8212; Up and Running: Dive into the Future of Infrastructure</h2><p>&#8220;Kubernetes &#8212; Up and Running&#8221; is a must-read book for anyone looking to get started with Kubernetes. The book covers the basics of Kubernetes, its architecture, and how to use it to manage containerized applications.</p><p>Written by experts in the field, this book provides a clear, concise introduction to Kubernetes, making it a valuable resource for beginners.</p><p><strong>Read the book here:</strong> <a href="https://www.amazon.com/Kubernetes-Running-Dive-Future-Infrastructure-dp-109811020X/dp/109811020X?tag=javamysqlanta-20">Kubernetes &#8212; Up and Running: Dive into the Future of Infrastructure</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/Kubernetes-Running-Dive-Future-Infrastructure-dp-109811020X/dp/109811020X?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3jov!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48508d06-1506-4b9c-8c5b-f37cff77a50a_700x919.jpeg 424w, https://substackcdn.com/image/fetch/$s_!3jov!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48508d06-1506-4b9c-8c5b-f37cff77a50a_700x919.jpeg 848w, https://substackcdn.com/image/fetch/$s_!3jov!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48508d06-1506-4b9c-8c5b-f37cff77a50a_700x919.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!3jov!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48508d06-1506-4b9c-8c5b-f37cff77a50a_700x919.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3jov!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48508d06-1506-4b9c-8c5b-f37cff77a50a_700x919.jpeg" width="700" height="919" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/48508d06-1506-4b9c-8c5b-f37cff77a50a_700x919.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:919,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/Kubernetes-Running-Dive-Future-Infrastructure-dp-109811020X/dp/109811020X?tag=javamysqlanta-20&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!3jov!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48508d06-1506-4b9c-8c5b-f37cff77a50a_700x919.jpeg 424w, https://substackcdn.com/image/fetch/$s_!3jov!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48508d06-1506-4b9c-8c5b-f37cff77a50a_700x919.jpeg 848w, https://substackcdn.com/image/fetch/$s_!3jov!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48508d06-1506-4b9c-8c5b-f37cff77a50a_700x919.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!3jov!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48508d06-1506-4b9c-8c5b-f37cff77a50a_700x919.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 aria-hidden="true" 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><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>5. Book: The Book Of Kubernetes: A Complete Guide to Container Orchestration</h2><p>This book serves as a comprehensive guide to <em><a href="https://kubernetes.io/">Kubernetes</a></em>, covering everything from the basics to advanced topics like networking and security.</p><p>It&#8217;s designed to be a complete reference guide for Kubernetes, making it suitable for both beginners and experienced professionals.</p><p>The detailed explanations and practical examples make it a valuable addition to any Kubernetes learning path.</p><p><strong>Get the book here:</strong> <a href="https://www.amazon.com/Book-Kubernetes-Complete-Container-Orchestration/dp/1718502648?tag=javamysqlanta-20">The Book Of Kubernetes: A Complete Guide to Container Orchestration</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/Book-Kubernetes-Complete-Container-Orchestration/dp/1718502648?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mJbS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb62751fe-164b-42de-887c-f845c0dd4916_700x949.jpeg 424w, https://substackcdn.com/image/fetch/$s_!mJbS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb62751fe-164b-42de-887c-f845c0dd4916_700x949.jpeg 848w, https://substackcdn.com/image/fetch/$s_!mJbS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb62751fe-164b-42de-887c-f845c0dd4916_700x949.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!mJbS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb62751fe-164b-42de-887c-f845c0dd4916_700x949.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mJbS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb62751fe-164b-42de-887c-f845c0dd4916_700x949.jpeg" width="700" height="949" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b62751fe-164b-42de-887c-f845c0dd4916_700x949.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:949,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/Book-Kubernetes-Complete-Container-Orchestration/dp/1718502648?tag=javamysqlanta-20&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!mJbS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb62751fe-164b-42de-887c-f845c0dd4916_700x949.jpeg 424w, https://substackcdn.com/image/fetch/$s_!mJbS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb62751fe-164b-42de-887c-f845c0dd4916_700x949.jpeg 848w, https://substackcdn.com/image/fetch/$s_!mJbS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb62751fe-164b-42de-887c-f845c0dd4916_700x949.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!mJbS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb62751fe-164b-42de-887c-f845c0dd4916_700x949.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 aria-hidden="true" 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><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>6. Kubernetes Fundamentals Learning Path on Kube by Example</h2><p>Kube by Example offers a Kubernetes Fundamentals learning path that provides a deep dive into Kubernetes concepts and operations.</p><p>This learning path includes practical examples and exercises, making it a fantastic resource for hands-on learners.</p><p>The step-by-step approach helps in building a solid foundation and progressing to advanced topics.</p><p><strong>Follow the Kubernetes Fundamentals learning path here:</strong> <a href="https://kubebyexample.com/learning-paths/kubernetes-fundamentals/what-kubernetes-3-minutes">Kube by Example: Kubernetes Fundamentals</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://kubebyexample.com/learning-paths/kubernetes-fundamentals/what-kubernetes-3-minutes" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GceJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ebe47f-72ef-4fe1-bd23-609d7953beab_700x372.png 424w, https://substackcdn.com/image/fetch/$s_!GceJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ebe47f-72ef-4fe1-bd23-609d7953beab_700x372.png 848w, https://substackcdn.com/image/fetch/$s_!GceJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ebe47f-72ef-4fe1-bd23-609d7953beab_700x372.png 1272w, https://substackcdn.com/image/fetch/$s_!GceJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ebe47f-72ef-4fe1-bd23-609d7953beab_700x372.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GceJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ebe47f-72ef-4fe1-bd23-609d7953beab_700x372.png" width="700" height="372" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b9ebe47f-72ef-4fe1-bd23-609d7953beab_700x372.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:372,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://kubebyexample.com/learning-paths/kubernetes-fundamentals/what-kubernetes-3-minutes&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!GceJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ebe47f-72ef-4fe1-bd23-609d7953beab_700x372.png 424w, https://substackcdn.com/image/fetch/$s_!GceJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ebe47f-72ef-4fe1-bd23-609d7953beab_700x372.png 848w, https://substackcdn.com/image/fetch/$s_!GceJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ebe47f-72ef-4fe1-bd23-609d7953beab_700x372.png 1272w, https://substackcdn.com/image/fetch/$s_!GceJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ebe47f-72ef-4fe1-bd23-609d7953beab_700x372.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 aria-hidden="true" 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><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>7. Kubernetes Complete Course from TechWorld with Nana</h2><p>Nana from TechWorld is renowned for her engaging and easy-to-follow tech tutorials. Her comprehensive course on Kubernetes is no exception.</p><p>This course covers everything from the basics of Kubernetes to advanced deployment strategies and real-world applications. It&#8217;s ideal for those who prefer video-based learning and want to gain a practical understanding of Kubernetes.</p><p><strong>Watch the course on YouTube:</strong> <a href="https://www.youtube.com/watch?v=X48VuDVv0do">Kubernetes Complete Course from TechWorld by Nana</a></p><h2>8. Microsoft&#8217;s Introduction to Kubernetes</h2><p>Microsoft&#8217;s Introduction to Kubernetes course is a free, in-depth resource that guides learners through the fundamentals of Kubernetes. It includes topics like architecture, deployments, scaling, and monitoring.</p><p>Microsoft provides this course with a blend of theoretical knowledge and practical exercises, making it suitable for IT professionals looking to integrate Kubernetes into their existing workflows.</p><p><strong>Enroll in the course here:</strong> <a href="https://learn.microsoft.com/en-us/training/modules/intro-to-kubernetes/">Microsoft&#8217;s Introduction to Kubernetes</a></p><h2>9. Learn Kubernetes in Under 3 Hours by freeCodeCamp</h2><p>For those short on time, freeCodeCamp offers a crash course titled &#8220;Learn Kubernetes in Under 3 Hours.&#8221;</p><p>This course covers the essentials of Kubernetes in a condensed format, perfect for getting a quick overview of Kubernetes concepts.</p><p>The course is available for free on YouTube and is taught by a seasoned instructor, making complex topics easily understandable.</p><p><strong>Watch the course on YouTube:</strong> <a href="https://www.freecodecamp.org/news/learn-kubernetes-in-under-3-hours-a-detailed-guide-to-orchestrating-containers-114ff420e882/">Learn Kubernetes in Under 3 Hours by freeCodeCamp</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_!j_Ti!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d760fc9-825e-49d4-9d87-2ae60842b38b_700x466.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!j_Ti!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d760fc9-825e-49d4-9d87-2ae60842b38b_700x466.jpeg 424w, https://substackcdn.com/image/fetch/$s_!j_Ti!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d760fc9-825e-49d4-9d87-2ae60842b38b_700x466.jpeg 848w, https://substackcdn.com/image/fetch/$s_!j_Ti!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d760fc9-825e-49d4-9d87-2ae60842b38b_700x466.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!j_Ti!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d760fc9-825e-49d4-9d87-2ae60842b38b_700x466.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!j_Ti!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d760fc9-825e-49d4-9d87-2ae60842b38b_700x466.jpeg" width="700" height="466" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1d760fc9-825e-49d4-9d87-2ae60842b38b_700x466.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:466,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!j_Ti!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d760fc9-825e-49d4-9d87-2ae60842b38b_700x466.jpeg 424w, https://substackcdn.com/image/fetch/$s_!j_Ti!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d760fc9-825e-49d4-9d87-2ae60842b38b_700x466.jpeg 848w, https://substackcdn.com/image/fetch/$s_!j_Ti!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d760fc9-825e-49d4-9d87-2ae60842b38b_700x466.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!j_Ti!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d760fc9-825e-49d4-9d87-2ae60842b38b_700x466.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 aria-hidden="true" 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><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>10. Book: Programming Kubernetes: Developing Cloud-Native Applications</h2><p>&#8220;Programming Kubernetes&#8221; is a guide focused on developing cloud-native applications with Kubernetes. It delves into how Kubernetes can be leveraged to develop scalable, reliable applications.</p><p>This book is ideal for developers who want to understand Kubernetes from a programming perspective and learn how to build applications that are optimized for the cloud.</p><p><strong>Find the book here:</strong> <a href="https://www.amazon.com/dp/1492047104?tag=javamysqlanta-20">Programming Kubernetes: Developing Cloud-Native Applications</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/dp/1492047104?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ulCw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c8f9dba-bc81-4f37-b7f7-cc4abbe26b48_700x866.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ulCw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c8f9dba-bc81-4f37-b7f7-cc4abbe26b48_700x866.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ulCw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c8f9dba-bc81-4f37-b7f7-cc4abbe26b48_700x866.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ulCw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c8f9dba-bc81-4f37-b7f7-cc4abbe26b48_700x866.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ulCw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c8f9dba-bc81-4f37-b7f7-cc4abbe26b48_700x866.jpeg" width="700" height="866" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1c8f9dba-bc81-4f37-b7f7-cc4abbe26b48_700x866.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:866,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/dp/1492047104?tag=javamysqlanta-20&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!ulCw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c8f9dba-bc81-4f37-b7f7-cc4abbe26b48_700x866.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ulCw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c8f9dba-bc81-4f37-b7f7-cc4abbe26b48_700x866.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ulCw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c8f9dba-bc81-4f37-b7f7-cc4abbe26b48_700x866.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ulCw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c8f9dba-bc81-4f37-b7f7-cc4abbe26b48_700x866.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 aria-hidden="true" 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><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>Conclusion</h2><p>That&#8217;s all about the <strong>best resources to learn Kubernetes in 2024.</strong> Whether you&#8217;re a developer, a system administrator, or an IT professional, mastering Kubernetes can open doors to new career opportunities and enhance your skill set.</p><p>From official tutorials and online courses to comprehensive books, the resources listed above offer various ways to learn and deepen your understanding of Kubernetes.</p><p>Start exploring these resources today, and take a significant step toward becoming a Kubernetes expert!</p><p>Thanks for reading so far. If you like these <em>best Kubernetes Resources for DevOps and Developers</em> then please share them with your friends and colleagues. If you have any questions or feedback, then please drop a note.</p><p><strong>P. S. &#8212; </strong>If you want to learn Kubernetes and add a useful skill to your resume but looking for a free course to start with then you can also check out this <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fkubernetes-getting-started%2F">Kubernetes: Getting Started</a> </strong>free course on Udemy. It&#8217;s completely free and all you need is a free Udemy account to enroll in this online training course.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;acff7726-f7d3-46f4-bd0b-3e629fcdd40a&quot;,&quot;caption&quot;:&quot;Breaking into AI and Large Language Model (LLM) engineering can feel overwhelming. With rapid advancements in transformer architectures, tools like LangChain and Hugging Face, and the constant evolution of open-source models, many developers and aspiring ML engineers struggle to find a clear, structured path to mastery.&quot;,&quot;cta&quot;:null,&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 Complete AI and LLM Engineering Roadmap: From Beginner to Expert&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:16859097,&quot;name&quot;:&quot;javinpaul&quot;,&quot;bio&quot;:&quot;I write a weekly newsletter to help you learn Java, coding, and system design.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!9bIo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F5663d1cb-2e66-4a0d-8f76-8a3aad3f2382_48x48.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100},{&quot;id&quot;:110559689,&quot;name&quot;:&quot;Paul Iusztin&quot;,&quot;bio&quot;:&quot;Senior AI Engineer &#8226; Founder @ Decoding AI &#8226; Author @ LLM Engineer&#8217;s Handbook ~ I ship AI products and teach you about the process.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0714d360-396c-4b41-a676-1b58dc1dc5f3_1470x1470.jpeg&quot;,&quot;is_guest&quot;:true,&quot;bestseller_tier&quot;:100,&quot;primaryPublicationSubscribeUrl&quot;:&quot;https://www.decodingai.com/subscribe?&quot;,&quot;primaryPublicationUrl&quot;:&quot;https://www.decodingai.com&quot;,&quot;primaryPublicationName&quot;:&quot;Decoding AI Magazine&quot;,&quot;primaryPublicationId&quot;:1526003}],&quot;post_date&quot;:&quot;2025-06-20T04:59:45.609Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!UE20!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://javarevisited.substack.com/p/the-complete-ai-and-llm-engineering&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:166375587,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:241,&quot;comment_count&quot;:12,&quot;publication_id&quot;:1444904,&quot;publication_name&quot;:&quot;Javarevisited Newsletter&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!WbL3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb9abffb-bd2d-4fe4-a166-4f88de0a3cba_512x512.png&quot;,&quot;belowTheFold&quot;:true,&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;c0588b1a-e0c9-44bf-849c-201b40c772ac&quot;,&quot;caption&quot;:&quot;Preparing for Coding and System Design Interviews? Join ByteByteGo now for a more structured preparation. They are also offering a huge 50% discount now on their lifetime plan.&quot;,&quot;cta&quot;:null,&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;I Read 20+ Software Architecture Books - Here Are My Top 7 Recommendations for Senior Developers&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:16859097,&quot;name&quot;:&quot;javinpaul&quot;,&quot;bio&quot;:&quot;I write a weekly newsletter to help you learn Java, coding, and system design.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!9bIo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F5663d1cb-2e66-4a0d-8f76-8a3aad3f2382_48x48.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100},{&quot;id&quot;:123095996,&quot;name&quot;:&quot;Soma&quot;,&quot;bio&quot;:&quot;Java and React Developer&quot;,&quot;photo_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%2F6da5f0aa-fdd2-429c-b87f-8ac6ddf5bc60_144x144.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-07-30T15:33:37.822Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!GtAc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29c44d24-0e38-4ad5-bf0d-42ad66b64658_700x866.webp&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://javarevisited.substack.com/p/i-read-20-software-architecture-books&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:209131255,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:21,&quot;comment_count&quot;:1,&quot;publication_id&quot;:1444904,&quot;publication_name&quot;:&quot;Javarevisited Newsletter&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!WbL3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb9abffb-bd2d-4fe4-a166-4f88de0a3cba_512x512.png&quot;,&quot;belowTheFold&quot;:true,&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;c49dbb4a-4a46-415f-bba1-fb88e91053b8&quot;,&quot;caption&quot;:&quot;Hello Guys, The AI world is moving ridiculously fast.&quot;,&quot;cta&quot;:null,&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 AI Engineer&#8217;s Reading List for 2026 (10 Books That Matter)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:16859097,&quot;name&quot;:&quot;javinpaul&quot;,&quot;bio&quot;:&quot;I write a weekly newsletter to help you learn Java, coding, and system design.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!9bIo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F5663d1cb-2e66-4a0d-8f76-8a3aad3f2382_48x48.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100},{&quot;id&quot;:123095996,&quot;name&quot;:&quot;Soma&quot;,&quot;bio&quot;:&quot;Java and React Developer&quot;,&quot;photo_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%2F6da5f0aa-fdd2-429c-b87f-8ac6ddf5bc60_144x144.png&quot;,&quot;is_guest&quot;:true,&quot;bestseller_tier&quot;:null,&quot;primaryPublicationSubscribeUrl&quot;:&quot;https://reactjava.substack.com/subscribe?&quot;,&quot;primaryPublicationUrl&quot;:&quot;https://reactjava.substack.com&quot;,&quot;primaryPublicationName&quot;:&quot;React Java&quot;,&quot;primaryPublicationId&quot;:1455043}],&quot;post_date&quot;:&quot;2026-03-06T15:08:16.750Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!MD3b!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4dbe541f-5137-4c67-8835-6a463449c9e1_609x799.webp&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://javarevisited.substack.com/p/10-ai-and-llm-engineering-books-i&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:190111821,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:95,&quot;comment_count&quot;:1,&quot;publication_id&quot;:1444904,&quot;publication_name&quot;:&quot;Javarevisited Newsletter&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!WbL3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb9abffb-bd2d-4fe4-a166-4f88de0a3cba_512x512.png&quot;,&quot;belowTheFold&quot;:true,&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;d8a77e32-2426-48d0-95d6-f30aada930c6&quot;,&quot;caption&quot;:&quot;Looking for job in this tough market?&quot;,&quot;cta&quot;:null,&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;Beat 90% of Candidates: Software Engineer's Fast-Track Coding Interview Guide&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:16859097,&quot;name&quot;:&quot;javinpaul&quot;,&quot;bio&quot;:&quot;I write a weekly newsletter to help you learn Java, coding, and system design.&quot;,&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%2F5663d1cb-2e66-4a0d-8f76-8a3aad3f2382_48x48.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-07-26T14:44:37.068Z&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%2Faa1ca908-1d6a-4ca9-b03b-f2431d452750_889x666.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://javarevisited.substack.com/p/beat-90-of-candidates-software-engineers&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:147035570,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:42,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Javarevisited Newsletter&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%2Ffb9abffb-bd2d-4fe4-a166-4f88de0a3cba_512x512.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>]]></content:encoded></item><item><title><![CDATA[I Read 20+ Software Architecture Books - Here Are My Top 7 Recommendations for Senior Developers]]></title><description><![CDATA[7 best books senior software engineers can read to learn Software architecture and system design better]]></description><link>https://javarevisited.substack.com/p/i-read-20-software-architecture-books</link><guid isPermaLink="false">https://javarevisited.substack.com/p/i-read-20-software-architecture-books</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Thu, 30 Jul 2026 15:33:37 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!GtAc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29c44d24-0e38-4ad5-bf0d-42ad66b64658_700x866.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p><strong>Preparing for Coding and System Design Interviews? <a href="https://bytebytego.com/pricing?fpr=javarevisited">Join ByteByteGo now</a> for a more structured preparation. They are also offering a huge <a href="https://bytebytego.com/pricing?fpr=javarevisited">50% discount</a> now on their lifetime plan.</strong></p></blockquote><p>If you&#8217;ve been in software development for a few years, you know that writing code is only part of the job. Understanding <strong>how to design scalable, reliable systems</strong> and <strong>architect maintainable software</strong> is what separates senior engineers from the rest.</p><p>Over the past few years, I&#8217;ve read more than 20 books on <strong>Software Architecture and System Design</strong>, some were too theoretical, others were gold mines of real-world wisdom.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>In this post, I&#8217;m sharing the <strong>top 7 books</strong> that truly shaped how I think about architecture and system design.</p><p>These aren&#8217;t just books you skim through. Each of them offers practical insights, proven architectural patterns, and lessons learned from real-world systems like Google, Amazon, and Spotify.</p><p>Whether you&#8217;re preparing for a <strong>system design interview</strong>, trying to become a <strong>software architect</strong>, or just want to level up your design thinking, these books are worth your time.</p><p>Before we start, if you want to complement your reading with hands-on learning, check out these excellent resources:</p><ul><li><p><strong><a href="https://bit.ly/3P3eqMN">ByteByteGo</a></strong> --- System Design videos, case studies, and a framework for interviews.</p></li><li><p><strong><a href="https://bit.ly/3pMiO8g">Design Gurus</a></strong> --- Interactive system design problems and mock interviews.</p></li><li><p><strong><a href="https://bit.ly/3cNF0vw">Exponent</a></strong> --- Mock interviews and system design lessons from FAANG engineers.</p></li><li><p><strong><a href="https://bit.ly/3Mnh6UR">Educative</a></strong> --- Text-based, interactive system design courses.</p></li><li><p><strong><a href="https://codemia.io/?via=javarevisited">Codemia.io</a></strong> --- A Newer platform focused on real-world design prep.</p></li><li><p><strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=">Udemy</a></strong> --- Great for budget-friendly system design and architecture courses.</p></li></ul><div><hr></div><h2>7 Must-Read Software Architecture and System Design Books for Experienced Developers</h2><p>Here are the 7 books you can read to transition from a senior software engineer to a Software architect role:</p><h3>1. <a href="https://www.amazon.com/dp/1098134354?tag=javamysqlanta-20">Head First Software Architecture</a></h3><p>If you&#8217;re just getting into architecture, this is the perfect place to start. It follows the signature <strong>Head First</strong> style --- engaging visuals, brain-friendly exercises, and practical examples that simplify tough topics.</p><p>After reading <em><a href="https://www.amazon.com/Head-First-Design-Patterns-Brain-Friendly/dp/0596007124/?tag=javamysqlanta-20">Head First Design Patterns</a></em> and <em><a href="https://www.amazon.com/Head-First-Object-Oriented-Analysis-Design/dp/0596008678/?tag=javamysqlanta-20">Head First Object-Oriented Analysis</a></em>, I had high hopes for this one, and it didn&#8217;t disappoint.</p><p>It breaks down software architecture fundamentals in a way that&#8217;s approachable even if you don&#8217;t have a formal background in architecture.</p><p>If you&#8217;re aiming to become a <strong>tech lead or architect</strong>, this book will give you a solid foundation to think beyond code and into system-level decisions.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/dp/1098134354?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Rg7E!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d529c7b-e0bc-45c9-b168-6fabcdc92d51_600x655.webp 424w, https://substackcdn.com/image/fetch/$s_!Rg7E!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d529c7b-e0bc-45c9-b168-6fabcdc92d51_600x655.webp 848w, https://substackcdn.com/image/fetch/$s_!Rg7E!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d529c7b-e0bc-45c9-b168-6fabcdc92d51_600x655.webp 1272w, https://substackcdn.com/image/fetch/$s_!Rg7E!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d529c7b-e0bc-45c9-b168-6fabcdc92d51_600x655.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Rg7E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d529c7b-e0bc-45c9-b168-6fabcdc92d51_600x655.webp" width="600" height="655" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0d529c7b-e0bc-45c9-b168-6fabcdc92d51_600x655.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:655,&quot;width&quot;:600,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Book Review - Is Head First Software Architecture book worth it?&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/dp/1098134354?tag=javamysqlanta-20&quot;,&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="Book Review - Is Head First Software Architecture book worth it?" title="Book Review - Is Head First Software Architecture book worth it?" srcset="https://substackcdn.com/image/fetch/$s_!Rg7E!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d529c7b-e0bc-45c9-b168-6fabcdc92d51_600x655.webp 424w, https://substackcdn.com/image/fetch/$s_!Rg7E!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d529c7b-e0bc-45c9-b168-6fabcdc92d51_600x655.webp 848w, https://substackcdn.com/image/fetch/$s_!Rg7E!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d529c7b-e0bc-45c9-b168-6fabcdc92d51_600x655.webp 1272w, https://substackcdn.com/image/fetch/$s_!Rg7E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d529c7b-e0bc-45c9-b168-6fabcdc92d51_600x655.webp 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 aria-hidden="true" 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><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><div><hr></div><h3>2. <a href="https://www.amazon.com/Software-Architecture-Trade-Off-Distributed-Architectures/dp/1492086894?tag=javamysqlanta-20">Software Architecture: The Hard Parts --- Neal Ford, Mark Richards, Pramod Sadalage, and Zhamak Dehghani</a></h3><p>This is not a book you <em>read</em> --- it&#8217;s one you <em>study</em>.</p><p>In <em>Software Architecture: The Hard Parts</em>, the authors go beyond diagrams and buzzwords to show you <strong>how to make trade-off decisions in complex distributed systems</strong>.</p><p>You&#8217;ll learn how to evaluate coupling versus cohesion, how to think about data ownership in microservices, and how to design architectures that evolve safely over time.</p><p>The book emphasizes that architecture is about <strong>managing trade-offs, not finding perfect solutions</strong> --- a mindset that separates real software architects from senior developers.</p><p>If you want to build systems that are scalable, maintainable, and grounded in real-world constraints, this book will reshape how you think about architecture decisions.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/Software-Architecture-Trade-Off-Distributed-Architectures/dp/1492086894?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GtAc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29c44d24-0e38-4ad5-bf0d-42ad66b64658_700x866.webp 424w, https://substackcdn.com/image/fetch/$s_!GtAc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29c44d24-0e38-4ad5-bf0d-42ad66b64658_700x866.webp 848w, https://substackcdn.com/image/fetch/$s_!GtAc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29c44d24-0e38-4ad5-bf0d-42ad66b64658_700x866.webp 1272w, https://substackcdn.com/image/fetch/$s_!GtAc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29c44d24-0e38-4ad5-bf0d-42ad66b64658_700x866.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GtAc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29c44d24-0e38-4ad5-bf0d-42ad66b64658_700x866.webp" width="700" height="866" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/29c44d24-0e38-4ad5-bf0d-42ad66b64658_700x866.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:866,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Review - Is Software Architecture: The Hard Parts book by Neal Ford, Mark Richards, Pramod Sadalage, and Zhamak Dehghani worth it&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/Software-Architecture-Trade-Off-Distributed-Architectures/dp/1492086894?tag=javamysqlanta-20&quot;,&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="Review - Is Software Architecture: The Hard Parts book by Neal Ford, Mark Richards, Pramod Sadalage, and Zhamak Dehghani worth it" title="Review - Is Software Architecture: The Hard Parts book by Neal Ford, Mark Richards, Pramod Sadalage, and Zhamak Dehghani worth it" srcset="https://substackcdn.com/image/fetch/$s_!GtAc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29c44d24-0e38-4ad5-bf0d-42ad66b64658_700x866.webp 424w, https://substackcdn.com/image/fetch/$s_!GtAc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29c44d24-0e38-4ad5-bf0d-42ad66b64658_700x866.webp 848w, https://substackcdn.com/image/fetch/$s_!GtAc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29c44d24-0e38-4ad5-bf0d-42ad66b64658_700x866.webp 1272w, https://substackcdn.com/image/fetch/$s_!GtAc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29c44d24-0e38-4ad5-bf0d-42ad66b64658_700x866.webp 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 aria-hidden="true" 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><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><div><hr></div><h3>3. <a href="https://www.amazon.com/Fundamentals-Software-Architecture-Comprehensive-Characteristics/dp/1492043451?tag=javamysqlanta-20">Fundamentals of Software Architecture - Mark Richards and Neal Ford</a></h3><p>If you&#8217;ve ever wondered how to transition from a strong senior engineer to a true architect, <em>Fundamentals of Software Architecture</em> is the bridge.</p><p>This book clearly explains what software architecture <em>really means</em> --- beyond UML diagrams and buzzwords. You&#8217;ll learn architectural styles, quality attributes, communication patterns, and how to reason about systems as a whole.</p><p>What makes it exceptional is how it blends theory with practice. Richards and Ford draw on decades of experience to show how to <strong>think like an architect without losing your developer instincts</strong>.</p><p>It&#8217;s one of the best books to read early in your architecture journey --- especially if you&#8217;re trying to understand how design, communication, and technical strategy fit together.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/Fundamentals-Software-Architecture-Comprehensive-Characteristics/dp/1492043451?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZJKa!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e08e8f-f1bf-41c6-90de-61f468883c87_700x934.webp 424w, https://substackcdn.com/image/fetch/$s_!ZJKa!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e08e8f-f1bf-41c6-90de-61f468883c87_700x934.webp 848w, https://substackcdn.com/image/fetch/$s_!ZJKa!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e08e8f-f1bf-41c6-90de-61f468883c87_700x934.webp 1272w, https://substackcdn.com/image/fetch/$s_!ZJKa!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e08e8f-f1bf-41c6-90de-61f468883c87_700x934.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZJKa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e08e8f-f1bf-41c6-90de-61f468883c87_700x934.webp" width="700" height="934" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e3e08e8f-f1bf-41c6-90de-61f468883c87_700x934.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:934,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Review - Is Fundamentals of Software Architecture --- Mark Richards and Neal Ford book worth it&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/Fundamentals-Software-Architecture-Comprehensive-Characteristics/dp/1492043451?tag=javamysqlanta-20&quot;,&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="Review - Is Fundamentals of Software Architecture --- Mark Richards and Neal Ford book worth it" title="Review - Is Fundamentals of Software Architecture --- Mark Richards and Neal Ford book worth it" srcset="https://substackcdn.com/image/fetch/$s_!ZJKa!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e08e8f-f1bf-41c6-90de-61f468883c87_700x934.webp 424w, https://substackcdn.com/image/fetch/$s_!ZJKa!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e08e8f-f1bf-41c6-90de-61f468883c87_700x934.webp 848w, https://substackcdn.com/image/fetch/$s_!ZJKa!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e08e8f-f1bf-41c6-90de-61f468883c87_700x934.webp 1272w, https://substackcdn.com/image/fetch/$s_!ZJKa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e08e8f-f1bf-41c6-90de-61f468883c87_700x934.webp 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 aria-hidden="true" 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><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><div><hr></div><h3>4. <a href="https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable/dp/1449373321?tag=javamysqlanta-20">Designing Data-Intensive Applications by Martin Kleppmann</a></h3><p>This is the most comprehensive and technical book on the list --- often referred to as the <strong>Bible of modern system design</strong>.</p><p>Martin Kleppmann covers everything from data storage and replication to distributed systems, stream processing, and scalability.</p><p>It&#8217;s not an easy read, but it&#8217;s worth every page. The concepts here will make you see architecture in a whole new light.</p><p>If you pair this with <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fsystem-design-interview-prep%2F">Mastering the System Design Interview</a></strong> by Frank Kane (Ex-Amazon), you&#8217;ll not only understand how systems work but also how to explain them clearly in interviews.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable/dp/1449373321?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8asx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089d56df-9e62-411b-8f02-6da0add2b27e_700x919.webp 424w, https://substackcdn.com/image/fetch/$s_!8asx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089d56df-9e62-411b-8f02-6da0add2b27e_700x919.webp 848w, https://substackcdn.com/image/fetch/$s_!8asx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089d56df-9e62-411b-8f02-6da0add2b27e_700x919.webp 1272w, https://substackcdn.com/image/fetch/$s_!8asx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089d56df-9e62-411b-8f02-6da0add2b27e_700x919.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8asx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089d56df-9e62-411b-8f02-6da0add2b27e_700x919.webp" width="700" height="919" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/089d56df-9e62-411b-8f02-6da0add2b27e_700x919.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:919,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Review - Is Designing Data-Intensive Applications by Martin Kleppmann worth it?&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable/dp/1449373321?tag=javamysqlanta-20&quot;,&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="Review - Is Designing Data-Intensive Applications by Martin Kleppmann worth it?" title="Review - Is Designing Data-Intensive Applications by Martin Kleppmann worth it?" srcset="https://substackcdn.com/image/fetch/$s_!8asx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089d56df-9e62-411b-8f02-6da0add2b27e_700x919.webp 424w, https://substackcdn.com/image/fetch/$s_!8asx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089d56df-9e62-411b-8f02-6da0add2b27e_700x919.webp 848w, https://substackcdn.com/image/fetch/$s_!8asx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089d56df-9e62-411b-8f02-6da0add2b27e_700x919.webp 1272w, https://substackcdn.com/image/fetch/$s_!8asx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089d56df-9e62-411b-8f02-6da0add2b27e_700x919.webp 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 aria-hidden="true" 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><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><div><hr></div><h3>5. <a href="https://www.amazon.com/System-Design-Interview-insiders-Second/dp/B08CMF2CQF/?tag=javamysqlanta-20">System Design Interview - An Insider&#8217;s Guide</a></h3><p>Written by Alex Xu, this is the <strong>definitive book for system design interviews</strong>. The diagrams and step-by-step breakdowns are incredibly helpful for visual learners.</p><p>Even better, Alex has expanded this into an entire <strong><a href="https://bytebytego.com/?fpr=javarevisited">ByteByteGo platform</a></strong>, where you&#8217;ll find in-depth videos, frameworks, and new content like &#8220;Design YouTube&#8221; and &#8220;Design WhatsApp&#8221;.</p><p>If you&#8217;re actively preparing for system design interviews, this is a must-read --- and the <strong><a href="https://bytebytego.com/pricing?fpr=javarevisited">ByteByteGo lifetime plan</a></strong> is easily the best long-term value for continuous learning. They are also offering a <strong><a href="https://bytebytego.com/pricing?fpr=javarevisited">rare 50% discount now</a></strong>.</p><p>If you get the platform access, you will not just get the content of these two books but also all of their 7 books, including OOP Design, ML System Design, and Generative AI System, Coding interview patterns tec.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/System-Design-Interview-insiders-Second/dp/B08CMF2CQF/?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bYii!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F824bb919-76f4-4f0b-b015-1a6d278d3487_700x515.webp 424w, https://substackcdn.com/image/fetch/$s_!bYii!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F824bb919-76f4-4f0b-b015-1a6d278d3487_700x515.webp 848w, https://substackcdn.com/image/fetch/$s_!bYii!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F824bb919-76f4-4f0b-b015-1a6d278d3487_700x515.webp 1272w, https://substackcdn.com/image/fetch/$s_!bYii!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F824bb919-76f4-4f0b-b015-1a6d278d3487_700x515.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bYii!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F824bb919-76f4-4f0b-b015-1a6d278d3487_700x515.webp" width="700" height="515" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/824bb919-76f4-4f0b-b015-1a6d278d3487_700x515.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:515,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Review - Is System Design Interview --- An Insider's Guide worth it&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/System-Design-Interview-insiders-Second/dp/B08CMF2CQF/?tag=javamysqlanta-20&quot;,&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="Review - Is System Design Interview --- An Insider's Guide worth it" title="Review - Is System Design Interview --- An Insider's Guide worth it" srcset="https://substackcdn.com/image/fetch/$s_!bYii!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F824bb919-76f4-4f0b-b015-1a6d278d3487_700x515.webp 424w, https://substackcdn.com/image/fetch/$s_!bYii!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F824bb919-76f4-4f0b-b015-1a6d278d3487_700x515.webp 848w, https://substackcdn.com/image/fetch/$s_!bYii!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F824bb919-76f4-4f0b-b015-1a6d278d3487_700x515.webp 1272w, https://substackcdn.com/image/fetch/$s_!bYii!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F824bb919-76f4-4f0b-b015-1a6d278d3487_700x515.webp 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 aria-hidden="true" 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><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><div><hr></div><h3>6. <a href="https://www.amazon.com/Software-Engineering-Google-Lessons-Programming/dp/1492082791?tag=javamysqlanta-20">Software Engineering at Google</a></h3><p>This isn&#8217;t just a book about coding --- it&#8217;s a deep dive into how Google scales its engineering culture.</p><p>It discusses code health, team design, testing at scale, and the <strong>trade-offs</strong> engineers face every day. You&#8217;ll learn what &#8220;software engineering over time&#8221; really means and how Google balances velocity with quality.</p><p>It&#8217;s a must-read for senior developers and tech leads who want to grow beyond individual contribution and understand how massive systems evolve sustainably.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/Software-Engineering-Google-Lessons-Programming/dp/1492082791?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SbUe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15e751cc-7e00-4efd-85df-1eeda5a811ae_296x389.webp 424w, https://substackcdn.com/image/fetch/$s_!SbUe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15e751cc-7e00-4efd-85df-1eeda5a811ae_296x389.webp 848w, https://substackcdn.com/image/fetch/$s_!SbUe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15e751cc-7e00-4efd-85df-1eeda5a811ae_296x389.webp 1272w, https://substackcdn.com/image/fetch/$s_!SbUe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15e751cc-7e00-4efd-85df-1eeda5a811ae_296x389.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SbUe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15e751cc-7e00-4efd-85df-1eeda5a811ae_296x389.webp" width="430" height="565.1013513513514" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/15e751cc-7e00-4efd-85df-1eeda5a811ae_296x389.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:389,&quot;width&quot;:296,&quot;resizeWidth&quot;:430,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Review - Is Software Engineering at Google book worth it?&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/Software-Engineering-Google-Lessons-Programming/dp/1492082791?tag=javamysqlanta-20&quot;,&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="Review - Is Software Engineering at Google book worth it?" title="Review - Is Software Engineering at Google book worth it?" srcset="https://substackcdn.com/image/fetch/$s_!SbUe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15e751cc-7e00-4efd-85df-1eeda5a811ae_296x389.webp 424w, https://substackcdn.com/image/fetch/$s_!SbUe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15e751cc-7e00-4efd-85df-1eeda5a811ae_296x389.webp 848w, https://substackcdn.com/image/fetch/$s_!SbUe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15e751cc-7e00-4efd-85df-1eeda5a811ae_296x389.webp 1272w, https://substackcdn.com/image/fetch/$s_!SbUe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15e751cc-7e00-4efd-85df-1eeda5a811ae_296x389.webp 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 aria-hidden="true" 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><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><div><hr></div><h3>7. <a href="https://www.amazon.com/Clean-Architecture-Craftsmans-Software-Structure/dp/0134494164?tag=javamysqlanta-20">Clean Architecture</a></h3><p>Written by <strong>Robert C. Martin (Uncle Bob)</strong>, this is part of his legendary <a href="http://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882?tag=javamysqlanta-20">&#8220;Clean Code&#8221; trilogy</a>.</p><p>It focuses on designing systems that are flexible, testable, and easy to maintain --- all through timeless architectural principles.</p><p>This book is ideal for senior engineers transitioning into architectural roles. Combine it with <strong><a href="https://coursera.pxf.io/c/3294490/1164545/14726?u=https%3A%2F%2Fwww.coursera.org%2Fspecializations%2Fsoftware-design-architecture">Software Design and Architecture Specialization on Coursera</a></strong> for a practical, project-based approach to applying what you learn.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/Clean-Architecture-Craftsmans-Software-Structure/dp/0134494164?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-SVH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7981f9b-33db-4874-a409-8b3bcd2daf0e_237x310.webp 424w, https://substackcdn.com/image/fetch/$s_!-SVH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7981f9b-33db-4874-a409-8b3bcd2daf0e_237x310.webp 848w, https://substackcdn.com/image/fetch/$s_!-SVH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7981f9b-33db-4874-a409-8b3bcd2daf0e_237x310.webp 1272w, https://substackcdn.com/image/fetch/$s_!-SVH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7981f9b-33db-4874-a409-8b3bcd2daf0e_237x310.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-SVH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7981f9b-33db-4874-a409-8b3bcd2daf0e_237x310.webp" width="455" height="595.1476793248945" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f7981f9b-33db-4874-a409-8b3bcd2daf0e_237x310.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:310,&quot;width&quot;:237,&quot;resizeWidth&quot;:455,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Review - Is Clean Architecture by Uncle Bob Martin worth it? &quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/Clean-Architecture-Craftsmans-Software-Structure/dp/0134494164?tag=javamysqlanta-20&quot;,&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="Review - Is Clean Architecture by Uncle Bob Martin worth it? " title="Review - Is Clean Architecture by Uncle Bob Martin worth it? " srcset="https://substackcdn.com/image/fetch/$s_!-SVH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7981f9b-33db-4874-a409-8b3bcd2daf0e_237x310.webp 424w, https://substackcdn.com/image/fetch/$s_!-SVH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7981f9b-33db-4874-a409-8b3bcd2daf0e_237x310.webp 848w, https://substackcdn.com/image/fetch/$s_!-SVH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7981f9b-33db-4874-a409-8b3bcd2daf0e_237x310.webp 1272w, https://substackcdn.com/image/fetch/$s_!-SVH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7981f9b-33db-4874-a409-8b3bcd2daf0e_237x310.webp 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 aria-hidden="true" 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><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><div><hr></div><h3>Honorable Mentions (Also Worth Reading)</h3><p>Here are a few more books that I read and also deserve a mention for those who like to read books:</p><ul><li><p><strong><a href="https://www.amazon.com/Head-First-Design-Patterns-Object-Oriented-dp-149207800X/dp/149207800X/?tag=javamysqlanta-20">Head First Design Patterns</a></strong> --- Learn patterns the fun, visual way.</p></li><li><p><strong><a href="https://www.amazon.com/Hacking-System-Design-Interview-depth/dp/B0B7QHRK5Q?tag=javamysqlanta-20">Hacking the System Design Interview</a></strong> --- Great interview-oriented book by a Google engineer.</p></li><li><p><strong><a href="https://www.amazon.com/Systems-Analysis-Design-MindTap-Course-dp-0357117816/dp/0357117816?tag=javamysqlanta-20">System Analysis and Design by Scott Tilley</a></strong> --- Classic textbook on system lifecycle design.</p></li><li><p><strong><a href="https://www.amazon.com/Modern-Systems-Analysis-Design-9th/dp/0135172756?tag=javamysqlanta-20">Modern Systems Analysis and Design</a></strong> --- A complete reference for system modeling and documentation.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/Head-First-Design-Patterns-Object-Oriented-dp-149207800X/dp/149207800X/?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8qbY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9f86a09-7e49-43c8-9eaf-ced8176b4069_800x924.webp 424w, https://substackcdn.com/image/fetch/$s_!8qbY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9f86a09-7e49-43c8-9eaf-ced8176b4069_800x924.webp 848w, https://substackcdn.com/image/fetch/$s_!8qbY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9f86a09-7e49-43c8-9eaf-ced8176b4069_800x924.webp 1272w, https://substackcdn.com/image/fetch/$s_!8qbY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9f86a09-7e49-43c8-9eaf-ced8176b4069_800x924.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8qbY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9f86a09-7e49-43c8-9eaf-ced8176b4069_800x924.webp" width="800" height="924" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d9f86a09-7e49-43c8-9eaf-ced8176b4069_800x924.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:924,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;REview - Is Head First Design Pattern Book worth it&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/Head-First-Design-Patterns-Object-Oriented-dp-149207800X/dp/149207800X/?tag=javamysqlanta-20&quot;,&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="REview - Is Head First Design Pattern Book worth it" title="REview - Is Head First Design Pattern Book worth it" srcset="https://substackcdn.com/image/fetch/$s_!8qbY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9f86a09-7e49-43c8-9eaf-ced8176b4069_800x924.webp 424w, https://substackcdn.com/image/fetch/$s_!8qbY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9f86a09-7e49-43c8-9eaf-ced8176b4069_800x924.webp 848w, https://substackcdn.com/image/fetch/$s_!8qbY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9f86a09-7e49-43c8-9eaf-ced8176b4069_800x924.webp 1272w, https://substackcdn.com/image/fetch/$s_!8qbY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9f86a09-7e49-43c8-9eaf-ced8176b4069_800x924.webp 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 aria-hidden="true" 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><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>Bonus: Free eBook on Distributed Systems<br>Don&#8217;t miss this free resource from Microsoft: <strong><a href="https://info.microsoft.com/rs/157-GQE-382/images/EN-CNTNT-eBook-DesigningDistributedSystems.pdf">Designing Distributed Systems (Free eBook)</a></strong></p><div><hr></div><h3>Final Thoughts</h3><p>If I had to pick just <strong>one book</strong> to start with, it would be <em><a href="https://www.amazon.com/dp/1098134354?tag=javamysqlanta-20">Head First Software Architecture</a></em>. If you&#8217;re more advanced, go for <em><a href="https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable/dp/1449373321?tag=javamysqlanta-20">Designing Data-Intensive Applications</a></em> and <em><a href="https://www.amazon.com/Clean-Architecture-Craftsmans-Software-Structure/dp/0134494164?tag=javamysqlanta-20">Clean Architecture</a></em> back-to-back.</p><p>Books can give you depth, but pairing them with <strong>interactive courses</strong> and <strong>real-world design challenges</strong> from <a href="https://www.amazon.com/Clean-Architecture-Craftsmans-Software-Structure/dp/0134494164?tag=javamysqlanta-20">ByteByteGo</a>, <a href="https://www.amazon.com/Clean-Architecture-Craftsmans-Software-Structure/dp/0134494164?tag=javamysqlanta-20">DesignGuru</a>, or <a href="https://www.educative.io/subscription?affiliate_id=5073518643380224">Educative</a> will give you mastery.</p><p>Architecture isn&#8217;t about memorizing patterns --- it&#8217;s about understanding trade-offs and designing systems that evolve gracefully. These books helped me get there --- and I&#8217;m confident they&#8217;ll do the same for you.</p><p>All the best with your learning journey !!</p><blockquote><blockquote><p>If you want to do just one thing at this moment, I suggest going and reading** <em><strong><a href="https://www.amazon.com/dp/1098134354?tag=javamysqlanta-20">Head First Software Architecture</a>, you will thank me later.</strong></em></p></blockquote></blockquote><p></p><p>And, if you need more resources, here is my curated list of resource for Software Architecture and System Design development with special discount codes wherever possible. </p><ul><li><p><strong><a href="https://bytebytego.com/pricing?fpr=javarevisited">ByteByteGo Lifetime Plan (50% OFF)</a></strong></p></li><li><p><strong><a href="https://codemia.io/pricing?via=javarevisited">Codemia.io Lifetime Plan (60% OFF)</a></strong></p></li><li><p><strong><a href="https://www.tryexponent.com/upgrade/?ref=javinpaul2">Exponent Annual Plan (70% OFF)</a></strong></p></li><li><p><strong><a href="https://www.educative.io/subscription?affiliate_id=5073518643380224">Educative Premium Plus (55% OFF)</a></strong></p></li><li><p><strong><a href="https://designgurus.org/link/84Y9hP?url=https%3A%2F%2Fdesigngurus.org%2Fbundles%3Fbundle_id%3Dall-courses">DesignGurus All Course Bundle (55% OFF)</a></strong></p></li><li><p><strong><a href="https://javinpaul.gumroad.com/l/sowpfg">Everything Java Interview Bundle (50% OFF)</a></strong></p></li><li><p><strong><a href="http://shrsl.com/349rm">101 Blockchain (50% Discount)</a></strong></p></li><li><p><strong><a href="https://javarevisited.substack.com/subscribe?coupon=c1a71c58">Javarevisited Substack Subscription (50% OFF)</a></strong></p></li><li><p><strong><a href="https://coursera.pxf.io/c/3294490/1164545/14726?u=https%3A%2F%2Fwww.coursera.org%2Fcourseraplus%2Fspecial%2Fglobal-40-off-nov-2025">Coursera Plus (40% OFF)</a></strong></p></li><li><p><strong><a href="https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo">DataCamp  Sale (50% OFF)</a></strong></p></li><li><p><strong><a href="https://shareasale.com/r.cfm?b=1836542&amp;u=880419&amp;m=114505&amp;urllink=https%3A%2F%2Falgo%2Emonster%2Fsubscribe&amp;afftrack=">AlgoMonster Lifetime Plan (50% OFF)</a></strong></p></li></ul><blockquote><p><strong>P. S.</strong> -  On this Black Friday, I&#8217;m offering <strong><a href="https://javarevisited.substack.com/c1a71c58">50% OFF</a></strong> annual subscriptions. If you always wanted to join this is the best price you can join, its just $2  per month, less than a cup of coffee. Price will increase after Black Friday. </p></blockquote><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>]]></content:encoded></item><item><title><![CDATA[How ByteByteGo Helped Me Prepare for System Design Interviews in 2026]]></title><description><![CDATA[The current 50% Discount on ByteByteGo lifetime plan is the best investment you can do for your career.]]></description><link>https://javarevisited.substack.com/p/why-i-joined-bytebytego-for-system</link><guid isPermaLink="false">https://javarevisited.substack.com/p/why-i-joined-bytebytego-for-system</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Tue, 28 Jul 2026 15:31:57 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!UTNH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22d0c815-ac94-4da4-8877-3fea6183cb03_771x405.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p><strong>Preparing for System Design Interviews? Join ByteByteGo now for a structured preparation. They are also offering a rare <a href="https://bytebytego.com/pricing?fpr=javarevisited">50% discount</a> now on their lifetime plan</strong></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UTNH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22d0c815-ac94-4da4-8877-3fea6183cb03_771x405.png 424w, https://substackcdn.com/image/fetch/$s_!UTNH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22d0c815-ac94-4da4-8877-3fea6183cb03_771x405.png 848w, https://substackcdn.com/image/fetch/$s_!UTNH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22d0c815-ac94-4da4-8877-3fea6183cb03_771x405.png 1272w, https://substackcdn.com/image/fetch/$s_!UTNH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22d0c815-ac94-4da4-8877-3fea6183cb03_771x405.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UTNH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22d0c815-ac94-4da4-8877-3fea6183cb03_771x405.png" width="771" height="405" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/22d0c815-ac94-4da4-8877-3fea6183cb03_771x405.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:405,&quot;width&quot;:771,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:35534,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://bytebytego.com/?fpr=javarevisited&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/208847112?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22d0c815-ac94-4da4-8877-3fea6183cb03_771x405.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_!UTNH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22d0c815-ac94-4da4-8877-3fea6183cb03_771x405.png 424w, https://substackcdn.com/image/fetch/$s_!UTNH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22d0c815-ac94-4da4-8877-3fea6183cb03_771x405.png 848w, https://substackcdn.com/image/fetch/$s_!UTNH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22d0c815-ac94-4da4-8877-3fea6183cb03_771x405.png 1272w, https://substackcdn.com/image/fetch/$s_!UTNH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22d0c815-ac94-4da4-8877-3fea6183cb03_771x405.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 aria-hidden="true" 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><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>Hello guys, preparing for coding interviews in 2026 is more challenging than ever. With companies expecting candidates to not only solve problems quickly but also explain trade-offs, patterns, and scalability, having the right preparation resource is crucial. </p><p>That&#8217;s where <strong><a href="https://bytebytego.com/?fpr=javarevisited">ByteByteGo</a></strong> shines. If you&#8217;ve been following interview trends, you&#8217;ll notice that top tech companies now focus less on memorization and more on how well you understand <strong>patterns of problem-solving</strong>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>Instead of just practi<strong>cing 500 random LeetCode problems</strong>, engineers are expected to recognize underlying patterns and apply them to new situations.</p><p><a href="https://bytebytego.com/?fpr=javarevisited">ByteByteGo</a> has designed its platform around this very idea&#8212;<strong>master the patterns, not the problems.</strong></p><p>Let&#8217;s dive into why ByteByteGo is an excellent choice to learn coding interview patterns in 2026.</p><h2>1. Pattern-Based Learning, Not Random Practice</h2><p>Many candidates waste months solving hundreds of questions but fail to perform well in interviews because they don&#8217;t see the connections between problems. <a href="https://bytebytego.com/?fpr=javarevisited">ByteByteGo </a>organizes questions into <strong>core patterns</strong> like </p><ul><li><p>sliding window, </p></li><li><p>fast and  slow pointers, </p></li><li><p>hashmap and hashset</p></li><li><p>prefix sum</p></li><li><p>binary search, </p></li><li><p>backtracking, </p></li><li><p>dynamic programming, </p></li><li><p>and graph traversal.</p></li></ul><p>By learning these patterns, you can:</p><ul><li><p>Recognize problems faster in interviews.</p></li><li><p>Apply templates and approaches with confidence.</p></li><li><p>Tackle unseen problems without panic.</p></li></ul><p>They also created a set of most frequently asked questions from <a href="https://www.google.com/search?ved=1t:260882&amp;q=define+FAANG+companies&amp;bbid=8712770457197348465&amp;bpid=4077936228265536470">FAANG</a> and other companies, known as <strong><a href="https://bytebytego.com/exercises/coding-patterns?fpr=javarevisited">ByteByteGo 101</a></strong> which is similar to <strong><a href="https://shareasale.com/r.cfm?b=1836542&amp;u=880419&amp;m=114505&amp;urllink=https%3A%2F%2Falgo.monster%2F&amp;afftrack=">AlgoMonster&#8217;s Monster 50</a></strong>, <a href="https://www.educative.io/path/educative-99-in-java-accelerate-your-coding-interview-prep?affiliate_id=5073518643380224">Educative-99</a> and NeetCode&#8217;s Blind 75 and but more comprehensive and well organized on 19 patterns.</p><p>This organizing questions based upon coding interview patterns like <a href="https://bytebytego.com/courses/coding-patterns/two-pointers/introduction-to-two-pointers?fpr=javarevisited">two pointers</a>, fast and slow pointers, sliding window and binary search separates ByteByteGo 101 from others.</p><p>You can see full list of patterns and coding interview questions <a href="https://bytebytego.com/exercises/coding-patterns?fpr=javarevisited">here</a>, in fact, you can even solve them online using their excellent coding IDE, I really loved it.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/exercises/coding-patterns?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uldb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b973e2a-1108-4a5a-a050-ea92389e27db_619x695.png 424w, https://substackcdn.com/image/fetch/$s_!uldb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b973e2a-1108-4a5a-a050-ea92389e27db_619x695.png 848w, https://substackcdn.com/image/fetch/$s_!uldb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b973e2a-1108-4a5a-a050-ea92389e27db_619x695.png 1272w, https://substackcdn.com/image/fetch/$s_!uldb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b973e2a-1108-4a5a-a050-ea92389e27db_619x695.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uldb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b973e2a-1108-4a5a-a050-ea92389e27db_619x695.png" width="724" height="812.8917609046849" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9b973e2a-1108-4a5a-a050-ea92389e27db_619x695.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:695,&quot;width&quot;:619,&quot;resizeWidth&quot;:724,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bytebytego.com/exercises/coding-patterns?fpr=javarevisited&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!uldb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b973e2a-1108-4a5a-a050-ea92389e27db_619x695.png 424w, https://substackcdn.com/image/fetch/$s_!uldb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b973e2a-1108-4a5a-a050-ea92389e27db_619x695.png 848w, https://substackcdn.com/image/fetch/$s_!uldb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b973e2a-1108-4a5a-a050-ea92389e27db_619x695.png 1272w, https://substackcdn.com/image/fetch/$s_!uldb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b973e2a-1108-4a5a-a050-ea92389e27db_619x695.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 aria-hidden="true" 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><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>When you submit, they also evaluate your solution with existing test cases which not just check whether your solution handles edge cases but also <strong>performance issues</strong> like how would your solution perform<strong> if given an array with 1 million or 10 million elements.</strong></p><p>This is important because many times it happens to me that I managed to solve the question but few test cases were failing due to timeout. At that time, optimizing your solution to use the right data structure plays a crucial role.</p><p>I once lost the one big interview because of that, where I couldn&#8217;t use max-heap on time instead of simple solution of finding max.</p><p>The good thing is that they are now offering<strong> <a href="https://bytebytego.com/pricing?fpr=javarevisited">50% discount now</a></strong><a href="https://bytebytego.com/pricing?fpr=javarevisited"> </a>on their lifetime plan which you can now get for few hundred dollars.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/pricing?fpr=javarevisitedhttps://bytebytego.com/pricing?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qlJ4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0922bea-15ac-4c30-b20e-b8f26420a503_598x286.png 424w, https://substackcdn.com/image/fetch/$s_!qlJ4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0922bea-15ac-4c30-b20e-b8f26420a503_598x286.png 848w, https://substackcdn.com/image/fetch/$s_!qlJ4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0922bea-15ac-4c30-b20e-b8f26420a503_598x286.png 1272w, https://substackcdn.com/image/fetch/$s_!qlJ4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0922bea-15ac-4c30-b20e-b8f26420a503_598x286.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qlJ4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0922bea-15ac-4c30-b20e-b8f26420a503_598x286.png" width="728" height="348.17391304347825" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a0922bea-15ac-4c30-b20e-b8f26420a503_598x286.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:286,&quot;width&quot;:598,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bytebytego.com/pricing?fpr=javarevisitedhttps://bytebytego.com/pricing?fpr=javarevisited&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!qlJ4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0922bea-15ac-4c30-b20e-b8f26420a503_598x286.png 424w, https://substackcdn.com/image/fetch/$s_!qlJ4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0922bea-15ac-4c30-b20e-b8f26420a503_598x286.png 848w, https://substackcdn.com/image/fetch/$s_!qlJ4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0922bea-15ac-4c30-b20e-b8f26420a503_598x286.png 1272w, https://substackcdn.com/image/fetch/$s_!qlJ4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0922bea-15ac-4c30-b20e-b8f26420a503_598x286.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 aria-hidden="true" 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><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 the best investment I have made this year as I always found myself referring to ByteByteGo material for interview and learning purposes.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share&quot;,&quot;text&quot;:&quot;Share Javarevisited Newsletter&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://javarevisited.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share"><span>Share Javarevisited Newsletter</span></a></p><h2>2. Visual Explanations That Stick</h2><p><a href="https://bytebytego.com?fpr=javarevisited">ByteByteGo</a> is known for its <strong>visual learning approach</strong>. Instead of walls of text, concepts are explained through diagrams, animations, and step-by-step illustrations.</p><p>This matters because:</p><ul><li><p>You retain patterns better when you see them.</p></li><li><p>Complex algorithms like dynamic programming or graph shortest paths are easier to digest visually.</p></li><li><p>You can revise quickly before interviews without reading bulky notes.</p></li></ul><p>If you go through their coding interview course, you will find that their<strong> <a href="https://bytebytego.com/courses/coding-patterns/two-pointers/introduction-to-two-pointers?fpr=javarevisited">two-pointers pattern explanation</a></strong> is one of the best you can find online. </p><p>Even though I know this pattern before, I understood it much better after going through their tutorial, its actually free and you can go ahead and check it out <a href="https://bytebytego.com/courses/coding-patterns/two-pointers/introduction-to-two-pointers?fpr=javarevisited">here</a>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/courses/coding-patterns/two-pointers/introduction-to-two-pointers?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8wll!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc585aae-05ce-406f-94c4-93e879e987f5_621x957.png 424w, https://substackcdn.com/image/fetch/$s_!8wll!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc585aae-05ce-406f-94c4-93e879e987f5_621x957.png 848w, https://substackcdn.com/image/fetch/$s_!8wll!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc585aae-05ce-406f-94c4-93e879e987f5_621x957.png 1272w, https://substackcdn.com/image/fetch/$s_!8wll!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc585aae-05ce-406f-94c4-93e879e987f5_621x957.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8wll!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc585aae-05ce-406f-94c4-93e879e987f5_621x957.png" width="724" height="1115.729468599034" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cc585aae-05ce-406f-94c4-93e879e987f5_621x957.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:957,&quot;width&quot;:621,&quot;resizeWidth&quot;:724,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bytebytego.com/courses/coding-patterns/two-pointers/introduction-to-two-pointers?fpr=javarevisited&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!8wll!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc585aae-05ce-406f-94c4-93e879e987f5_621x957.png 424w, https://substackcdn.com/image/fetch/$s_!8wll!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc585aae-05ce-406f-94c4-93e879e987f5_621x957.png 848w, https://substackcdn.com/image/fetch/$s_!8wll!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc585aae-05ce-406f-94c4-93e879e987f5_621x957.png 1272w, https://substackcdn.com/image/fetch/$s_!8wll!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc585aae-05ce-406f-94c4-93e879e987f5_621x957.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 aria-hidden="true" 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><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><div><hr></div><h2>3. Covers Both Coding and System Design</h2><p>Most platforms like <a href="https://shareasale.com/r.cfm?b=1836542&amp;u=880419&amp;m=114505&amp;urllink=https%3A%2F%2Falgo.monster%2F&amp;afftrack=">AlgoMonster</a> only focus on <strong>DSA problems</strong>, but <a href="https://bytebytego.com?fpr=javarevisited">ByteByteGo</a> goes further&#8212;it also includes <strong>system design patterns and case studies</strong>.</p><p>That means:</p><ul><li><p>You can prepare for both rounds (coding + system design) in one place.</p></li><li><p>You&#8217;ll learn scalable architectures, design trade-offs, and real-world systems.</p></li><li><p>You won&#8217;t need multiple subscriptions for interview prep.</p></li></ul><p>In fact they have recently updated the website to include content of all of their popular <strong><a href="https://www.amazon.com/System-Design-Interview-insiders-Second/dp/B08CMF2CQF/?tag=javamysqlanta-20">7 coding interview books</a></strong> which means you cannot just learn coding patterns but also System Design, OOP Design, Machine Learning System Design, and Generative AI System Design.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/System-Design-Interview-insiders-Second/dp/B08CMF2CQF/?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7u0m!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea4b98ac-4f2c-43ee-92ec-93a3fdd5f64b_524x741.png 424w, https://substackcdn.com/image/fetch/$s_!7u0m!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea4b98ac-4f2c-43ee-92ec-93a3fdd5f64b_524x741.png 848w, https://substackcdn.com/image/fetch/$s_!7u0m!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea4b98ac-4f2c-43ee-92ec-93a3fdd5f64b_524x741.png 1272w, https://substackcdn.com/image/fetch/$s_!7u0m!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea4b98ac-4f2c-43ee-92ec-93a3fdd5f64b_524x741.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7u0m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea4b98ac-4f2c-43ee-92ec-93a3fdd5f64b_524x741.png" width="724" height="1023.824427480916" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ea4b98ac-4f2c-43ee-92ec-93a3fdd5f64b_524x741.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:741,&quot;width&quot;:524,&quot;resizeWidth&quot;:724,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/System-Design-Interview-insiders-Second/dp/B08CMF2CQF/?tag=javamysqlanta-20&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!7u0m!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea4b98ac-4f2c-43ee-92ec-93a3fdd5f64b_524x741.png 424w, https://substackcdn.com/image/fetch/$s_!7u0m!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea4b98ac-4f2c-43ee-92ec-93a3fdd5f64b_524x741.png 848w, https://substackcdn.com/image/fetch/$s_!7u0m!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea4b98ac-4f2c-43ee-92ec-93a3fdd5f64b_524x741.png 1272w, https://substackcdn.com/image/fetch/$s_!7u0m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea4b98ac-4f2c-43ee-92ec-93a3fdd5f64b_524x741.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 aria-hidden="true" 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><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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.com/p/why-i-joined-bytebytego-for-system?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://javarevisited.substack.com/p/why-i-joined-bytebytego-for-system?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><h2>4. Updated for 2026 Interview Trends</h2><p><a href="https://bytebytego.com?fpr=javarevisited">ByteByteGo</a> isn&#8217;t static&#8212;it continues to add new interview problems, emerging patterns, and updated system design case studies that reflect what top companies ask in 2026.</p><p>This keeps you ahead because:</p><ul><li><p>You&#8217;re not stuck learning outdated approaches.</p></li><li><p>You can practice the kind of problems that FAANG+ companies are asking today.</p></li></ul><p>A good example of that is their recent update on content where they have added content on object oriented design, Machine Learning System Design, Coding Interview Patterns as well as Generative AI System Design.</p><p>The best thing about the platform is that once you <strong><a href="https://bytebytego.com/pricing?fpr=javarevisited">join the platform for lifetime</a></strong> then all the updates are free, you will be receiving all the new content for free.</p><p>You will always be getting the right content for your interview preparation, no matter whether you are preparing now or in 2026, 2027 or a couple of years letter because ByteByteGo will be updating their content to meet current interview trends.</p><h2>5. Lifetime Value That Pays for Itself</h2><p>One of the reasons I personally joined <a href="https://bytebytego.com/pricing?fpr=javarevisited">ByteByteGo&#8217;s </a><strong><a href="https://bytebytego.com/pricing?fpr=javarevisited">lifetime plan</a></strong><a href="https://bytebytego.com/pricing?fpr=javarevisited"> </a>is simple: interview prep is not a one-time activity. </p><p>Whether you&#8217;re switching jobs every few years, preparing for promotions, or brushing up on system design, these resources are something you&#8217;ll revisit often.</p><p>Yes, the lifetime plan costs about <strong>2&#8211;3 times the annual plan</strong>, but when you think long term, it&#8217;s easily worth it. Instead of renewing every year, I now have permanent access to their growing library.</p><p>In 2026, just grinding random LeetCode problems isn&#8217;t enough. You need to master <strong>patterns, visualization, and real-world system design</strong> to stand out in interviews. ByteByteGo is one of the few resources that brings all of this together in a structured, practical, and visual way.</p><p>If you&#8217;re serious about cracking coding and system design interviews, <strong>joining ByteByteGo is one of the best investments you can make in your career.</strong></p><p><strong>And the best thing </strong>is that they are now offering <a href="https://bytebytego.com/?fpr=javarevisited">50% discount now </a>on their lifetime plan which you can now get for few hundred dollars. </p><p>As I said before, this is the best investment I have made this year as I always found myself referring to ByteByteGo material for interview and learning purposes.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hey9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc249aa3d-a3c2-4a49-a319-cffe4441a537_621x297.png 424w, https://substackcdn.com/image/fetch/$s_!hey9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc249aa3d-a3c2-4a49-a319-cffe4441a537_621x297.png 848w, https://substackcdn.com/image/fetch/$s_!hey9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc249aa3d-a3c2-4a49-a319-cffe4441a537_621x297.png 1272w, https://substackcdn.com/image/fetch/$s_!hey9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc249aa3d-a3c2-4a49-a319-cffe4441a537_621x297.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hey9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc249aa3d-a3c2-4a49-a319-cffe4441a537_621x297.png" width="724" height="346.2608695652174" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c249aa3d-a3c2-4a49-a319-cffe4441a537_621x297.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:297,&quot;width&quot;:621,&quot;resizeWidth&quot;:724,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bytebytego.com/?fpr=javarevisited&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!hey9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc249aa3d-a3c2-4a49-a319-cffe4441a537_621x297.png 424w, https://substackcdn.com/image/fetch/$s_!hey9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc249aa3d-a3c2-4a49-a319-cffe4441a537_621x297.png 848w, https://substackcdn.com/image/fetch/$s_!hey9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc249aa3d-a3c2-4a49-a319-cffe4441a537_621x297.png 1272w, https://substackcdn.com/image/fetch/$s_!hey9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc249aa3d-a3c2-4a49-a319-cffe4441a537_621x297.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 aria-hidden="true" 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><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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.com/p/why-i-joined-bytebytego-for-system?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://javarevisited.substack.com/p/why-i-joined-bytebytego-for-system?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><h2>ByteByteGo vs. Other Coding Interview Resources (Comparison)</h2><p>Now, let&#8217;s see how does ByteByteGo compares with other established resources for coding interview precreation like <a href="https://medium.com/javarevisited/15-essential-coding-interview-patterns-to-solve-100-leetcode-problems-47797d3bdd44">LeetCode</a>, <a href="https://www.google.com/search?ved=1t:260882&amp;q=HackerRank+coding+platform&amp;bbid=8712770457197348465&amp;bpid=4077936228265536470">HackerRank</a>, <a href="https://medium.com/javarevisited/algomonster-50-off-is-it-worth-it-for-faang-interview-prep-6c10cfcc8a6a">AlgoMonster</a>, and <a href="https://medium.com/javarevisited/bytebytego-neetcode-or-educative-io-which-system-design-course-is-best-for-2025-cd06428b3e6e">Educative</a>.</p><p>Here&#8217;s a <strong>point-based comparison</strong> to show why ByteByteGo stands out in 2026:</p><ol><li><p><strong>Learning Approach</strong></p><ul><li><p><em>LeetCode / HackerRank</em>: Focuses on brute-force practice, lots of problems but limited pattern-based explanations.</p></li><li><p><em>ByteByteGo</em>: Teaches reusable <strong>patterns</strong> with clear explanations and problem variations.</p></li></ul></li><li><p><strong>Explanations &amp; Visuals</strong></p><ul><li><p><em>Most resources</em>: Text-heavy, often difficult to understand without prior context.</p></li><li><p><em>ByteByteGo</em>: Uses <strong><a href="https://www.google.com/search?ved=1t:260882&amp;q=visual+diagrams+learning&amp;bbid=8712770457197348465&amp;bpid=4077936228265536470">visual diagrams</a></strong> to simplify complex algorithms and system design concepts.</p></li></ul></li><li><p><strong>System Design Coverage</strong></p><ul><li><p><em>Leetcode &amp; Algo-only platforms</em>: Rarely cover system design in depth.</p></li><li><p><em>ByteByteGo</em>: Has <strong>dedicated system design courses</strong>&#8212;essential for mid/senior engineers.</p></li></ul></li><li><p><strong>Longevity of Learning</strong></p><ul><li><p><em>Other sites</em>: Focused on solving today&#8217;s problem lists, which may change over time.</p></li><li><p><em>ByteByteGo</em>: Focuses on <strong><a href="https://www.google.com/search?ved=1t:260882&amp;q=evergreen+patterns+software+development&amp;bbid=8712770457197348465&amp;bpid=4077936228265536470">evergreen patterns</a></strong> that stay relevant across years.</p></li></ul></li><li><p><strong>Value for Money</strong></p><ul><li><p><em>Single-platform subscriptions</em>: Often force you into monthly/annual payments.</p></li><li><p><em><a href="https://bytebytego.com/pricing?fpr=javarevisited">ByteByteGo Lifetime Plan</a></em>: One-time investment, <strong>forever access</strong> to all updates.</p></li></ul></li></ol><p>Here is also a <strong><a href="https://bytebytego.com/exercises/coding-patterns?fpr=javarevisited">nice cheat sheet from ByteByteGo to remember 16 essential coding patterns</a></strong> for coding interview, I really love their visual style which makes the knowledge stick with you longer than usual learning.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/exercises/coding-patterns?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hNWF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa696dc06-c5d7-4e29-ac3b-4a9f8f81be6b_588x697.png 424w, https://substackcdn.com/image/fetch/$s_!hNWF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa696dc06-c5d7-4e29-ac3b-4a9f8f81be6b_588x697.png 848w, https://substackcdn.com/image/fetch/$s_!hNWF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa696dc06-c5d7-4e29-ac3b-4a9f8f81be6b_588x697.png 1272w, https://substackcdn.com/image/fetch/$s_!hNWF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa696dc06-c5d7-4e29-ac3b-4a9f8f81be6b_588x697.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hNWF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa696dc06-c5d7-4e29-ac3b-4a9f8f81be6b_588x697.png" width="728" height="862.952380952381" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a696dc06-c5d7-4e29-ac3b-4a9f8f81be6b_588x697.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:697,&quot;width&quot;:588,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bytebytego.com/exercises/coding-patterns?fpr=javarevisited&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!hNWF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa696dc06-c5d7-4e29-ac3b-4a9f8f81be6b_588x697.png 424w, https://substackcdn.com/image/fetch/$s_!hNWF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa696dc06-c5d7-4e29-ac3b-4a9f8f81be6b_588x697.png 848w, https://substackcdn.com/image/fetch/$s_!hNWF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa696dc06-c5d7-4e29-ac3b-4a9f8f81be6b_588x697.png 1272w, https://substackcdn.com/image/fetch/$s_!hNWF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa696dc06-c5d7-4e29-ac3b-4a9f8f81be6b_588x697.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 aria-hidden="true" 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><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>Final Thoughts</h2><p>If you&#8217;re preparing for coding interviews in 2026, <strong>pattern-based learning is the most effective strategy</strong>. <a href="https://bytebytego.com?fpr=javarevisited">ByteByteGo</a> not only helps you <strong>master problem-solving frameworks</strong> but also prepares you for <strong>system design</strong>, which is a must for senior roles.</p><p>I personally chose the <strong><a href="https://bytebytego.com/pricing?fpr=javarevisited">lifetime plan</a></strong> because it costs only 2&#8211;3x the <a href="https://medium.com/javarevisited/bytebytego-annual-plan-or-lifetime-plan-which-is-best-for-system-design-interviews-cbd1a8c68bcf?source=user_profile_page---------5-------------bb36d8439904----------------------">annual plan</a>, yet ensures I&#8217;ll always have access to updated patterns and system design material whenever I need to refresh before an interview.</p><p>Considering how often engineers switch jobs or prepare for promotions, this makes it a long-term investment rather than just a one-year subscription.</p><p>In short: If you want to move beyond memorizing problems and truly master coding interview patterns, <strong><a href="https://bytebytego.com?fpr=javarevisited">ByteByteGo</a> </strong>is one of the smartest choices you can make in 2026 and given their <strong><a href="https://bytebytego.com/pricing?fpr=javarevisited">50% discount offer</a></strong> now, its almost no brainer to get their lifetime plan and secure access for life.</p><p>All the best for your System Design Interviews, if you have any doubts or questions, feel free to ask in the comments.</p><p><em><strong>P. S. &#8212; </strong>If you just want to do one thing at this moment, go <strong><a href="https://bytebytego.com/?fpr=javarevisited">join ByteByteGo</a> </strong>and start learning System Design and Coding Interview concepts, you will thank me later. It&#8217;s one of the most comprehensive resource for system design interview now covering OOP Design, <a href="https://www.google.com/search?ved=1t:260882&amp;q=Machine+Learning+System+Design&amp;bbid=8712770457197348465&amp;bpid=4077936228265536470">ML Design</a>, <a href="https://www.google.com/search?ved=1t:260882&amp;q=Generative+AI+System+Design&amp;bbid=8712770457197348465&amp;bpid=4077936228265536470">Gen AI Design</a> and traditional System Design.</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>]]></content:encoded></item><item><title><![CDATA[Managing Transactions Across Microservices: Patterns Every Developer Should Know]]></title><description><![CDATA[3 Ways to Manage Transactions in Distributed Systems and Microservices]]></description><link>https://javarevisited.substack.com/p/how-to-manage-transactions-in-distributed</link><guid isPermaLink="false">https://javarevisited.substack.com/p/how-to-manage-transactions-in-distributed</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Mon, 27 Jul 2026 15:47:57 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!bVI5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aa07d17-6b94-43f4-85af-aa65ed989614_700x564.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h3>&#128073;<a href="https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo">Datacamp 50% OFF (Sponsored)</a></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!R92M!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 424w, https://substackcdn.com/image/fetch/$s_!R92M!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 848w, https://substackcdn.com/image/fetch/$s_!R92M!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 1272w, https://substackcdn.com/image/fetch/$s_!R92M!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!R92M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png" width="1200" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:395035,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/193475530?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!R92M!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 424w, https://substackcdn.com/image/fetch/$s_!R92M!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 848w, https://substackcdn.com/image/fetch/$s_!R92M!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 1272w, https://substackcdn.com/image/fetch/$s_!R92M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.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 aria-hidden="true" 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><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>Looking to break into Data Science or AI? Join DataCamp today for hands-on learning. They&#8217;re currently offering an incredible 50% discount on their annual plans.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo&quot;,&quot;text&quot;:&quot;Join Now for 50% OFF&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo"><span>Join Now for 50% OFF</span></a></p><div><hr></div><p>Hello guys, if you are preparing for Microservices interview question then you may know that<em> how do you manage transactions in a distributed system or Microservices?</em> is one of the <strong>popular Microservice interview question</strong> and why not, its one of the important concept.</p><p>In the past, I have shared <em><a href="https://reactjava.substack.com/p/the-10-microservices-best-practices">essential Microservices design principles and best practices</a></em> as well popular <a href="https://reactjava.substack.com/p/microservices-are-mess-without-these">Microservices design patterns</a> and in this article, I will answer this question and also tell you different ways to handle transactions in distributed system.</p><p>If you have worked in Microservices architecture, then you know that a single business transaction often spans to multiple microservices and it that&#8217;s why its challenging to ensure data consistency and manage transactions.</p><blockquote><p><em>A poorly managed transaction can lead to data inconsistencies, lost updates, or duplicate records, which can have serious consequences for the business.</em></p></blockquote><p>Therefore, it is crucial to have a robust transaction management system in place to ensure the reliability of the system.</p><p>In this article, we will explore v<strong>arious strategies and best practices for managing transactions in distributed systems and microservices.</strong> We will discuss the challenges associated with distributed transactions and how to overcome them, including two-phase commit and saga patterns.</p><p>Additionally, we will cover the different transaction management mechanisms provided by popular microservices frameworks, such as Spring Cloud and Apache Kafka.</p><p>By the end of this article, you will have a clear understanding of how to manage transactions in your distributed system and ensure the reliability and consistency of your data.</p><p>By the way, if you are new to Microservice architecture or just want to revise key Microservice concepts and looking for resources then here are few online courses you can join:</p><ul><li><p><strong><a href="https://www.designgurus.io/course/grokking-microservices-design-patterns?aff=84Y9hP">Grokking Microservices Design Patterns</a> [DesignGuru.io]</strong></p></li><li><p><strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fmicroservices-with-spring-boot-and-spring-cloud%2F">Master Microservices with Spring Boot and Spring Cloud</a></strong> <strong>[Udemy]</strong></p></li><li><p><strong><a href="https://coursera.pxf.io/c/3294490/1164545/14726?u=https%3A%2F%2Fwww.coursera.org%2Flearn%2Fgoogle-cloud-java-spring">Building Scalable Java Microservices with Spring Boot</a></strong> <strong>[Coursera]</strong></p></li><li><p><strong><a href="https://www.educative.io/courses/developing-microservices-with-spring-boot?affiliate_id=5073518643380224">Developing Microservices with Spring Boot</a></strong> <strong>[Educative]</strong></p></li><li><p><strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fmaster-microservices-with-spring-docker-kubernetes%2F">Master Microservices with Java, Spring, Docker, Kubernetes</a></strong> <strong>[Udemy]</strong></p></li></ul><p>This list includes both video and text-based courses as well as project based courses for hands-on learning, you can join one or a couple of them to revise Microservices concepts. If you need more choices, you can see the below articles:</p><p>And, if you need more choices, you can also checkout following resources:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bVI5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aa07d17-6b94-43f4-85af-aa65ed989614_700x564.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bVI5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aa07d17-6b94-43f4-85af-aa65ed989614_700x564.png 424w, https://substackcdn.com/image/fetch/$s_!bVI5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aa07d17-6b94-43f4-85af-aa65ed989614_700x564.png 848w, https://substackcdn.com/image/fetch/$s_!bVI5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aa07d17-6b94-43f4-85af-aa65ed989614_700x564.png 1272w, https://substackcdn.com/image/fetch/$s_!bVI5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aa07d17-6b94-43f4-85af-aa65ed989614_700x564.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bVI5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aa07d17-6b94-43f4-85af-aa65ed989614_700x564.png" width="700" height="564" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2aa07d17-6b94-43f4-85af-aa65ed989614_700x564.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:564,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;How to manage transactions in Distributed Systems and Microservices?&quot;,&quot;title&quot;:&quot;How to manage transactions in Distributed Systems and Microservices?&quot;,&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="How to manage transactions in Distributed Systems and Microservices?" title="How to manage transactions in Distributed Systems and Microservices?" srcset="https://substackcdn.com/image/fetch/$s_!bVI5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aa07d17-6b94-43f4-85af-aa65ed989614_700x564.png 424w, https://substackcdn.com/image/fetch/$s_!bVI5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aa07d17-6b94-43f4-85af-aa65ed989614_700x564.png 848w, https://substackcdn.com/image/fetch/$s_!bVI5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aa07d17-6b94-43f4-85af-aa65ed989614_700x564.png 1272w, https://substackcdn.com/image/fetch/$s_!bVI5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aa07d17-6b94-43f4-85af-aa65ed989614_700x564.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 aria-hidden="true" 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><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 Ways to Manage Transactions in Distributed Systems and Microservices?</h2><p>As I said, managing transactions in distributed systems and microservices can be a complex task due to the distributed nature of the system. In real world, Transactions are critical in ensuring data consistency and integrity in distributed systems where multiple services need to collaborate and share data.</p><p>One of the most popular approach to managing transactions in distributed systems is to use a <strong>two-phase commit protocol (2PC)</strong>. In this protocol, a <strong>transaction coordinator </strong>is responsible for ensuring that all participants in the transaction agree to commit the transaction.</p><p>The coordinator first sends a &#8220;prepare to commit&#8221; message to all participants, and if all participants respond positively, it sends a &#8220;commit&#8221; message to all participants.</p><p>If any participant responds negatively, the coordinator sends an &#8220;abort&#8221; message to all participants, and the transaction is rolled back.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hcdn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1126efa8-8816-40aa-951e-481ededf7c9b_474x396.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hcdn!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1126efa8-8816-40aa-951e-481ededf7c9b_474x396.gif 424w, https://substackcdn.com/image/fetch/$s_!hcdn!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1126efa8-8816-40aa-951e-481ededf7c9b_474x396.gif 848w, https://substackcdn.com/image/fetch/$s_!hcdn!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1126efa8-8816-40aa-951e-481ededf7c9b_474x396.gif 1272w, https://substackcdn.com/image/fetch/$s_!hcdn!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1126efa8-8816-40aa-951e-481ededf7c9b_474x396.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hcdn!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1126efa8-8816-40aa-951e-481ededf7c9b_474x396.gif" width="474" height="396" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1126efa8-8816-40aa-951e-481ededf7c9b_474x396.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:396,&quot;width&quot;:474,&quot;resizeWidth&quot;:474,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&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;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!hcdn!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1126efa8-8816-40aa-951e-481ededf7c9b_474x396.gif 424w, https://substackcdn.com/image/fetch/$s_!hcdn!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1126efa8-8816-40aa-951e-481ededf7c9b_474x396.gif 848w, https://substackcdn.com/image/fetch/$s_!hcdn!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1126efa8-8816-40aa-951e-481ededf7c9b_474x396.gif 1272w, https://substackcdn.com/image/fetch/$s_!hcdn!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1126efa8-8816-40aa-951e-481ededf7c9b_474x396.gif 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 aria-hidden="true" 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><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>However, <strong>2 Phase Commit can be a performance bottleneck </strong>and can lead to reduced availability in the system. An alternative approach is to use a <strong>compensation-based transaction protoco</strong>l. In this protocol, each participant in the transaction is responsible for compensating for any effects of the transaction if it fails.</p><p>This approach is more flexible and can be faster and more scalable than 2PC, but it requires careful design of the compensating actions.</p><p>Other techniques for managing transactions in distributed systems include <a href="https://medium.com/javarevisited/what-is-saga-pattern-in-microservice-architecture-which-problem-does-it-solve-de45d7d01d2b">Saga Pattern</a> and Event sourcing. <strong><a href="https://medium.com/javarevisited/difference-between-saga-and-cqrs-design-patterns-in-microservices-acd1729a6b02">Saga</a> </strong>is a transactional pattern that uses a sequence of local transactions to achieve a global transaction.</p><p>On the other hand, <strong>Event sourcing</strong> involves storing all changes to the system&#8217;s state as a sequence of events, rather than the current state, which can simplify transaction management.</p><p>In Microservices architecture, it is essential to ensure that each Microservice&#8217;s transactional boundaries are correctly defined to avoid inconsistent data updates across multiple services.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9btd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12f6cdf1-53ae-4187-862d-834e77b2a30c_700x447.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9btd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12f6cdf1-53ae-4187-862d-834e77b2a30c_700x447.jpeg 424w, https://substackcdn.com/image/fetch/$s_!9btd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12f6cdf1-53ae-4187-862d-834e77b2a30c_700x447.jpeg 848w, https://substackcdn.com/image/fetch/$s_!9btd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12f6cdf1-53ae-4187-862d-834e77b2a30c_700x447.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!9btd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12f6cdf1-53ae-4187-862d-834e77b2a30c_700x447.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9btd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12f6cdf1-53ae-4187-862d-834e77b2a30c_700x447.jpeg" width="700" height="447" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/12f6cdf1-53ae-4187-862d-834e77b2a30c_700x447.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:447,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!9btd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12f6cdf1-53ae-4187-862d-834e77b2a30c_700x447.jpeg 424w, https://substackcdn.com/image/fetch/$s_!9btd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12f6cdf1-53ae-4187-862d-834e77b2a30c_700x447.jpeg 848w, https://substackcdn.com/image/fetch/$s_!9btd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12f6cdf1-53ae-4187-862d-834e77b2a30c_700x447.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!9btd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12f6cdf1-53ae-4187-862d-834e77b2a30c_700x447.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 aria-hidden="true" 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><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>It is also essential to use a transaction manager that can coordinate distributed transactions across multiple microservices.</p><p>In short, managing transactions in distributed systems and microservices can be challenging, but using appropriate transaction management techniques, such as 2PC, compensation-based protocols, Saga, and Event sourcing, can help ensure data consistency and integrity in distributed systems.</p><p>Now that you know the basics, let&#8217;s look at these techniques in little bit more detail.</p><h3>What is 2 Phase Commit? How does it help with distributed transaction management?</h3><p>The Two-Phase Commit (2PC) is a distributed transaction protocol used to manage transactions across multiple distributed systems. It ensures that all the nodes participating in a distributed transaction agree on committing or rolling back the transaction.</p><p>In a distributed transaction, a coordinator node is responsible for managing the transaction and coordinating with all the participating nodes.</p><p>The <strong>coordinator sends a prepare message to all the participants to confirm their readiness to commit the transaction.</strong> If all participants are ready, the coordinator sends a commit message, and all the participants commit the transaction.</p><p>On the other hand, <strong>if any participant is not ready or responds negatively, the coordinator sends a rollback message to all the participants</strong>, and they all roll back the transaction.</p><p>The Two-Phase Commit protocol ensures that a transaction is either committed or rolled back in a distributed environment, even if there are communication failures or crashes. This protocol is widely used in distributed databases, messaging systems, and other distributed applications.</p><p><strong>For example</strong>, consider a banking system that has multiple branches, and each branch has its own database. When a customer performs a transaction at one branch, it needs to be synchronized with the other branches&#8217; databases to maintain consistency.</p><p>In such cases, the Two-Phase Commit protocol can be used to ensure that the transaction is committed or rolled back consistently across all the branches.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!yUbc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a1e38cd-6b5b-44fa-8ae3-501d1c6aa8b4_700x400.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!yUbc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a1e38cd-6b5b-44fa-8ae3-501d1c6aa8b4_700x400.png 424w, https://substackcdn.com/image/fetch/$s_!yUbc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a1e38cd-6b5b-44fa-8ae3-501d1c6aa8b4_700x400.png 848w, https://substackcdn.com/image/fetch/$s_!yUbc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a1e38cd-6b5b-44fa-8ae3-501d1c6aa8b4_700x400.png 1272w, https://substackcdn.com/image/fetch/$s_!yUbc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a1e38cd-6b5b-44fa-8ae3-501d1c6aa8b4_700x400.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!yUbc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a1e38cd-6b5b-44fa-8ae3-501d1c6aa8b4_700x400.png" width="700" height="400" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0a1e38cd-6b5b-44fa-8ae3-501d1c6aa8b4_700x400.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:400,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!yUbc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a1e38cd-6b5b-44fa-8ae3-501d1c6aa8b4_700x400.png 424w, https://substackcdn.com/image/fetch/$s_!yUbc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a1e38cd-6b5b-44fa-8ae3-501d1c6aa8b4_700x400.png 848w, https://substackcdn.com/image/fetch/$s_!yUbc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a1e38cd-6b5b-44fa-8ae3-501d1c6aa8b4_700x400.png 1272w, https://substackcdn.com/image/fetch/$s_!yUbc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a1e38cd-6b5b-44fa-8ae3-501d1c6aa8b4_700x400.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 aria-hidden="true" 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><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><h3>What is SAGA Design Pattern in Microservices? How does it help with managing distributed transaction?</h3><p>SAGA, short for &#8220;<a href="https://javarevisited.substack.com/p/saga-vs-cqrs-the-microservices-pattern">Saga Pattern,&#8221;</a> is a design pattern that helps manage distributed transactions in microservices architecture. In a microservices environment, where different services can have their own databases and transactions, the SAGA pattern provides a way to ensure transactional consistency across services.</p>
      <p>
          <a href="https://javarevisited.substack.com/p/how-to-manage-transactions-in-distributed">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[I Read 20+ DSA Books – These Are the Only 5 You Need in 2026]]></title><description><![CDATA[My favorite books to learn data structures and algorithms in 2026]]></description><link>https://javarevisited.substack.com/p/i-read-20-dsa-books-here-are-my-top</link><guid isPermaLink="false">https://javarevisited.substack.com/p/i-read-20-dsa-books-here-are-my-top</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Sat, 25 Jul 2026 14:39:53 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!VuA8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ac34bc5-9f5d-4e59-bbb6-8903d05f53e7_700x525.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p><strong>Preparing for System Design Interviews? <a href="https://bytebytego.com/pricing?fpr=javarevisited">Join ByteByteGo now</a> for a structured preparation. They are also offering a rare <a href="https://bytebytego.com/pricing?fpr=javarevisited">50% discount</a> now on their lifetime plan</strong></p></blockquote><p>Hello guys, after spending years preparing for coding interviews and teaching data structures and algorithms, I&#8217;ve realized that reading algorithm books is one of the most underrated ways to build deep problem-solving intuition.</p><p>Over the past decade, I&#8217;ve gone through more than 30 books on data structures, algorithms, and system design &#8212; some brilliant, some painfully dry &#8212; but only a few truly changed the way I think about programming.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>In this post, I&#8217;ll share the <strong>five books on algorithms and DSA that I recommend to every developer</strong>, whether you&#8217;re a beginner learning the basics or an experienced engineer brushing up for interviews.</p><p>Along with each book, I&#8217;ve included <strong>an online course</strong> that complements the material, so you can apply what you read through interactive coding challenges and visual explanations.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/pricing?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VuA8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ac34bc5-9f5d-4e59-bbb6-8903d05f53e7_700x525.png 424w, https://substackcdn.com/image/fetch/$s_!VuA8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ac34bc5-9f5d-4e59-bbb6-8903d05f53e7_700x525.png 848w, https://substackcdn.com/image/fetch/$s_!VuA8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ac34bc5-9f5d-4e59-bbb6-8903d05f53e7_700x525.png 1272w, https://substackcdn.com/image/fetch/$s_!VuA8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ac34bc5-9f5d-4e59-bbb6-8903d05f53e7_700x525.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VuA8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ac34bc5-9f5d-4e59-bbb6-8903d05f53e7_700x525.png" width="700" height="525" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2ac34bc5-9f5d-4e59-bbb6-8903d05f53e7_700x525.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:525,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;I&#8217;ve Read 30+ Books on Data Structures and Algorithms&#8202;&#8212;&#8202;Here Are My Top 5 Recommendations&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bytebytego.com/pricing?fpr=javarevisited&quot;,&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="I&#8217;ve Read 30+ Books on Data Structures and Algorithms&#8202;&#8212;&#8202;Here Are My Top 5 Recommendations" title="I&#8217;ve Read 30+ Books on Data Structures and Algorithms&#8202;&#8212;&#8202;Here Are My Top 5 Recommendations" srcset="https://substackcdn.com/image/fetch/$s_!VuA8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ac34bc5-9f5d-4e59-bbb6-8903d05f53e7_700x525.png 424w, https://substackcdn.com/image/fetch/$s_!VuA8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ac34bc5-9f5d-4e59-bbb6-8903d05f53e7_700x525.png 848w, https://substackcdn.com/image/fetch/$s_!VuA8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ac34bc5-9f5d-4e59-bbb6-8903d05f53e7_700x525.png 1272w, https://substackcdn.com/image/fetch/$s_!VuA8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ac34bc5-9f5d-4e59-bbb6-8903d05f53e7_700x525.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 aria-hidden="true" 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><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>My Favorite Data Structures and Algorithms Books for Developers</h2><p>Without any further ado, here are the top 5 books I recommend developers who wants to master Data Structures and Algorithms in depth</p><h3>1. <a href="https://www.amazon.com/Grokking-Algorithms-Aditya-Bhargava-dp-1633438538/dp/1633438538/?tag=javamysqlanta-20">Grokking Algorithms by Aditya Bhargava</a> (Second Edition)</h3><p>If I could recommend just one book to start your DSA journey, it would be <strong><a href="https://www.amazon.com/Grokking-Algorithms-Aditya-Bhargava-dp-1633438538/dp/1633438538/?tag=javamysqlanta-20">Grokking Algorithms</a></strong>. It&#8217;s beautifully illustrated, simple, and makes even complex ideas like recursion and dynamic programming feel approachable.</p><p>This book doesn&#8217;t bombard you with theory &#8212; it uses real-world examples like searching friends on Facebook or optimizing deliveries to explain algorithmic thinking.</p><p>When I first read it, I finally &#8220;got&#8221; recursion and divide-and-conquer in a way that academic books never made me feel.</p><p>If you want to reinforce these concepts, pair it with <strong><a href="https://designgurus.org/link/84Y9hP?url=https%3A%2F%2Fdesigngurus.org%2Fcourse%3Fcourseid%3Dgrokking-the-coding-interview">Grokking the Coding Interview: Patterns for Coding Questions</a></strong> on DesignGuru.io &#8212; a course built around 17 essential problem-solving patterns used in 100+ coding interview questions.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/Grokking-Algorithms-Aditya-Bhargava-dp-1633438538/dp/1633438538/?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wsQf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ff8f5e2-13df-42cd-af73-4cebd1b7fcf3_680x510.png 424w, https://substackcdn.com/image/fetch/$s_!wsQf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ff8f5e2-13df-42cd-af73-4cebd1b7fcf3_680x510.png 848w, https://substackcdn.com/image/fetch/$s_!wsQf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ff8f5e2-13df-42cd-af73-4cebd1b7fcf3_680x510.png 1272w, https://substackcdn.com/image/fetch/$s_!wsQf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ff8f5e2-13df-42cd-af73-4cebd1b7fcf3_680x510.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wsQf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ff8f5e2-13df-42cd-af73-4cebd1b7fcf3_680x510.png" width="680" height="510" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7ff8f5e2-13df-42cd-af73-4cebd1b7fcf3_680x510.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:510,&quot;width&quot;:680,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/Grokking-Algorithms-Aditya-Bhargava-dp-1633438538/dp/1633438538/?tag=javamysqlanta-20&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!wsQf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ff8f5e2-13df-42cd-af73-4cebd1b7fcf3_680x510.png 424w, https://substackcdn.com/image/fetch/$s_!wsQf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ff8f5e2-13df-42cd-af73-4cebd1b7fcf3_680x510.png 848w, https://substackcdn.com/image/fetch/$s_!wsQf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ff8f5e2-13df-42cd-af73-4cebd1b7fcf3_680x510.png 1272w, https://substackcdn.com/image/fetch/$s_!wsQf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ff8f5e2-13df-42cd-af73-4cebd1b7fcf3_680x510.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 aria-hidden="true" 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><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>You can also get all of their Grokking courses (including Dynamic Programming and System Design) at a discount with their<strong> <a href="https://designgurus.org/link/84Y9hP?url=https%3A%2F%2Fdesigngurus.org%2Fbundles%3Fbundle_id%3Dall-courses">All Course Bundle</a></strong> using the code <strong>GURU</strong> for 30% off.</p><div><hr></div><h3>2. <a href="https://www.amazon.com/Introduction-Algorithms-fourth-Thomas-Cormen/dp/026204630X?tag=javamysqlanta-20">Introduction to Algorithms (CLRS) &#8212; Cormen, Leiserson, Rivest, and Stein</a></h3><p>This is the <strong>Bible of algorithms</strong>. The <strong><a href="https://www.amazon.com/Introduction-Algorithms-fourth-Thomas-Cormen/dp/026204630X?tag=javamysqlanta-20">Introduction to Algorithms, 4th Edition</a></strong> &#8212; often called <em>CLRS</em> &#8212; is the book you&#8217;ll find on the shelves of every computer science student and senior engineer.</p><p>It&#8217;s dense, detailed, and covers everything from sorting and searching to advanced topics like dynamic programming, NP-completeness, and graph algorithms.</p><p>However, don&#8217;t try to read it cover-to-cover. Use it as a reference or deep-dive text when you want to <em>understand</em> how an algorithm works behind the scenes.</p><p>To make it more practical, I recommend pairing it with the <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fdata-structures-and-algorithms-deep-dive-using-java%2F">Data Structures and Algorithms: Deep Dive Using Java</a></strong> course on Udemy. It&#8217;s one of the most structured, beginner-friendly algorithm courses I&#8217;ve taken &#8212; and it helps bridge the gap between theory and implementation.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/Introduction-Algorithms-fourth-Thomas-Cormen/dp/026204630X?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZJR7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fb6454-5914-412b-b756-bd5c64cf6e6d_700x700.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ZJR7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fb6454-5914-412b-b756-bd5c64cf6e6d_700x700.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ZJR7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fb6454-5914-412b-b756-bd5c64cf6e6d_700x700.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ZJR7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fb6454-5914-412b-b756-bd5c64cf6e6d_700x700.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZJR7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fb6454-5914-412b-b756-bd5c64cf6e6d_700x700.jpeg" width="700" height="700" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/90fb6454-5914-412b-b756-bd5c64cf6e6d_700x700.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:700,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/Introduction-Algorithms-fourth-Thomas-Cormen/dp/026204630X?tag=javamysqlanta-20&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!ZJR7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fb6454-5914-412b-b756-bd5c64cf6e6d_700x700.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ZJR7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fb6454-5914-412b-b756-bd5c64cf6e6d_700x700.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ZJR7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fb6454-5914-412b-b756-bd5c64cf6e6d_700x700.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ZJR7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90fb6454-5914-412b-b756-bd5c64cf6e6d_700x700.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 aria-hidden="true" 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><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><div><hr></div><h3>3. <a href="http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1849967202?tag=javamysqlanta-20">The Algorithm Design Manual by Steven S. Skiena</a></h3><p>Skiena&#8217;s <strong>Algorithm Design Manual</strong> is an absolute gem. Unlike most theoretical books, this one feels like sitting down with an experienced engineer who tells you <em>how algorithms actually get used in real-world projects</em>.</p><p>Each chapter begins with a problem, explores several algorithmic approaches, and then ends with practical &#8220;war stories&#8221; from the field.</p><p>It&#8217;s the perfect middle ground between theory and hands-on coding.</p><p>If you want to visualize and code algorithms while reading this, I suggest trying <strong><a href="https://shareasale.com/r.cfm?b=1836542&amp;u=880419&amp;m=114505&amp;urllink=https%3A%2F%2Falgo.monster%2Fsubscribe&amp;afftrack=">AlgoMonster</a></strong><a href="https://shareasale.com/r.cfm?b=1836542&amp;u=880419&amp;m=114505&amp;urllink=https%3A%2F%2Falgo.monster%2Fsubscribe&amp;afftrack="> </a>&#8212; an interactive platform built by ex-Google engineers that teaches problem-solving patterns with visual diagrams and real interview questions.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1849967202?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5-uE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe43b7b-a1c3-4f4c-9423-1709b26d6d7b_700x976.jpeg 424w, https://substackcdn.com/image/fetch/$s_!5-uE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe43b7b-a1c3-4f4c-9423-1709b26d6d7b_700x976.jpeg 848w, https://substackcdn.com/image/fetch/$s_!5-uE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe43b7b-a1c3-4f4c-9423-1709b26d6d7b_700x976.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!5-uE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe43b7b-a1c3-4f4c-9423-1709b26d6d7b_700x976.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5-uE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe43b7b-a1c3-4f4c-9423-1709b26d6d7b_700x976.jpeg" width="700" height="976" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4fe43b7b-a1c3-4f4c-9423-1709b26d6d7b_700x976.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:976,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1849967202?tag=javamysqlanta-20&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!5-uE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe43b7b-a1c3-4f4c-9423-1709b26d6d7b_700x976.jpeg 424w, https://substackcdn.com/image/fetch/$s_!5-uE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe43b7b-a1c3-4f4c-9423-1709b26d6d7b_700x976.jpeg 848w, https://substackcdn.com/image/fetch/$s_!5-uE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe43b7b-a1c3-4f4c-9423-1709b26d6d7b_700x976.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!5-uE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe43b7b-a1c3-4f4c-9423-1709b26d6d7b_700x976.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 aria-hidden="true" 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><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><div><hr></div><p></p><h3>4.<a href="https://www.amazon.com/Coding-Interview-Patterns-Nail-Your/dp/1736049135?tag=javamysqlanta-20"> Nail Your Next Coding Interview: Coding Interview Patterns by Alex Xu and ByteByteGo</a></h3><p>This is a more recent favorite of mine &#8212; <strong><a href="https://www.amazon.com/Coding-Interview-Patterns-Nail-Your/dp/1736049135?tag=javamysqlanta-20">Coding Interview Patterns: Nail Your Next Coding Interview</a></strong> by Alex Xu (the creator of ByteByteGo).</p><p>While many algorithm books focus on the &#8220;what,&#8221; this one focuses on the &#8220;how.&#8221; It teaches you reusable patterns like <em>sliding window, two pointers, merge intervals,</em> and <em>fast/slow pointers</em> &#8212; the same patterns used to solve 70% of LeetCode problems.</p><p>If you want to go beyond the book, check out the <a href="https://bytebytego.com/exercises/coding-patterns?fpr=javarevisited">ByteByteGo 101</a>, a collection of 101 popular coding interview questions, divided by 10 essential patterns and <strong><a href="https://bytebytego.com/?fpr=javarevisited">ByteByteGo Coding Interview Pattern course</a> </strong>&#8212; written by the same creators as the book. It&#8217;s interactive, browser-based, and a great complement if you prefer hands-on learning.</p><p>They have a couple of free chapter on Coding interview patterns which I highly recommend you to checkout before you join. Their <strong><a href="https://bytebytego.com/courses/coding-patterns/two-pointers/introduction-to-two-pointers?fpr=javarevisited">chapter on Two Pointer Pattern</a> </strong>is one of the best explanation I have read. In fact, you can see it yourself</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/Coding-Interview-Patterns-Nail-Your/dp/1736049135?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2Q0x!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F350bd595-0f92-4dd4-8116-1d77ac351499_700x722.png 424w, https://substackcdn.com/image/fetch/$s_!2Q0x!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F350bd595-0f92-4dd4-8116-1d77ac351499_700x722.png 848w, https://substackcdn.com/image/fetch/$s_!2Q0x!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F350bd595-0f92-4dd4-8116-1d77ac351499_700x722.png 1272w, https://substackcdn.com/image/fetch/$s_!2Q0x!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F350bd595-0f92-4dd4-8116-1d77ac351499_700x722.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2Q0x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F350bd595-0f92-4dd4-8116-1d77ac351499_700x722.png" width="700" height="722" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/350bd595-0f92-4dd4-8116-1d77ac351499_700x722.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:722,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/Coding-Interview-Patterns-Nail-Your/dp/1736049135?tag=javamysqlanta-20&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!2Q0x!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F350bd595-0f92-4dd4-8116-1d77ac351499_700x722.png 424w, https://substackcdn.com/image/fetch/$s_!2Q0x!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F350bd595-0f92-4dd4-8116-1d77ac351499_700x722.png 848w, https://substackcdn.com/image/fetch/$s_!2Q0x!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F350bd595-0f92-4dd4-8116-1d77ac351499_700x722.png 1272w, https://substackcdn.com/image/fetch/$s_!2Q0x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F350bd595-0f92-4dd4-8116-1d77ac351499_700x722.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 aria-hidden="true" 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><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><div><hr></div><p></p><h3>5. <a href="http://www.amazon.com/Algorithms-4th-Edition-Robert-Sedgewick/dp/032157351X?tag=javamysqlanta-20">Algorithms by Robert Sedgewick and Kevin Wayne</a></h3><p>Lastly, <strong>Algorithms (4th Edition)</strong> is one of the best-written textbooks in computer science. It balances mathematical rigor with clear code examples in Java and covers everything from elementary data structures to graph algorithms and strings.</p><p>If you prefer video-based learning, there&#8217;s a <strong>Coursera course series</strong> based on this book &#8212; <strong><a href="https://coursera.pxf.io/c/3294490/1164545/14726?u=https%3A%2F%2Fwww.coursera.org%2Flearn%2Falgorithms-part1">Algorithms Part 1</a></strong> and<strong><a href="https://coursera.pxf.io/c/3294490/1164545/14726?u=https%3A%2F%2Fwww.coursera.org%2Flearn%2Falgorithms-part1"> Part 2.</a></strong> Both are taught by Sedgewick himself and make the theory come alive through visualizations and coding demos.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="http://www.amazon.com/Algorithms-4th-Edition-Robert-Sedgewick/dp/032157351X?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Exxk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2a2ad0-aa9d-46c6-a889-e0b6577ffb7d_200x252.png 424w, https://substackcdn.com/image/fetch/$s_!Exxk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2a2ad0-aa9d-46c6-a889-e0b6577ffb7d_200x252.png 848w, https://substackcdn.com/image/fetch/$s_!Exxk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2a2ad0-aa9d-46c6-a889-e0b6577ffb7d_200x252.png 1272w, https://substackcdn.com/image/fetch/$s_!Exxk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2a2ad0-aa9d-46c6-a889-e0b6577ffb7d_200x252.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Exxk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2a2ad0-aa9d-46c6-a889-e0b6577ffb7d_200x252.png" width="724" height="912.24" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f2a2ad0-aa9d-46c6-a889-e0b6577ffb7d_200x252.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:252,&quot;width&quot;:200,&quot;resizeWidth&quot;:724,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Algorithms : Sedgewick, Robert, Wayne, Kevin: Amazon.sg: Books&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;http://www.amazon.com/Algorithms-4th-Edition-Robert-Sedgewick/dp/032157351X?tag=javamysqlanta-20&quot;,&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="Algorithms : Sedgewick, Robert, Wayne, Kevin: Amazon.sg: Books" title="Algorithms : Sedgewick, Robert, Wayne, Kevin: Amazon.sg: Books" srcset="https://substackcdn.com/image/fetch/$s_!Exxk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2a2ad0-aa9d-46c6-a889-e0b6577ffb7d_200x252.png 424w, https://substackcdn.com/image/fetch/$s_!Exxk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2a2ad0-aa9d-46c6-a889-e0b6577ffb7d_200x252.png 848w, https://substackcdn.com/image/fetch/$s_!Exxk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2a2ad0-aa9d-46c6-a889-e0b6577ffb7d_200x252.png 1272w, https://substackcdn.com/image/fetch/$s_!Exxk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2a2ad0-aa9d-46c6-a889-e0b6577ffb7d_200x252.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 aria-hidden="true" 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><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>If you prefer video-first, project-driven learning, the <strong><a href="https://academy.zerotomastery.io/a/aff_rml6679s/external?affcode=441520_zytgk2dn">Master the Coding Interview: Data Structures + Algorithms</a></strong> course from <strong>ZTM Academy</strong> is one of the most practical. It&#8217;s designed for real-world engineers &#8212; clear explanations, great visuals, and a solid emphasis on coding interviews.</p><h3>Final Thoughts</h3><p>Reading about algorithms is not just about passing interviews &#8212; it&#8217;s about training your mind to think like an engineer. Every problem you solve improves your coding intuition and makes you a sharper programmer.</p><p>So, if you&#8217;ve been putting off learning DSA because it feels too academic or abstract, start small. Pick one of these books &#8212; ideally <em><a href="https://www.amazon.com/Grokking-Algorithms-illustrated-programmers-curious/dp/1617292230/?tag=javamysqlanta-20">Grokking Algorithms</a></em> &#8212; and pair it with an interactive course like <strong><a href="https://bytebytego.com/?fpr=javarevisited">ByteByteGo Coding Interview Pattern course</a>.</strong></p><p>Over time, you&#8217;ll realize algorithms aren&#8217;t just theory &#8212; they&#8217;re the mental framework behind every elegant piece of software you&#8217;ll ever write.</p><p><strong>Other Books Recommendations you may like</strong></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;9e65387d-f697-4a96-8729-343f8e52dfd4&quot;,&quot;caption&quot;:&quot;Learning a Programming language, like Java, Python, or C++ is easy, but learning to write good code is not. Writing good code is more Art than Science and also an important differentiating factor between an average programmer vs. a good programmer.&quot;,&quot;cta&quot;:null,&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 Coder's Reading List for 2026 (6 Books To Improve Coding Skills)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:16859097,&quot;name&quot;:&quot;javinpaul&quot;,&quot;bio&quot;:&quot;I write a weekly newsletter to help you learn Java, coding, and system design.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!9bIo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F5663d1cb-2e66-4a0d-8f76-8a3aad3f2382_48x48.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100},{&quot;id&quot;:123095996,&quot;name&quot;:&quot;Soma&quot;,&quot;bio&quot;:&quot;Java and React Developer&quot;,&quot;photo_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%2F6da5f0aa-fdd2-429c-b87f-8ac6ddf5bc60_144x144.png&quot;,&quot;is_guest&quot;:true,&quot;bestseller_tier&quot;:null,&quot;primaryPublicationSubscribeUrl&quot;:&quot;https://reactjava.substack.com/subscribe?&quot;,&quot;primaryPublicationUrl&quot;:&quot;https://reactjava.substack.com&quot;,&quot;primaryPublicationName&quot;:&quot;React Java&quot;,&quot;primaryPublicationId&quot;:1455043}],&quot;post_date&quot;:&quot;2026-06-09T04:53:54.820Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!lrEn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7e8f8c3-e515-44ff-bfb6-39c97b178348_368x489.jpeg&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://javarevisited.substack.com/p/6-coding-and-programming-books-every&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:200716266,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:18,&quot;comment_count&quot;:0,&quot;publication_id&quot;:1444904,&quot;publication_name&quot;:&quot;Javarevisited Newsletter&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!WbL3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb9abffb-bd2d-4fe4-a166-4f88de0a3cba_512x512.png&quot;,&quot;belowTheFold&quot;:true,&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;317ff8bb-35ba-4b61-8257-5d93d6b4eeaa&quot;,&quot;caption&quot;:&quot;Hello guys, System design and Software design are two important topic for coding interviews and also two important skill for Software developers. Without knowing how to design System you cannot create new software and it will also be difficult to learn and understand existing software and system.&quot;,&quot;cta&quot;:null,&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;10 Best System Design and Software Architecture Books for Developers&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:16859097,&quot;name&quot;:&quot;javinpaul&quot;,&quot;bio&quot;:&quot;I write a weekly newsletter to help you learn Java, coding, and system design.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!9bIo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F5663d1cb-2e66-4a0d-8f76-8a3aad3f2382_48x48.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100},{&quot;id&quot;:123095996,&quot;name&quot;:&quot;Soma&quot;,&quot;bio&quot;:&quot;Java and React Developer&quot;,&quot;photo_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%2F6da5f0aa-fdd2-429c-b87f-8ac6ddf5bc60_144x144.png&quot;,&quot;is_guest&quot;:true,&quot;bestseller_tier&quot;:null,&quot;primaryPublicationSubscribeUrl&quot;:&quot;https://reactjava.substack.com/subscribe?&quot;,&quot;primaryPublicationUrl&quot;:&quot;https://reactjava.substack.com&quot;,&quot;primaryPublicationName&quot;:&quot;React Java&quot;,&quot;primaryPublicationId&quot;:1455043}],&quot;post_date&quot;:&quot;2024-08-25T08:54:44.690Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!2na8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae200ea-0084-4106-ac8e-8a031f71679b_1200x900.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://javarevisited.substack.com/p/10-best-system-design-and-software&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:148071581,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:43,&quot;comment_count&quot;:4,&quot;publication_id&quot;:1444904,&quot;publication_name&quot;:&quot;Javarevisited Newsletter&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!WbL3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb9abffb-bd2d-4fe4-a166-4f88de0a3cba_512x512.png&quot;,&quot;belowTheFold&quot;:true,&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;418d382d-21b8-45f9-817d-a85c714514b5&quot;,&quot;caption&quot;:&quot;Hello Guys, The AI world is moving ridiculously fast.&quot;,&quot;cta&quot;:null,&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 AI Engineer&#8217;s Reading List for 2026 (10 Books That Matter)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:16859097,&quot;name&quot;:&quot;javinpaul&quot;,&quot;bio&quot;:&quot;I write a weekly newsletter to help you learn Java, coding, and system design.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!9bIo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F5663d1cb-2e66-4a0d-8f76-8a3aad3f2382_48x48.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100},{&quot;id&quot;:123095996,&quot;name&quot;:&quot;Soma&quot;,&quot;bio&quot;:&quot;Java and React Developer&quot;,&quot;photo_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%2F6da5f0aa-fdd2-429c-b87f-8ac6ddf5bc60_144x144.png&quot;,&quot;is_guest&quot;:true,&quot;bestseller_tier&quot;:null,&quot;primaryPublicationSubscribeUrl&quot;:&quot;https://reactjava.substack.com/subscribe?&quot;,&quot;primaryPublicationUrl&quot;:&quot;https://reactjava.substack.com&quot;,&quot;primaryPublicationName&quot;:&quot;React Java&quot;,&quot;primaryPublicationId&quot;:1455043}],&quot;post_date&quot;:&quot;2026-03-06T15:08:16.750Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!MD3b!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4dbe541f-5137-4c67-8835-6a463449c9e1_609x799.webp&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://javarevisited.substack.com/p/10-ai-and-llm-engineering-books-i&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:190111821,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:95,&quot;comment_count&quot;:1,&quot;publication_id&quot;:1444904,&quot;publication_name&quot;:&quot;Javarevisited Newsletter&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!WbL3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb9abffb-bd2d-4fe4-a166-4f88de0a3cba_512x512.png&quot;,&quot;belowTheFold&quot;:true,&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;cbfbba1f-0657-4630-b54c-e069b4e4aa62&quot;,&quot;caption&quot;:&quot;Hello friends, System design and Software design are two important topic for any tech interviews and also two important skills for Software developers.&quot;,&quot;cta&quot;:null,&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;A Senior Developer's Reading List (11 Books That Matter)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:16859097,&quot;name&quot;:&quot;javinpaul&quot;,&quot;bio&quot;:&quot;I write a weekly newsletter to help you learn Java, coding, and system design.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!9bIo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F5663d1cb-2e66-4a0d-8f76-8a3aad3f2382_48x48.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100}],&quot;post_date&quot;:&quot;2026-03-11T15:51:32.363Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!kdkN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e0ef309-6635-4b36-b1f7-775dc0a51dbc_800x600.webp&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://javarevisited.substack.com/p/a-senior-developers-reading-list&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:190631741,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:55,&quot;comment_count&quot;:0,&quot;publication_id&quot;:1444904,&quot;publication_name&quot;:&quot;Javarevisited Newsletter&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!WbL3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb9abffb-bd2d-4fe4-a166-4f88de0a3cba_512x512.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>]]></content:encoded></item><item><title><![CDATA[How to Crack the System Design Interview: A Senior Engineer's Blueprint]]></title><description><![CDATA[The best way to prepare for System design interviews with topics and resources]]></description><link>https://javarevisited.substack.com/p/the-8020-guide-to-acing-your-system</link><guid isPermaLink="false">https://javarevisited.substack.com/p/the-8020-guide-to-acing-your-system</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Fri, 24 Jul 2026 15:16:27 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!5tIX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7553e85-660b-462f-94bb-8eb76c73a57c_2752x1536.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://buff.ly/4dl3eHJ" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5tIX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7553e85-660b-462f-94bb-8eb76c73a57c_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!5tIX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7553e85-660b-462f-94bb-8eb76c73a57c_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!5tIX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7553e85-660b-462f-94bb-8eb76c73a57c_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!5tIX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7553e85-660b-462f-94bb-8eb76c73a57c_2752x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5tIX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7553e85-660b-462f-94bb-8eb76c73a57c_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e7553e85-660b-462f-94bb-8eb76c73a57c_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6443421,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://buff.ly/4dl3eHJ&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/208342860?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7553e85-660b-462f-94bb-8eb76c73a57c_2752x1536.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_!5tIX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7553e85-660b-462f-94bb-8eb76c73a57c_2752x1536.png 424w, https://substackcdn.com/image/fetch/$s_!5tIX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7553e85-660b-462f-94bb-8eb76c73a57c_2752x1536.png 848w, https://substackcdn.com/image/fetch/$s_!5tIX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7553e85-660b-462f-94bb-8eb76c73a57c_2752x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!5tIX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7553e85-660b-462f-94bb-8eb76c73a57c_2752x1536.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 aria-hidden="true" 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><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>Hello guys, if you are preparing for a Software Engineer interview then you may know how difficult it is to prepare for System Design given its open-ended nature.</p><p>In the Software Engineering world, if you are applying for a Senior Engineer / Lead / Architect / or a more senior role, System Design is the most sought-after skill, and hence one of the most important rounds in the whole process. If you mess this up, nothing else would matter. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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 get it right though, you&#8217;re looking at a raise of at least tens of thousands of dollars annually. </p><p>So how do you ace your system design round?  </p><p>While there are many great places to learn and prepare for System design interviews like <strong><a href="https://bytebytego.com/?fpr=javarevisited">ByteByteGo</a>,</strong> <strong><a href="https://bit.ly/3cNF0vw">Exponent</a>,</strong> <a href="https://www.bugfree.ai/?via=javarevisited">Bugfree.ai</a>, <strong><a href="https://designgurus.org/link/84Y9hP">DesignGurus.io</a>,</strong> <strong><a href="https://bit.ly/3cNF0vw">Exponent</a>, and</strong> <strong><a href="https://www.educative.io/subscription?affiliate_id=5073518643380224">Educative.io</a> </strong>which have very in-depth and comprehensive materials to prepare for System Design interviews, when it comes to affordable courses, there is no place better than Udemy. It has most affordable courses and I am going to share few of them along the way. </p><p>I have also created this guide where I have shared all essential topics, concepts, and resources you can use to prepare for System Design interviews. </p><p>But, Before we get into the details though, let&#8217;s find out <strong>what is a system design interview and </strong>What do the interviewers really expect from the candidates?</p><h1>What is Expected from a Candidate during System Design Interviews?</h1><p>The first step to preparing for a System design interview is to understand what is expected from you. Once you know that you can align your preparation strategy to meet those expectations.</p><p>So here are the key expectations from you on a System design interview:</p><ol><li><p>You should be able to design a system that satisfies the requirements given to you and scales well, for example, design a vending machine or design a trade position aggregator.</p></li><li><p>Your design should be pluggable and not restrict the addition of new features.</p></li><li><p>You should be able to compare various alternatives and choose the most optimal one. Things like, which database is the most important, which protocol should you use, or what&#8217;s the best approach to scale a system, etc.</p></li><li><p>You should know the basics that are relevant from a system design standpoint like:</p><ol><li><p>Load balancers</p></li><li><p>APIs</p></li><li><p>Caches</p></li><li><p>Databases</p></li><li><p>Network Protocols</p></li><li><p>Message queues</p></li><li><p>CDNs</p></li><li><p>High-level details about ML and Big data</p></li><li><p>CAP Theorem</p></li><li><p>Monitoring and analytics</p></li></ol></li></ol><p>By the way, don&#8217;t get overwhelmed by a number of topics, most of the good System design courses like <a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fsystem-design-masterclass%2F%3FcouponCode%3DKEEPLEARNING">System Design Masterclass </a> <strong> </strong>on Udemy or <strong><a href="https://www.educative.io/collection/5668639101419520/5649050225344512?affiliate_id=5073518643380224">Grokking the Modern System Design Interview on Educative</a> </strong>cover all these topics.</p><h2>4 Steps to Prepare for System Design Interviews?</h2><p> Here&#8217;s how you can crack the System design round interview of any FAANG company (Facebook/META, Amazon, Apple, Netflix, and Google) or get into FAANG</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fsystem-design-masterclass%2F%3FcouponCode%3DKEEPLEARNING" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fPCa!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeae4bb7-0e7d-44ed-8262-a27d9c9aa145_636x854.png 424w, https://substackcdn.com/image/fetch/$s_!fPCa!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeae4bb7-0e7d-44ed-8262-a27d9c9aa145_636x854.png 848w, https://substackcdn.com/image/fetch/$s_!fPCa!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeae4bb7-0e7d-44ed-8262-a27d9c9aa145_636x854.png 1272w, https://substackcdn.com/image/fetch/$s_!fPCa!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeae4bb7-0e7d-44ed-8262-a27d9c9aa145_636x854.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fPCa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeae4bb7-0e7d-44ed-8262-a27d9c9aa145_636x854.png" width="636" height="854" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aeae4bb7-0e7d-44ed-8262-a27d9c9aa145_636x854.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:854,&quot;width&quot;:636,&quot;resizeWidth&quot;:636,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;How to Crack System Design Interview&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fsystem-design-masterclass%2F%3FcouponCode%3DKEEPLEARNING&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="How to Crack System Design Interview" title="How to Crack System Design Interview" srcset="https://substackcdn.com/image/fetch/$s_!fPCa!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeae4bb7-0e7d-44ed-8262-a27d9c9aa145_636x854.png 424w, https://substackcdn.com/image/fetch/$s_!fPCa!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeae4bb7-0e7d-44ed-8262-a27d9c9aa145_636x854.png 848w, https://substackcdn.com/image/fetch/$s_!fPCa!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeae4bb7-0e7d-44ed-8262-a27d9c9aa145_636x854.png 1272w, https://substackcdn.com/image/fetch/$s_!fPCa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeae4bb7-0e7d-44ed-8262-a27d9c9aa145_636x854.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 aria-hidden="true" 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><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><h3>1.&nbsp; Learn Essential System Design Concepts</h3><p>Any system design interview will definitely require you to come up with a basic high-level design for whatever system you are trying to build. There are some components that will be needed for sure. Make a note of these components.</p><p>Here are a few -&nbsp;</p><h4><strong>1. 1 Load Balancer </strong>&nbsp;</h4><p>You cannot have a distributed system without a load balancer to distribute the incoming requests among various nodes. This ensures proper resource utilization and that there is no single point of failure in your system. </p><p>While learning about Load balancers it&#8217;s also a good idea to learn about <strong>API Gateway</strong> and carefully understand the <em><a href="https://javarevisited.substack.com/p/difference-between-api-gateway-and?utm_source=profile&amp;utm_medium=reader2">difference between load balancer and API Gateway</a></em>, which is quite important from an interview point of view. This question has been already asked me a couple of times in interviews.</p><p>Here&#8217;s how<a href="https://www.youtube.com/watch?v=a41jxGP9Ic8"> Nginx</a> does it.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Y12u!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9fb9c6b-2a1a-4aa9-b9c8-43fce9d4a45d_1068x644.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Y12u!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9fb9c6b-2a1a-4aa9-b9c8-43fce9d4a45d_1068x644.png 424w, https://substackcdn.com/image/fetch/$s_!Y12u!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9fb9c6b-2a1a-4aa9-b9c8-43fce9d4a45d_1068x644.png 848w, https://substackcdn.com/image/fetch/$s_!Y12u!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9fb9c6b-2a1a-4aa9-b9c8-43fce9d4a45d_1068x644.png 1272w, https://substackcdn.com/image/fetch/$s_!Y12u!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9fb9c6b-2a1a-4aa9-b9c8-43fce9d4a45d_1068x644.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Y12u!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9fb9c6b-2a1a-4aa9-b9c8-43fce9d4a45d_1068x644.png" width="725" height="437.17228464419475" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d9fb9c6b-2a1a-4aa9-b9c8-43fce9d4a45d_1068x644.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:644,&quot;width&quot;:1068,&quot;resizeWidth&quot;:725,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Nginx. NGINX is an open source&#8230; | by Dylan Wang | Medium&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="Nginx. NGINX is an open source&#8230; | by Dylan Wang | Medium" title="Nginx. NGINX is an open source&#8230; | by Dylan Wang | Medium" srcset="https://substackcdn.com/image/fetch/$s_!Y12u!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9fb9c6b-2a1a-4aa9-b9c8-43fce9d4a45d_1068x644.png 424w, https://substackcdn.com/image/fetch/$s_!Y12u!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9fb9c6b-2a1a-4aa9-b9c8-43fce9d4a45d_1068x644.png 848w, https://substackcdn.com/image/fetch/$s_!Y12u!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9fb9c6b-2a1a-4aa9-b9c8-43fce9d4a45d_1068x644.png 1272w, https://substackcdn.com/image/fetch/$s_!Y12u!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9fb9c6b-2a1a-4aa9-b9c8-43fce9d4a45d_1068x644.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 aria-hidden="true" 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><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><h4><strong>1.2 Cache</strong></h4><p>Most systems have some read-heavy interactions, some information that the user will access frequently but not update as much. It makes sense to cache this information in such a way that it can be easily fetched without the need for a DB lookup.</p><p>Think <strong>low latency</strong>. Also, based on your use case, you might need to store more frequently accessed information or more recently accessed information. So, read up on various <strong>eviction policies</strong>.</p><p>If you want to learn more then the <strong><a href="https://bytebytego.com/?fpr=javarevisited">ByteByteGo System Design course</a></strong> has a lot of information on Caching strategies and how to effectively use caches. You can refer to them to learn more.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!C9Lt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f891bc7-8657-47ff-8974-efcfcc0f0bb1_2250x2624.png 424w, https://substackcdn.com/image/fetch/$s_!C9Lt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f891bc7-8657-47ff-8974-efcfcc0f0bb1_2250x2624.png 848w, https://substackcdn.com/image/fetch/$s_!C9Lt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f891bc7-8657-47ff-8974-efcfcc0f0bb1_2250x2624.png 1272w, https://substackcdn.com/image/fetch/$s_!C9Lt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f891bc7-8657-47ff-8974-efcfcc0f0bb1_2250x2624.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!C9Lt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f891bc7-8657-47ff-8974-efcfcc0f0bb1_2250x2624.png" width="1456" height="1698" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7f891bc7-8657-47ff-8974-efcfcc0f0bb1_2250x2624.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1698,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;A Guide to Top Caching Strategies - ByteByteGo Newsletter&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bytebytego.com/?fpr=javarevisited&quot;,&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="A Guide to Top Caching Strategies - ByteByteGo Newsletter" title="A Guide to Top Caching Strategies - ByteByteGo Newsletter" srcset="https://substackcdn.com/image/fetch/$s_!C9Lt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f891bc7-8657-47ff-8974-efcfcc0f0bb1_2250x2624.png 424w, https://substackcdn.com/image/fetch/$s_!C9Lt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f891bc7-8657-47ff-8974-efcfcc0f0bb1_2250x2624.png 848w, https://substackcdn.com/image/fetch/$s_!C9Lt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f891bc7-8657-47ff-8974-efcfcc0f0bb1_2250x2624.png 1272w, https://substackcdn.com/image/fetch/$s_!C9Lt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f891bc7-8657-47ff-8974-efcfcc0f0bb1_2250x2624.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 aria-hidden="true" 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><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><h4>1.3 Database</h4><p>Again, there can be no system without some form of data storage. Whether you want to store files, images, product information, financial transactions, or simply dump all the data from various user interactions to run analytics later.</p><p>It all needs databases. So read up on it. Find out what matters when you are selecting a database, read about SQL/NoSQL, query patterns, and how the CAP theorem might come into play while making tradeoffs.</p><p>Sandeep has also explained this quite well in his <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fsystem-design-a-comprehensive-guide%2F">System Design course on Udemy</a></strong>, if you want to learn further, you can refer to that as well.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fsystem-design-a-comprehensive-guide%2F" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tJXe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6416744e-5c19-44f3-8938-5b9e929863fe_800x661.png 424w, https://substackcdn.com/image/fetch/$s_!tJXe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6416744e-5c19-44f3-8938-5b9e929863fe_800x661.png 848w, https://substackcdn.com/image/fetch/$s_!tJXe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6416744e-5c19-44f3-8938-5b9e929863fe_800x661.png 1272w, https://substackcdn.com/image/fetch/$s_!tJXe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6416744e-5c19-44f3-8938-5b9e929863fe_800x661.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tJXe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6416744e-5c19-44f3-8938-5b9e929863fe_800x661.png" width="800" height="661" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6416744e-5c19-44f3-8938-5b9e929863fe_800x661.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:661,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:114368,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fsystem-design-a-comprehensive-guide%2F&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/208342860?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6416744e-5c19-44f3-8938-5b9e929863fe_800x661.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_!tJXe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6416744e-5c19-44f3-8938-5b9e929863fe_800x661.png 424w, https://substackcdn.com/image/fetch/$s_!tJXe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6416744e-5c19-44f3-8938-5b9e929863fe_800x661.png 848w, https://substackcdn.com/image/fetch/$s_!tJXe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6416744e-5c19-44f3-8938-5b9e929863fe_800x661.png 1272w, https://substackcdn.com/image/fetch/$s_!tJXe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6416744e-5c19-44f3-8938-5b9e929863fe_800x661.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 aria-hidden="true" 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><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><h4>1.4 Message queues</h4><p>Sometimes our system needs to perform some tasks that need to be done but not necessarily immediately, or their outcome does not affect the user&#8217;s journey. In such cases, rather than making a service call, and waiting for the response, it makes sense to just write the <a href="https://javarevisited.substack.com/p/system-design-basics-master-message">message to the queue</a> so that it can be executed later. <br><br>What if you need to insert information in your database, and bulk insert could be more efficient? It would make sense to just keep track of these inserts in a message queue and perform 1 bulk insert instead of hundreds of 1-to-1 inserts to optimize your resources.</p><p>A good knowledge of Messages queues like RabbitMQ, ActiveMQ, and Apache Kafka is essential for any Software Engineer and this is one topic which is covered quite well in <strong>Educative&#8217;s <a href="https://www.educative.io/courses/grokking-modern-system-design-software-engineers-managers?affiliate_id=5073518643380224">Grokking Modern System Design for Software Engineers &amp; Managers </a>course</strong>. </p><p>If you want to learn about not just message queues but other essential System design topics, this is one resource that I personally use.</p>
      <p>
          <a href="https://javarevisited.substack.com/p/the-8020-guide-to-acing-your-system">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[20 Essential Multithreading Concepts Explained in 15 Minutes]]></title><description><![CDATA[Deadlock, Livelock, Race condition and much more]]></description><link>https://javarevisited.substack.com/p/20-multithreading-and-concurrency</link><guid isPermaLink="false">https://javarevisited.substack.com/p/20-multithreading-and-concurrency</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Thu, 23 Jul 2026 15:14:06 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!pXgj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78d41969-2d63-4638-81f8-a6115ccfaef1_700x1046.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p><strong>Want to learn System Design in Depth? <a href="https://bytebytego.com/pricing?fpr=javarevisited">Join ByteByteGo now</a> for visual learning. They are also offering a rare <a href="https://bytebytego.com/pricing?fpr=javarevisited">50% discount</a> now on their lifetime plan</strong></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/pricing?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pXgj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78d41969-2d63-4638-81f8-a6115ccfaef1_700x1046.png 424w, https://substackcdn.com/image/fetch/$s_!pXgj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78d41969-2d63-4638-81f8-a6115ccfaef1_700x1046.png 848w, https://substackcdn.com/image/fetch/$s_!pXgj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78d41969-2d63-4638-81f8-a6115ccfaef1_700x1046.png 1272w, https://substackcdn.com/image/fetch/$s_!pXgj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78d41969-2d63-4638-81f8-a6115ccfaef1_700x1046.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pXgj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78d41969-2d63-4638-81f8-a6115ccfaef1_700x1046.png" width="700" height="1046" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/78d41969-2d63-4638-81f8-a6115ccfaef1_700x1046.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1046,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;20 Multithreading Concepts Explained in 15 Minutes&quot;,&quot;title&quot;:&quot;20 Multithreading Concepts Explained in 15 Minutes&quot;,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bytebytego.com/pricing?fpr=javarevisited&quot;,&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="20 Multithreading Concepts Explained in 15 Minutes" title="20 Multithreading Concepts Explained in 15 Minutes" srcset="https://substackcdn.com/image/fetch/$s_!pXgj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78d41969-2d63-4638-81f8-a6115ccfaef1_700x1046.png 424w, https://substackcdn.com/image/fetch/$s_!pXgj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78d41969-2d63-4638-81f8-a6115ccfaef1_700x1046.png 848w, https://substackcdn.com/image/fetch/$s_!pXgj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78d41969-2d63-4638-81f8-a6115ccfaef1_700x1046.png 1272w, https://substackcdn.com/image/fetch/$s_!pXgj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78d41969-2d63-4638-81f8-a6115ccfaef1_700x1046.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 aria-hidden="true" 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><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>credit --- <strong><a href="https://bytebytego.com/pricing?fpr=javarevisited">ByteByteGo</a></strong><br><br>Hello friends, If you&#8217;re preparing for Java interviews, building high-performance backend systems, or simply want to write faster and safer concurrent applications, <strong>multithreading is one topic you can&#8217;t afford to ignore</strong>.</p><p>Modern applications rarely run a single task at a time. Web servers handle thousands of requests simultaneously, messaging systems process events in parallel, and cloud applications execute multiple background jobs concurrently.</p><p>Understanding multithreading helps you build software that makes efficient use of CPU resources while remaining correct and scalable.</p><p>In this article, we&#8217;ll walk through <strong>20 essential multithreading concepts</strong> that every Java developer should know. Think of this as a quick roadmap &#8212; each concept is explained in simple terms, along with where you&#8217;ll encounter it in real-world applications.</p><h2><a href="https://www.educative.io/unlimited?aff=VMMr">Educative Premium Plus (60% OFF) (Sponsored)</a></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.educative.io/unlimited?aff=VMMr" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9v3T!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25417362-e73a-4940-8fbf-e9c92df908a2_2500x1208.jpeg 424w, https://substackcdn.com/image/fetch/$s_!9v3T!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25417362-e73a-4940-8fbf-e9c92df908a2_2500x1208.jpeg 848w, https://substackcdn.com/image/fetch/$s_!9v3T!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25417362-e73a-4940-8fbf-e9c92df908a2_2500x1208.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!9v3T!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25417362-e73a-4940-8fbf-e9c92df908a2_2500x1208.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9v3T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25417362-e73a-4940-8fbf-e9c92df908a2_2500x1208.jpeg" width="1456" height="704" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/25417362-e73a-4940-8fbf-e9c92df908a2_2500x1208.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:704,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:627000,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:&quot;https://www.educative.io/unlimited?aff=VMMr&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/204221107?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25417362-e73a-4940-8fbf-e9c92df908a2_2500x1208.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!9v3T!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25417362-e73a-4940-8fbf-e9c92df908a2_2500x1208.jpeg 424w, https://substackcdn.com/image/fetch/$s_!9v3T!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25417362-e73a-4940-8fbf-e9c92df908a2_2500x1208.jpeg 848w, https://substackcdn.com/image/fetch/$s_!9v3T!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25417362-e73a-4940-8fbf-e9c92df908a2_2500x1208.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!9v3T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25417362-e73a-4940-8fbf-e9c92df908a2_2500x1208.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 aria-hidden="true" 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><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>When it comes to System Design and Coding Interview, <strong><a href="https://www.educative.io/unlimited?aff=VMMr">Educative.io</a></strong> is one of the most trusted resources. I have used many of their System Design, Algorithms and Coding interview pattern courses to crack coding interviews multiple times.</p><p>Since, last year, they are also creating amazing AI content, particularly on Agentic AI and AI System Design. If you want to level up your System design and AI skills and join Educative, now if the perfect time as they are offering a limited time<strong><a href="https://www.educative.io/unlimited?aff=VMMr"> 60% discount on their 2-year Premium Plus Plan</a></strong>.</p><p>This provides best value as you get a discounted rate for 2 years and I highly recommend it.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.educative.io/unlimited?aff=VMMr&quot;,&quot;text&quot;:&quot;Unlock My 60% discount Now&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://www.educative.io/unlimited?aff=VMMr"><span>Unlock My 60% discount Now</span></a></p><h2>20 Multithreading and Concurrency Concepts Every Developer Should Learn</h2><p>Here are the 12 important System Design patterns I learned and mastered by going through different System Design resources. Once you understand these concepts, half the battle is already one.</p><h3>1. Process vs Thread</h3><p>A <strong>process</strong> is an independent program running in memory, while a <strong>thread</strong> is the smallest unit of execution inside a process.</p><p>A process has its own memory space, whereas threads within the same process share memory, making communication much faster.</p><p><strong>Example:</strong> A web browser is a process. Each tab or background task may run in its own thread.</p><p><strong>Key Takeaway:</strong> Threads are lightweight and share resources; processes are isolated.</p><h3>2. Creating Threads</h3><p>Java provides multiple ways to create threads:</p><ul><li><p>Extending the <code>Thread</code> class</p></li><li><p>Implementing the <code>Runnable</code> interface</p></li><li><p>Implementing <code>Callable</code></p></li><li><p>Using <code>ExecutorService</code> (recommended)</p></li></ul><p>Today, developers rarely create threads manually. Instead, they submit tasks to thread pools.</p><p><strong>Best Practice:</strong> Prefer <code>ExecutorService</code> over directly creating threads.</p><h3>3. Thread Lifecycle</h3><p>Every Java thread goes through several states:</p><ul><li><p>NEW</p></li><li><p>RUNNABLE</p></li><li><p>BLOCKED</p></li><li><p>WAITING</p></li><li><p>TIMED_WAITING</p></li><li><p>TERMINATED</p></li></ul><p>Understanding these states helps when debugging thread dumps or performance issues.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UmIk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b948351-0278-4b50-ac05-a01ed91527dc_700x256.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UmIk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b948351-0278-4b50-ac05-a01ed91527dc_700x256.png 424w, https://substackcdn.com/image/fetch/$s_!UmIk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b948351-0278-4b50-ac05-a01ed91527dc_700x256.png 848w, https://substackcdn.com/image/fetch/$s_!UmIk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b948351-0278-4b50-ac05-a01ed91527dc_700x256.png 1272w, https://substackcdn.com/image/fetch/$s_!UmIk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b948351-0278-4b50-ac05-a01ed91527dc_700x256.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UmIk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b948351-0278-4b50-ac05-a01ed91527dc_700x256.png" width="698" height="255.26857142857142" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2b948351-0278-4b50-ac05-a01ed91527dc_700x256.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:256,&quot;width&quot;:700,&quot;resizeWidth&quot;:698,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!UmIk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b948351-0278-4b50-ac05-a01ed91527dc_700x256.png 424w, https://substackcdn.com/image/fetch/$s_!UmIk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b948351-0278-4b50-ac05-a01ed91527dc_700x256.png 848w, https://substackcdn.com/image/fetch/$s_!UmIk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b948351-0278-4b50-ac05-a01ed91527dc_700x256.png 1272w, https://substackcdn.com/image/fetch/$s_!UmIk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b948351-0278-4b50-ac05-a01ed91527dc_700x256.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 aria-hidden="true" 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><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><h3>4. Thread Scheduling</h3><p>The JVM relies on the operating system to schedule threads.</p><p>There is <strong>no guarantee</strong> that higher-priority threads always execute first.</p><p>Methods like <code>yield()</code> and thread priorities should not be relied upon for application logic.</p><p><strong>Rule:</strong> Never assume execution order.</p><h3>5. Race Condition</h3><p>A race condition occurs when multiple threads access shared data simultaneously, and the final result depends on the timing of execution.</p><p>Example:</p>
      <p>
          <a href="https://javarevisited.substack.com/p/20-multithreading-and-concurrency">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[11 Must-Read AI and LLM Engineering Books for Developers in 2026]]></title><description><![CDATA[Software Engineer to AI Engineer - 11 Books to Learn AI and LLM Engineering]]></description><link>https://javarevisited.substack.com/p/11-must-read-ai-and-llm-engineering</link><guid isPermaLink="false">https://javarevisited.substack.com/p/11-must-read-ai-and-llm-engineering</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Wed, 22 Jul 2026 13:51:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!DjCG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f62868-22d1-418a-8389-35d7532172da_640x480.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello guys, Artificial Intelligence is no longer a futuristic idea &#8212; it&#8217;s already reshaping how we write code, build products, and run businesses.</p><p>Whether you&#8217;re a backend developer, frontend engineer, or DevOps specialist, transitioning into AI engineering could be one of the smartest career moves you make in 2026.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>The explosion of <strong>Large Language Models (LLMs)</strong> like GPT, Claude, and Gemini has created an urgent demand for engineers who can deploy, fine-tune, and build applications around these powerful models.</p><p>But becoming an AI Engineer isn&#8217;t just about knowing a few Python libraries. It requires understanding LLMs, machine learning systems, data pipelines, production-grade deployments, prompt engineering, and increasingly, <strong>agentic AI systems</strong>.</p><p>The good news? You don&#8217;t need to go back to school. The following <strong>11 books</strong> are great resource for anyone to go from software engineer to AI engineer in 2026.</p><p>These are also the most recommended books on AI, ML, and LLM, and you will find them recommend by Reddit as well as HN and other AI and Machine Learning forums.</p><p>By the way, if you prefer online courses then books then I highly recommend you to start with <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-ai-engineer-course-complete-ai-engineer-bootcamp%2F%3FcouponCode%3DKEEPLEARNING">The AI Engineer Course 2026: Complete AI Engineer Bootcamp</a></strong>, one of the most comprehensive resource to become an AI Engineer in 2026.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-ai-engineer-course-complete-ai-engineer-bootcamp%2F%3FcouponCode%3DKEEPLEARNING" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DjCG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f62868-22d1-418a-8389-35d7532172da_640x480.webp 424w, https://substackcdn.com/image/fetch/$s_!DjCG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f62868-22d1-418a-8389-35d7532172da_640x480.webp 848w, https://substackcdn.com/image/fetch/$s_!DjCG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f62868-22d1-418a-8389-35d7532172da_640x480.webp 1272w, https://substackcdn.com/image/fetch/$s_!DjCG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f62868-22d1-418a-8389-35d7532172da_640x480.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DjCG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f62868-22d1-418a-8389-35d7532172da_640x480.webp" width="638" height="478.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a6f62868-22d1-418a-8389-35d7532172da_640x480.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:480,&quot;width&quot;:640,&quot;resizeWidth&quot;:638,&quot;bytes&quot;:55828,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-ai-engineer-course-complete-ai-engineer-bootcamp%2F%3FcouponCode%3DKEEPLEARNING&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/165396043?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f62868-22d1-418a-8389-35d7532172da_640x480.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!DjCG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f62868-22d1-418a-8389-35d7532172da_640x480.webp 424w, https://substackcdn.com/image/fetch/$s_!DjCG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f62868-22d1-418a-8389-35d7532172da_640x480.webp 848w, https://substackcdn.com/image/fetch/$s_!DjCG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f62868-22d1-418a-8389-35d7532172da_640x480.webp 1272w, https://substackcdn.com/image/fetch/$s_!DjCG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f62868-22d1-418a-8389-35d7532172da_640x480.webp 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 aria-hidden="true" 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><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></p><h2>11 Best Books to become an AI Engineer in 2026</h2><p>Without any further ado, here are the 11 best books to become an AI Engineer in 2026. These books covers LLMs, AI Engineers, and all other skills you need to transition from Software Engineer to AI Engineer in 2026.</p><h3>1. <a href="https://www.amazon.com/AI-Engineering-Building-Applications-Foundation/dp/1098166302/?tag=javamysqlanta-20">AI Engineering by Chip Huyen</a></h3><p>This is the definitive book for understanding what it means to engineer AI systems that work in the real world.</p><p>Before reading this book, I checked with people who are working as AI Engineer to find out exactly what they do and most of them are responsible for building a multi-agent chat bot using LLMs.</p><p>One friend told me that that he don&#8217;t do any ML and his previous AI Engineering job involved building LLM agents as well.</p><p>This means a good knowledge of LLM is very important for transitioning from Software Engineer to AI Engineer and that&#8217;s where this book really shines.</p><p>Chip Huyen &#8212; Stanford lecturer and founder of Claypot AI &#8212; breaks down the end-to-end lifecycle of machine learning systems, from model development to deployment and monitoring.</p><p>It covers all important topics an AI Engineer should know including MLOps, real-time ML, data-centric AI, production challenges.</p><p><strong>Here is the link to get this book &#8212; </strong><a href="https://www.amazon.com/AI-Engineering-Building-Applications-Foundation/dp/1098166302/?tag=javamysqlanta-20">AI Engineering by Chip Huyen</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/AI-Engineering-Building-Applications-Foundation/dp/1098166302/?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Z1M_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1acf31c-72d8-4ce8-95b7-087379285305_514x675.png 424w, https://substackcdn.com/image/fetch/$s_!Z1M_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1acf31c-72d8-4ce8-95b7-087379285305_514x675.png 848w, https://substackcdn.com/image/fetch/$s_!Z1M_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1acf31c-72d8-4ce8-95b7-087379285305_514x675.png 1272w, https://substackcdn.com/image/fetch/$s_!Z1M_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1acf31c-72d8-4ce8-95b7-087379285305_514x675.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Z1M_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1acf31c-72d8-4ce8-95b7-087379285305_514x675.png" width="302" height="396.5953307392996" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c1acf31c-72d8-4ce8-95b7-087379285305_514x675.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:675,&quot;width&quot;:514,&quot;resizeWidth&quot;:302,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/AI-Engineering-Building-Applications-Foundation/dp/1098166302/?tag=javamysqlanta-20&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Z1M_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1acf31c-72d8-4ce8-95b7-087379285305_514x675.png 424w, https://substackcdn.com/image/fetch/$s_!Z1M_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1acf31c-72d8-4ce8-95b7-087379285305_514x675.png 848w, https://substackcdn.com/image/fetch/$s_!Z1M_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1acf31c-72d8-4ce8-95b7-087379285305_514x675.png 1272w, https://substackcdn.com/image/fetch/$s_!Z1M_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1acf31c-72d8-4ce8-95b7-087379285305_514x675.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 aria-hidden="true" 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><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><h3>2. <a href="https://www.amazon.com/LLM-Engineers-Handbook-engineering-production/dp/1836200072?tag=javamysqlanta-20">The LLM Engineering Handbook by Paul Iusztin and Maxime Labonne</a></h3><p>Do you want to understand the entire LLM stack &#8212; embedding models, vector databases, prompt chaining, retrieval augmented generation (RAG)?</p><p>This handbook  by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Paul Iusztin&quot;,&quot;id&quot;:110559689,&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%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc338ba2-c0e7-4ddb-a3e2-77638e3ab173_3610x3609.jpeg&quot;,&quot;uuid&quot;:&quot;30854ce2-2244-4ec7-ac90-bade87861f75&quot;}" data-component-name="MentionToDOM"></span>  and <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Maxime Labonne&quot;,&quot;id&quot;:31453795,&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%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e73529-4d58-4477-b896-6d1e1f5c9796_896x896.png&quot;,&quot;uuid&quot;:&quot;37119572-8be8-495d-977a-d4e93df0e8fe&quot;}" data-component-name="MentionToDOM"></span>  is one of the best guides for developers who want to build, fine-tune, and deploy LLM applications and for for those who love to go deeper and applying more robust models.</p><p>This book cover all key skills and libraries like like <em>LangChain</em>, <em>OpenAI APIs</em>, RAG, fine-tuning, evals, agents.</p><p>I found about this book on Reddit and I must say the authors have done an amazing job in explaining the concepts. I am currently at chapter number 6 and loving the way the content has been structured.</p><p>The authors have made it quite practical and hands-on.</p><p><strong>Here is the link to get this book &#8212; </strong><a href="https://www.amazon.com/LLM-Engineers-Handbook-engineering-production/dp/1836200072?tag=javamysqlanta-20">The LLM Engineering Handbook</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/LLM-Engineers-Handbook-engineering-production/dp/1836200072?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!q7Ro!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc2be150-1fa8-485f-93c0-9f0cbcbf066b_514x633.png 424w, https://substackcdn.com/image/fetch/$s_!q7Ro!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc2be150-1fa8-485f-93c0-9f0cbcbf066b_514x633.png 848w, https://substackcdn.com/image/fetch/$s_!q7Ro!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc2be150-1fa8-485f-93c0-9f0cbcbf066b_514x633.png 1272w, https://substackcdn.com/image/fetch/$s_!q7Ro!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc2be150-1fa8-485f-93c0-9f0cbcbf066b_514x633.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!q7Ro!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc2be150-1fa8-485f-93c0-9f0cbcbf066b_514x633.png" width="370" height="455.66147859922177" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bc2be150-1fa8-485f-93c0-9f0cbcbf066b_514x633.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:633,&quot;width&quot;:514,&quot;resizeWidth&quot;:370,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/LLM-Engineers-Handbook-engineering-production/dp/1836200072?tag=javamysqlanta-20&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!q7Ro!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc2be150-1fa8-485f-93c0-9f0cbcbf066b_514x633.png 424w, https://substackcdn.com/image/fetch/$s_!q7Ro!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc2be150-1fa8-485f-93c0-9f0cbcbf066b_514x633.png 848w, https://substackcdn.com/image/fetch/$s_!q7Ro!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc2be150-1fa8-485f-93c0-9f0cbcbf066b_514x633.png 1272w, https://substackcdn.com/image/fetch/$s_!q7Ro!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc2be150-1fa8-485f-93c0-9f0cbcbf066b_514x633.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 aria-hidden="true" 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><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><h3>3. <a href="https://www.amazon.com/Designing-Machine-Learning-Systems-Production-Ready/dp/1098107969?tag=javamysqlanta-20">Designing Machine Learning Systems by Chip Huyen</a></h3><p>This is another ML book which I found on Reddit and love it.</p><p>This book bridges the gap between ML theory and software engineering practice. It walks you through building scalable and maintainable ML pipelines.</p><p>Its actually a great companion to <em><a href="https://www.amazon.com/AI-Engineering-Building-Applications-Foundation/dp/1098166302/?tag=javamysqlanta-20">AI Engineering</a> which teaches you</em> general use of existing models in development.</p><p>It also provide good overview of the several different concepts in this field and covers topics like Data pipelines, model deployment, scalability, software design for ML.</p><p>Though, It&#8217;s not a code focused book and there&#8217;s a negligible amount of code throughout the entire book. But the conceptual content is good and I&#8217;d highly recommend it</p><p><strong>Here is the link to get this book &#8212; </strong><a href="https://www.amazon.com/Designing-Machine-Learning-Systems-Production-Ready/dp/1098107969?tag=javamysqlanta-20">Designing Machine Learning Systems</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/Designing-Machine-Learning-Systems-Production-Ready/dp/1098107969?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!r3of!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41683212-a19a-4110-90f0-dc0a6b03ee75_514x674.png 424w, https://substackcdn.com/image/fetch/$s_!r3of!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41683212-a19a-4110-90f0-dc0a6b03ee75_514x674.png 848w, https://substackcdn.com/image/fetch/$s_!r3of!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41683212-a19a-4110-90f0-dc0a6b03ee75_514x674.png 1272w, https://substackcdn.com/image/fetch/$s_!r3of!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41683212-a19a-4110-90f0-dc0a6b03ee75_514x674.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!r3of!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41683212-a19a-4110-90f0-dc0a6b03ee75_514x674.png" width="348" height="456.32684824902725" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/41683212-a19a-4110-90f0-dc0a6b03ee75_514x674.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:674,&quot;width&quot;:514,&quot;resizeWidth&quot;:348,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/Designing-Machine-Learning-Systems-Production-Ready/dp/1098107969?tag=javamysqlanta-20&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!r3of!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41683212-a19a-4110-90f0-dc0a6b03ee75_514x674.png 424w, https://substackcdn.com/image/fetch/$s_!r3of!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41683212-a19a-4110-90f0-dc0a6b03ee75_514x674.png 848w, https://substackcdn.com/image/fetch/$s_!r3of!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41683212-a19a-4110-90f0-dc0a6b03ee75_514x674.png 1272w, https://substackcdn.com/image/fetch/$s_!r3of!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41683212-a19a-4110-90f0-dc0a6b03ee75_514x674.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 aria-hidden="true" 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><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><h3>4. <a href="https://buff.ly/wjpOeTB">Building LLMs for Production by Louis-Fran&#231;ois Bouchard and Louie Peters</a></h3><p>If you are looking for a book to learn LLMs in depth then this book is for you. Created by Louis-Francois Bouchard and Louie Peter this book will teach you what it take to build and deploy LLM in production.</p>
      <p>
          <a href="https://javarevisited.substack.com/p/11-must-read-ai-and-llm-engineering">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Stop Confusing JWT, OAuth, and SAML – Here’s the Clear Breakdown]]></title><description><![CDATA[Difference between JWT, OAuth, and SAML]]></description><link>https://javarevisited.substack.com/p/jwt-vs-oauth-vs-saml-which-one-should</link><guid isPermaLink="false">https://javarevisited.substack.com/p/jwt-vs-oauth-vs-saml-which-one-should</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Tue, 21 Jul 2026 15:23:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!_4qj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32083c83-b378-4966-aa3e-fe3a2368bb94_700x454.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p><strong>Preparing for System Design Interview? <a href="https://bytebytego.com/pricing?fpr=javarevisited">ByteByteGo</a> can help you. They are also offering a rare <a href="https://bytebytego.com/pricing?fpr=javarevisited">50% discount</a> now on their lifetime plan</strong></p></blockquote><p>Hello friends, one of the most common questions in Java developer interviews nowadays is<strong> the difference between JWT, OAuth2.0, and SAML?</strong> and <strong>when to use them</strong>. If you are preparing for Java developer interviews, asked this question, and looking for an answer, you have come to the right place.</p><p>While<code> JWT</code>, <code>OAuth</code>, and <code>SAML </code>These are well-known standards used for authentication and authorization purposes in web applications. There are many differences between them.</p><p>For example, JWT is<strong> JSON Web Token,</strong> a<em> standard for securely transmitting information between parties as a JSON object</em>. It is used to authenticate and authorize users and is commonly used in modern web applications. JWTs are digitally signed so that they can be verified and trusted.</p><p>On the other hand, <strong>OAuth (Open Authorization)</strong> is an <em>open standard for authorization that allows third-party applications to access user data without requiring users to share their login credentials.</em> It is commonly used in applications that need to access data from external services, such as social media platforms or APIs.</p><p>Similarly,<strong> SAML (Security Assertion Markup Language)</strong> is another standard for <em>exchanging authentication and authorization data between parties, specifically between an identity provider (IdP) and a service provider (SP)</em>. It is commonly used in enterprise applications to provide single sign-on (SSO) functionality.</p><p><em>One of the most famous examples of SAML is SingPass authentication, which is used Singapore Government to access government websites like Vaccination certificates, CPF, IRAS, etc.</em></p><p>Now that we know the basics, it&#8217;s time to dive deep and learn them in more detail so that you can answer any follow-up questions.</p><p>By the way, if you are preparing for System design interviews and want to learn System Design in depth then you can also checkout sites like <strong><a href="https://bit.ly/3P3eqMN">ByteByteGo</a></strong>, <strong><a href="https://bit.ly/3pMiO8g">Design Guru</a></strong>, <strong><a href="https://bit.ly/3cNF0vw">Exponent</a></strong>, <strong><a href="https://bit.ly/3Mnh6UR">Educative</a></strong>, <strong><a href="https://codemia.io/?via=javarevisited">Codemia.io</a></strong>, <a href="https://www.bugfree.ai/?via=javarevisited">bugfree.ai</a> and <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=">Udemy</a></strong> which have many great System design courses</p><p></p><h1>What is JWT (JSON Web Token)? When to use it?</h1><p>As I said, JWT stands for JSON Web Token, a type of token used for securely transmitting information between parties. JWTs are commonly used for authentication and authorization purposes in web applications.</p><p>A JWT comprises three parts: <strong>a header, a payload, and a signature</strong>. The header specifies the token type and the signing algorithm, while the shipment contains the transmitted data.</p>
      <p>
          <a href="https://javarevisited.substack.com/p/jwt-vs-oauth-vs-saml-which-one-should">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[From Zero to Linux Expert : Master the Terminal in 10 Days]]></title><description><![CDATA[10 Day Plan to Learn Linux for DevOps and Developers]]></description><link>https://javarevisited.substack.com/p/from-zero-to-linux-expert-master</link><guid isPermaLink="false">https://javarevisited.substack.com/p/from-zero-to-linux-expert-master</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Sun, 19 Jul 2026 06:58:42 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!8YkA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2fa8db5-a6a8-4fa8-8844-e4e71ee8dd79_2048x1360.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p><em><strong>(Sponsored) I</strong>f you&#8217;re part of a team transitioning into AI, grab the <strong><a href="https://academy.towardsai.net/bundles/get-it-all?ref=af681e">Get It All: From Novice to Expert Bundle</a></strong>. It&#8217;s more cost-effective for multiple people and gives you a complete learning path from fundamentals through advanced topics.</em></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://academy.towardsai.net/bundles/get-it-all?ref=af681e" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8YkA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2fa8db5-a6a8-4fa8-8844-e4e71ee8dd79_2048x1360.png 424w, https://substackcdn.com/image/fetch/$s_!8YkA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2fa8db5-a6a8-4fa8-8844-e4e71ee8dd79_2048x1360.png 848w, https://substackcdn.com/image/fetch/$s_!8YkA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2fa8db5-a6a8-4fa8-8844-e4e71ee8dd79_2048x1360.png 1272w, https://substackcdn.com/image/fetch/$s_!8YkA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2fa8db5-a6a8-4fa8-8844-e4e71ee8dd79_2048x1360.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8YkA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2fa8db5-a6a8-4fa8-8844-e4e71ee8dd79_2048x1360.png" width="1456" height="967" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a2fa8db5-a6a8-4fa8-8844-e4e71ee8dd79_2048x1360.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:967,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3717503,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://academy.towardsai.net/bundles/get-it-all?ref=af681e&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://techfusionist.substack.com/i/202997275?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2fa8db5-a6a8-4fa8-8844-e4e71ee8dd79_2048x1360.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!8YkA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2fa8db5-a6a8-4fa8-8844-e4e71ee8dd79_2048x1360.png 424w, https://substackcdn.com/image/fetch/$s_!8YkA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2fa8db5-a6a8-4fa8-8844-e4e71ee8dd79_2048x1360.png 848w, https://substackcdn.com/image/fetch/$s_!8YkA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2fa8db5-a6a8-4fa8-8844-e4e71ee8dd79_2048x1360.png 1272w, https://substackcdn.com/image/fetch/$s_!8YkA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2fa8db5-a6a8-4fa8-8844-e4e71ee8dd79_2048x1360.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 aria-hidden="true" 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><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>Hello friends, we are glad to have <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Tech Fusionist&quot;,&quot;id&quot;:262949371,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f3099131-25c3-4a7b-aa15-6e6f5867ef61_1254x1254.png&quot;,&quot;uuid&quot;:&quot;a9ece26c-8d70-4cf5-82f2-c214e8b78d42&quot;}" data-component-name="MentionToDOM"></span>  here with his second guest post for Javarevisited readers. In the last post you learned about <a href="https://javarevisited.substack.com/p/why-kubernetes-exists-and-how-every">Kubernetes with visuals</a> and now, he is going to share how you can learn and master Linux in just 10 days with same highly effective visual way. </p><p>Most people learning DevOps skip Linux &#8212; and regret it later.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>Not because Linux is hard. Because the command line feels intimidating and the learning path is scattered across a thousand browser tabs. So, I redesigned the entire journey into a visual 10-day Linux roadmap &#128039;</p><p>This roadmap takes you from:</p><p><strong>Shell &#8594; Filesystem &#8594; Permissions &#8594; Processes &#8594; Networking &#8594; Scripting &#8594; Automation</strong></p><p>Everything is explained visually, step-by-step, and beginner-friendly. No unnecessary theory. Just a structured path to help you actually live in the terminal &#8212; the way real DevOps engineers do.</p><p><span>Building a resilient, high-performing culture means prioritizing fast recovery over finger-pointing and that starts with confidently navigating the systems you manage. Remember the one idea that ties it all together: </span><strong>in Linux, everything is a file</strong><span>. Master the terminal, and you master DevOps.</span></p><h3><a href="https://codemia.io/pricing?via=javarevisited">Codemia.io (60% OFF)</a> (Sponsored)</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://codemia.io/pricing?via=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!c0Cc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7714aa8e-7519-4f0e-b008-a5d343cf0995_1200x630.png 424w, https://substackcdn.com/image/fetch/$s_!c0Cc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7714aa8e-7519-4f0e-b008-a5d343cf0995_1200x630.png 848w, https://substackcdn.com/image/fetch/$s_!c0Cc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7714aa8e-7519-4f0e-b008-a5d343cf0995_1200x630.png 1272w, https://substackcdn.com/image/fetch/$s_!c0Cc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7714aa8e-7519-4f0e-b008-a5d343cf0995_1200x630.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!c0Cc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7714aa8e-7519-4f0e-b008-a5d343cf0995_1200x630.png" width="1200" height="630" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7714aa8e-7519-4f0e-b008-a5d343cf0995_1200x630.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:630,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Codemia - Mac&#12289;Windows (PC) &#29256;&#26700;&#38754;&#24212;&#29992;- WebCatalog&quot;,&quot;title&quot;:&quot;Codemia - Mac&#12289;Windows (PC) &#29256;&#26700;&#38754;&#24212;&#29992;- WebCatalog&quot;,&quot;type&quot;:null,&quot;href&quot;:&quot;https://codemia.io/pricing?via=javarevisited&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Codemia - Mac&#12289;Windows (PC) &#29256;&#26700;&#38754;&#24212;&#29992;- WebCatalog" title="Codemia - Mac&#12289;Windows (PC) &#29256;&#26700;&#38754;&#24212;&#29992;- WebCatalog" srcset="https://substackcdn.com/image/fetch/$s_!c0Cc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7714aa8e-7519-4f0e-b008-a5d343cf0995_1200x630.png 424w, https://substackcdn.com/image/fetch/$s_!c0Cc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7714aa8e-7519-4f0e-b008-a5d343cf0995_1200x630.png 848w, https://substackcdn.com/image/fetch/$s_!c0Cc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7714aa8e-7519-4f0e-b008-a5d343cf0995_1200x630.png 1272w, https://substackcdn.com/image/fetch/$s_!c0Cc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7714aa8e-7519-4f0e-b008-a5d343cf0995_1200x630.png 1456w" sizes="100vw" loading="lazy" 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 aria-hidden="true" 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><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://codemia.io/pricing?via=javarevisited">Codemia.io</a> is a hands-on system design learning platform that helps you <strong>practice designing real systems</strong> step-by-step. It gives you challenges like designing YouTube, WhatsApp, or URL Shorteners and provides guided feedback as you iterate.</p><p>If you are preparing for System Design interview then you can use Codemia.io to solve real problems and learn what it takes to explain your solution on real interview. Their platform is both AI powered and give you tools to architect and explain you solution.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://codemia.io/pricing?via=javarevisited&quot;,&quot;text&quot;:&quot;Get 60% Discount Now&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://codemia.io/pricing?via=javarevisited"><span>Get 60% Discount Now</span></a></p><h2><strong>Roadmap Navigation</strong></h2><ul><li><p><strong>Module 1 &#8594; Foundations:</strong><span> Filesystem hierarchy, essential commands, navigation</span></p><p><span>PDF</span></p></li><li><p><strong>Module 2 &#8594; Users, Permissions &amp; Processes:</strong><span> Permissions, ownership, users, sudo, systemd</span></p><p><span>PDF</span></p></li><li><p><strong>Module 3 &#8594; System &amp; Network Admin:</strong><span> Package management, networking, SSH</span></p><p><span>PDF</span></p></li><li><p><strong>Module 4 &#8594; Automation &amp; Production Readiness:</strong><span> Bash scripting, log analysis, security &amp; hardening</span></p><p><span>PDF</span></p></li></ul><h2><strong>Module 1 - Foundations &#128039;</strong></h2><p>Start here if the terminal still feels like a black box. This module builds the mental model you need before anything else: how Linux is structured, where files live, and the handful of commands you&#8217;ll type every single day.</p><h3><strong>Day 1 - Linux Fundamentals &amp; Filesystem</strong></h3><p><span>Why ~90% of servers run Linux , how the system is layered (hardware &#8594; kernel &#8594; shell &#8594; user programs) , the Debian vs Red Hat families , and the Filesystem Hierarchy (</span><code>/usr/bin</code><span>, </span><code>/usr/sbin</code><span>, </span><code>/etc</code><span>, </span><code>/home</code><span>, </span><code>/var</code><span>, </span><code>/proc</code><span>).</span></p><blockquote><blockquote><p><strong>Tip:</strong><span> </span><code>/</code><span> is the root of the tree &#8212; don&#8217;t confuse it with </span><code>/root</code><span>.</span></p></blockquote></blockquote><p>If you need a resource, you can also checkout <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-linux-command-line-bootcamp%2F">Colt Steele&#8217;s Linux Bootcamp on Udemy</a> , its awesome. </strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-linux-command-line-bootcamp%2F" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!USRg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91efcf39-018f-4151-a820-022bccc430a6_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!USRg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91efcf39-018f-4151-a820-022bccc430a6_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!USRg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91efcf39-018f-4151-a820-022bccc430a6_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!USRg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91efcf39-018f-4151-a820-022bccc430a6_1744x2336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!USRg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91efcf39-018f-4151-a820-022bccc430a6_1744x2336.png" width="1456" height="1950" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/91efcf39-018f-4151-a820-022bccc430a6_1744x2336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:5456258,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-linux-command-line-bootcamp%2F&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://techfusionist.substack.com/i/202997275?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91efcf39-018f-4151-a820-022bccc430a6_1744x2336.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!USRg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91efcf39-018f-4151-a820-022bccc430a6_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!USRg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91efcf39-018f-4151-a820-022bccc430a6_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!USRg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91efcf39-018f-4151-a820-022bccc430a6_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!USRg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91efcf39-018f-4151-a820-022bccc430a6_1744x2336.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 aria-hidden="true" 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><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><h3><strong>Day 2 - Essential Commands &amp; Navigation</strong></h3><p><span>The daily toolkit: </span><code>pwd</code><span>, </span><code>ls -lah</code><span>, </span><code>cd</code><span>, </span><code>tree</code><span> , plus create/copy/move/delete, viewing files (</span><code>cat</code><span>, </span><code>less</code><span>, </span><code>head</code><span>, </span><code>tail -f</code><span>) , finding things (</span><code>find</code><span>, </span><code>grep</code><span>, </span><code>locate</code><span>) , wildcards, and pipes &amp; redirection.</span></p><p><code>locate</code><span> uses a database and may require updatedb before finding recently created files.</span></p><blockquote><blockquote><p><strong>Tip:</strong><span> Pipes + </span><code>grep</code><span> + </span><code>tail</code><span> become your log-hunting toolkit &#8212; and </span><code>rm -rf</code><span> has no undo, so always double-check the path.</span></p></blockquote></blockquote><p>If you need a comprehensive resource to master essential commands and navigation, You can also checkout<strong> <a href="https://academy.zerotomastery.io/a/aff_glpct39t/external?affcode=441520_zytgk2dn">Zero To Mastery: DevOps Bootcamp &#8212; Learn Linux &amp; Become a Linux Sysadmin</a></strong>, its a great, comprehensive, and up-to-date resource for learning Linux. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://academy.zerotomastery.io/a/aff_glpct39t/external?affcode=441520_zytgk2dn" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Mc2C!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad153f0-ddd4-488a-b7e8-7725af2e425e_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!Mc2C!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad153f0-ddd4-488a-b7e8-7725af2e425e_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!Mc2C!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad153f0-ddd4-488a-b7e8-7725af2e425e_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!Mc2C!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad153f0-ddd4-488a-b7e8-7725af2e425e_1744x2336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Mc2C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad153f0-ddd4-488a-b7e8-7725af2e425e_1744x2336.png" width="1456" height="1950" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6ad153f0-ddd4-488a-b7e8-7725af2e425e_1744x2336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:5073609,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://academy.zerotomastery.io/a/aff_glpct39t/external?affcode=441520_zytgk2dn&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://techfusionist.substack.com/i/202997275?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad153f0-ddd4-488a-b7e8-7725af2e425e_1744x2336.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Mc2C!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad153f0-ddd4-488a-b7e8-7725af2e425e_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!Mc2C!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad153f0-ddd4-488a-b7e8-7725af2e425e_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!Mc2C!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad153f0-ddd4-488a-b7e8-7725af2e425e_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!Mc2C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad153f0-ddd4-488a-b7e8-7725af2e425e_1744x2336.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 aria-hidden="true" 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><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>Module 2 - Users, Permissions &amp; Processes &#128039;</strong></h2><p>Now Linux starts feeling like real system administration. This module covers the trio that trips up every beginner on a live server: who can do what, who you are, and what&#8217;s actually running.</p><h3><strong>Day 3 - File Permissions &amp; Ownership</strong></h3><p><span>Reading </span><code>ls -l</code><span>, the </span><code>rwx</code><span> model , numeric (octal) permissions , </span><code>chmod</code><span>, </span><code>chown</code><span>/</span><code>chgrp</code><span> , umask and special bits. This is why your SSH key needs </span><code>600</code><span> and your scripts need </span><code>+x</code><span>.</span></p><blockquote><blockquote><p><strong>Tip:</strong><span> Remember 4-2-1 , and Avoid </span><code>chmod 777</code><span> unless you fully understand the security implications.</span></p></blockquote></blockquote><p>By the way, if you need an online course to learn Linux commands and concepts from A to Z then I suggest you can also checkout <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Flinux-mastery%2F">Enroll in Linux Mastery course</a></strong> on Udemy, its a great resource. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Flinux-mastery%2F" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RzFy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F537c805f-9b00-4412-a7bd-01001a5d5b40_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!RzFy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F537c805f-9b00-4412-a7bd-01001a5d5b40_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!RzFy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F537c805f-9b00-4412-a7bd-01001a5d5b40_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!RzFy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F537c805f-9b00-4412-a7bd-01001a5d5b40_1744x2336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RzFy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F537c805f-9b00-4412-a7bd-01001a5d5b40_1744x2336.png" width="1456" height="1950" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/537c805f-9b00-4412-a7bd-01001a5d5b40_1744x2336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4271397,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Flinux-mastery%2F&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://techfusionist.substack.com/i/202997275?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F537c805f-9b00-4412-a7bd-01001a5d5b40_1744x2336.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!RzFy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F537c805f-9b00-4412-a7bd-01001a5d5b40_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!RzFy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F537c805f-9b00-4412-a7bd-01001a5d5b40_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!RzFy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F537c805f-9b00-4412-a7bd-01001a5d5b40_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!RzFy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F537c805f-9b00-4412-a7bd-01001a5d5b40_1744x2336.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 aria-hidden="true" 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><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><h3><strong><br><span>Day 4 - Users, Groups &amp; sudo</span></strong></h3><p><span>The three kinds of users (root, regular, service accounts) , where users live (</span><code>/etc/passwd</code><span>, </span><code>/etc/shadow</code><span>, </span><code>/etc/group</code><span>) , managing users and groups, </span><code>su</code><span> vs </span><code>sudo</code><span> , and editing sudoers safely with </span><code>visudo</code><span>.</span></p><blockquote><blockquote><p><strong>Tip:</strong><span> The golden rule: grant the </span><em>least</em><span> access needed, never blanket root.</span></p></blockquote><blockquote><p><span>Password hashes are stored in </span><code>/etc/shadow</code><span>, not </span><code>/etc/passwd</code><span>.</span></p></blockquote></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!WIfQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F460e27e0-fc31-4f37-8166-c59bbde31d57_1744x2336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WIfQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F460e27e0-fc31-4f37-8166-c59bbde31d57_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!WIfQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F460e27e0-fc31-4f37-8166-c59bbde31d57_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!WIfQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F460e27e0-fc31-4f37-8166-c59bbde31d57_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!WIfQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F460e27e0-fc31-4f37-8166-c59bbde31d57_1744x2336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WIfQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F460e27e0-fc31-4f37-8166-c59bbde31d57_1744x2336.png" width="1456" height="1950" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/460e27e0-fc31-4f37-8166-c59bbde31d57_1744x2336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:5132254,&quot;alt&quot;:&quot;&quot;,&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://techfusionist.substack.com/i/202997275?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F460e27e0-fc31-4f37-8166-c59bbde31d57_1744x2336.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!WIfQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F460e27e0-fc31-4f37-8166-c59bbde31d57_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!WIfQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F460e27e0-fc31-4f37-8166-c59bbde31d57_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!WIfQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F460e27e0-fc31-4f37-8166-c59bbde31d57_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!WIfQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F460e27e0-fc31-4f37-8166-c59bbde31d57_1744x2336.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 aria-hidden="true" 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><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><h3><strong>Day 5 - Process Management &amp; systemd</strong></h3><p><span>What a process really is (PID, PPID, PID 1 = systemd) , viewing processes with </span><code>ps</code><span>/</span><code>top</code><span>/</span><code>htop</code><span> , foreground vs background jobs , signals (</span><code>SIGTERM</code><span> before </span><code>SIGKILL</code><span>) , priority with </span><code>nice</code><span> , and managing services with </span><code>systemctl</code><span> and </span><code>journalctl</code><span>.</span><br><br><em><strong>Note: On most modern Linux distributions, systemd runs as PID 1.</strong></em></p><blockquote><blockquote><p><strong>Tip:</strong><span> </span><code>systemctl enable --now</code><span> and </span><code>journalctl -u &lt;svc&gt; -f</code><span> become muscle memory.</span></p></blockquote></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4LG3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16d020d-b8b9-4299-a23e-f5d91b5466dc_1744x2336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4LG3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16d020d-b8b9-4299-a23e-f5d91b5466dc_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!4LG3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16d020d-b8b9-4299-a23e-f5d91b5466dc_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!4LG3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16d020d-b8b9-4299-a23e-f5d91b5466dc_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!4LG3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16d020d-b8b9-4299-a23e-f5d91b5466dc_1744x2336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4LG3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16d020d-b8b9-4299-a23e-f5d91b5466dc_1744x2336.png" width="1456" height="1950" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a16d020d-b8b9-4299-a23e-f5d91b5466dc_1744x2336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4825778,&quot;alt&quot;:&quot;&quot;,&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://techfusionist.substack.com/i/202997275?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16d020d-b8b9-4299-a23e-f5d91b5466dc_1744x2336.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!4LG3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16d020d-b8b9-4299-a23e-f5d91b5466dc_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!4LG3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16d020d-b8b9-4299-a23e-f5d91b5466dc_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!4LG3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16d020d-b8b9-4299-a23e-f5d91b5466dc_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!4LG3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16d020d-b8b9-4299-a23e-f5d91b5466dc_1744x2336.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 aria-hidden="true" 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><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>Module 3 - System &amp; Network Admin &#128039;</strong></h2><p>This is where Linux begins to feel like real infrastructure engineering. You&#8217;ll learn how software gets onto a machine and how machines talk to each other &#8212; the two things every server depends on.</p><h3><strong>Day 6 - Package Management &amp; Software</strong></h3><p><span>What a package manager actually does, the two families (</span><code>apt</code><span> for Debian/Ubuntu, </span><code>dnf</code><span>/</span><code>yum</code><span> for Red Hat/Fedora) , daily commands, repositories &amp; GPG keys , and universal packages (Snap, Flatpak, pip, npm, Docker images).</span></p><blockquote><blockquote><p><strong>Tip:</strong><span> Always </span><code>apt update</code><span> before </span><code>apt install</code><span> - and never pipe a random </span><code>curl | bash</code><span> into production.</span></p></blockquote></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GS3Y!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F473d86bd-ff3b-4a68-b204-7ecab77c800a_1744x2336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GS3Y!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F473d86bd-ff3b-4a68-b204-7ecab77c800a_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!GS3Y!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F473d86bd-ff3b-4a68-b204-7ecab77c800a_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!GS3Y!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F473d86bd-ff3b-4a68-b204-7ecab77c800a_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!GS3Y!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F473d86bd-ff3b-4a68-b204-7ecab77c800a_1744x2336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GS3Y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F473d86bd-ff3b-4a68-b204-7ecab77c800a_1744x2336.png" width="1456" height="1950" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/473d86bd-ff3b-4a68-b204-7ecab77c800a_1744x2336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:5222153,&quot;alt&quot;:&quot;&quot;,&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://techfusionist.substack.com/i/202997275?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F473d86bd-ff3b-4a68-b204-7ecab77c800a_1744x2336.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!GS3Y!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F473d86bd-ff3b-4a68-b204-7ecab77c800a_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!GS3Y!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F473d86bd-ff3b-4a68-b204-7ecab77c800a_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!GS3Y!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F473d86bd-ff3b-4a68-b204-7ecab77c800a_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!GS3Y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F473d86bd-ff3b-4a68-b204-7ecab77c800a_1744x2336.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 aria-hidden="true" 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><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><h3><strong><br><span>Day 7 - Networking &amp; SSH Essentials</span></strong></h3><p><span>IP + port + protocol , common ports (22, 80, 443, 5432, 6379, 53, 3306) , inspecting the network (</span><code>ip addr</code><span>, </span><code>ss -tulnp</code><span>, </span><code>curl -I</code><span>, </span><code>nslookup</code><span>) , connecting and copying (</span><code>ssh</code><span>, </span><code>scp</code><span>, </span><code>rsync</code><span>) , passwordless SSH keys , the </span><code>~/.ssh/config</code><span> shortcut , and hardening SSH.</span></p><blockquote><blockquote><p><strong>Tip:</strong><span> Your private key stays on your machine (</span><code>chmod 600</code><span>) &#8212; only the </span><code>.pub</code><span> goes to the server.</span></p></blockquote></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HAUA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F036f2976-823d-4c1e-b2b5-c659d691230d_1744x2336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HAUA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F036f2976-823d-4c1e-b2b5-c659d691230d_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!HAUA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F036f2976-823d-4c1e-b2b5-c659d691230d_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!HAUA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F036f2976-823d-4c1e-b2b5-c659d691230d_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!HAUA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F036f2976-823d-4c1e-b2b5-c659d691230d_1744x2336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HAUA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F036f2976-823d-4c1e-b2b5-c659d691230d_1744x2336.png" width="1456" height="1950" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/036f2976-823d-4c1e-b2b5-c659d691230d_1744x2336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4853493,&quot;alt&quot;:&quot;&quot;,&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://techfusionist.substack.com/i/202997275?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F036f2976-823d-4c1e-b2b5-c659d691230d_1744x2336.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!HAUA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F036f2976-823d-4c1e-b2b5-c659d691230d_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!HAUA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F036f2976-823d-4c1e-b2b5-c659d691230d_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!HAUA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F036f2976-823d-4c1e-b2b5-c659d691230d_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!HAUA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F036f2976-823d-4c1e-b2b5-c659d691230d_1744x2336.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 aria-hidden="true" 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><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>Module 4 - Production Readiness &#128039;</strong></h2><p><span>The final stage is where everything comes together into real automation. Scripting, log analysis, and security turn you from someone who </span><em>uses</em><span> a server into someone who can </span><em>operate, automate, and defend</em><span> one.</span></p><h3><strong>Day 8 - Bash Shell Scripting</strong></h3><p><span>Anatomy of a script (shebang, </span><code>set -euo pipefail</code><span>) , variables &amp; arguments , conditions, loops , functions &amp; exit codes , a real log-backup script , and scheduling with </span><code>cron</code><span>.</span><br><br><em><strong>Note: Cron remains widely used, though modern distributions also support systemd timers.</strong></em></p><blockquote><blockquote><p><strong>Tip:</strong><span> Quote your variables (</span><code>"$VAR"</code><span>) to avoid word-splitting bugs , and always test in staging before scheduling on prod.</span></p></blockquote></blockquote><p>If you want to learn bash in depth and need a resource, I highly recommend you to checkout the<a href="https://www.educative.io/collection/10370001/5734099469729792?authorName=Educative%3Faffiliate_id%3D5073518643380224"> learn bash course</a> on Educative. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.educative.io/collection/10370001/5734099469729792?authorName=Educative%3Faffiliate_id%3D5073518643380224" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BKGp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0d8d05c-f0a4-490e-9f07-5bc22b7575f8_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!BKGp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0d8d05c-f0a4-490e-9f07-5bc22b7575f8_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!BKGp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0d8d05c-f0a4-490e-9f07-5bc22b7575f8_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!BKGp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0d8d05c-f0a4-490e-9f07-5bc22b7575f8_1744x2336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BKGp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0d8d05c-f0a4-490e-9f07-5bc22b7575f8_1744x2336.png" width="1456" height="1950" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b0d8d05c-f0a4-490e-9f07-5bc22b7575f8_1744x2336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4763057,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://www.educative.io/collection/10370001/5734099469729792?authorName=Educative%3Faffiliate_id%3D5073518643380224&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://techfusionist.substack.com/i/202997275?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0d8d05c-f0a4-490e-9f07-5bc22b7575f8_1744x2336.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!BKGp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0d8d05c-f0a4-490e-9f07-5bc22b7575f8_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!BKGp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0d8d05c-f0a4-490e-9f07-5bc22b7575f8_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!BKGp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0d8d05c-f0a4-490e-9f07-5bc22b7575f8_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!BKGp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0d8d05c-f0a4-490e-9f07-5bc22b7575f8_1744x2336.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 aria-hidden="true" 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><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><h3><strong>Day 9 - Text Processing &amp; Log Analysis</strong></h3><p><span>The power chain every engineer leans on: </span><code>grep | awk | sort | uniq -c | sort -rn | jq</code><span>. Search with </span><code>grep</code><span>, slice columns with </span><code>awk</code><span>, find-and-replace with </span><code>sed</code><span> , and combine </span><code>cut</code><span>/</span><code>sort</code><span>/</span><code>uniq</code><span>/</span><code>wc</code><span> for instant answers from messy logs.</span></p><blockquote><blockquote><p><strong>Tip:</strong><span> When something breaks, read the logs first.</span></p></blockquote></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!61_E!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa43676d3-98d3-4285-aa4e-54ba4d8689c2_1744x2336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!61_E!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa43676d3-98d3-4285-aa4e-54ba4d8689c2_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!61_E!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa43676d3-98d3-4285-aa4e-54ba4d8689c2_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!61_E!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa43676d3-98d3-4285-aa4e-54ba4d8689c2_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!61_E!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa43676d3-98d3-4285-aa4e-54ba4d8689c2_1744x2336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!61_E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa43676d3-98d3-4285-aa4e-54ba4d8689c2_1744x2336.png" width="1456" height="1950" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a43676d3-98d3-4285-aa4e-54ba4d8689c2_1744x2336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4634718,&quot;alt&quot;:&quot;&quot;,&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://techfusionist.substack.com/i/202997275?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa43676d3-98d3-4285-aa4e-54ba4d8689c2_1744x2336.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!61_E!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa43676d3-98d3-4285-aa4e-54ba4d8689c2_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!61_E!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa43676d3-98d3-4285-aa4e-54ba4d8689c2_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!61_E!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa43676d3-98d3-4285-aa4e-54ba4d8689c2_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!61_E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa43676d3-98d3-4285-aa4e-54ba4d8689c2_1744x2336.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 aria-hidden="true" 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><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><h3><strong>Day 10 - Security, Hardening &amp; Troubleshooting</strong></h3><p>Locking a server down with firewalls, SSH hardening recap, keeping the system patched, the least-privilege checklist, a step-by-step troubleshooting playbook (status &#8594; logs &#8594; ports &#8594; resources), and resource health checks.</p><blockquote><blockquote><p><strong>Tip:</strong></p></blockquote><blockquote><p><span>Harden </span><em>before</em><span> you expose a server to the internet.</span></p></blockquote><blockquote><p>Disable password authentication and prefer SSH keys whenever possible.</p></blockquote></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4kT-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3724081-4bff-490b-9b4b-a371746b5bcd_1744x2336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4kT-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3724081-4bff-490b-9b4b-a371746b5bcd_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!4kT-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3724081-4bff-490b-9b4b-a371746b5bcd_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!4kT-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3724081-4bff-490b-9b4b-a371746b5bcd_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!4kT-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3724081-4bff-490b-9b4b-a371746b5bcd_1744x2336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4kT-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3724081-4bff-490b-9b4b-a371746b5bcd_1744x2336.png" width="1456" height="1950" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f3724081-4bff-490b-9b4b-a371746b5bcd_1744x2336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4697969,&quot;alt&quot;:&quot;&quot;,&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://techfusionist.substack.com/i/202997275?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3724081-4bff-490b-9b4b-a371746b5bcd_1744x2336.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!4kT-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3724081-4bff-490b-9b4b-a371746b5bcd_1744x2336.png 424w, https://substackcdn.com/image/fetch/$s_!4kT-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3724081-4bff-490b-9b4b-a371746b5bcd_1744x2336.png 848w, https://substackcdn.com/image/fetch/$s_!4kT-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3724081-4bff-490b-9b4b-a371746b5bcd_1744x2336.png 1272w, https://substackcdn.com/image/fetch/$s_!4kT-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3724081-4bff-490b-9b4b-a371746b5bcd_1744x2336.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 aria-hidden="true" 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><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>Progress Tracker &#128039;</strong></h2><ul><li><p><span>[ ] </span><strong>Module 1</strong><span> &#8226; Foundations</span></p></li><li><p><span>[ ] </span><strong>Module 2</strong><span> &#8226; Users, Permissions &amp; Processes</span></p></li><li><p><span>[ ] </span><strong>Module 3</strong><span> &#8226; System &amp; Network Admin</span></p></li><li><p><span>[ ] </span><strong>Module 4</strong><span> &#8226; Production Readiness</span></p></li></ul><h2><strong>Continue the Journey &#128039;</strong></h2><p><span>Linux gets easier the moment you stop reading about it and start typing. Don&#8217;t try to memorize every flag.</span><br><br><strong>Focus on:</strong></p><ul><li><p>Navigating the filesystem without thinking.</p></li><li><p>Fixing permissions and ownership confidently.</p></li><li><p>Reading logs to diagnose problems.</p></li><li><p>Writing small scripts to automate the boring stuff.</p></li><li><p>Hardening a box before it goes live.</p></li></ul><p>That is how real Linux confidence is built. By Day 10, you&#8217;ll be able to operate, automate, and secure real Linux servers - the foundation everything else in DevOps sits on.</p><p><strong><br><span>Follow </span><a href="https://techfusionist.substack.com/"><span>Tech Fusionist</span></a></strong><span> on other platforms for more DevOps, Cloud, Linux, Kubernetes, and AI content.</span></p><p><span>&#128279; </span><strong>Linktree:</strong><span> </span><a href="https://linktr.ee/techfusionist">https://linktr.ee/techfusionist</a></p><div class="embedded-publication-wrap" data-attrs="{&quot;id&quot;:3539839,&quot;embedding_publication_id&quot;:null,&quot;name&quot;:&quot;Join 4000+ Subscribers Learning AI, Cloud &amp; DevOps&quot;,&quot;logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!nvM4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff24150fa-634b-4533-a56e-62f9bbba655d_1280x1280.png&quot;,&quot;base_url&quot;:&quot;https://techfusionist.substack.com&quot;,&quot;hero_text&quot;:&quot;&#127873; Subscribe today and get the \&quot;Architecting AI Agents\&quot; visual guide for FREE.&quot;,&quot;author_name&quot;:&quot;Tech Fusionist&quot;,&quot;show_subscribe&quot;:true,&quot;logo_bg_color&quot;:&quot;#ffffff&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="EmbeddedPublicationToDOMWithSubscribe"><div class="embedded-publication show-subscribe"><a class="embedded-publication-link-part" native="true" href="https://techfusionist.substack.com?utm_source=substack&amp;utm_campaign=publication_embed&amp;utm_medium=web"><img class="embedded-publication-logo" src="https://substackcdn.com/image/fetch/$s_!nvM4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff24150fa-634b-4533-a56e-62f9bbba655d_1280x1280.png" width="56" height="56" style="background-color: rgb(255, 255, 255);"><span class="embedded-publication-name">Join 4000+ Subscribers Learning AI, Cloud &amp; DevOps</span><div class="embedded-publication-hero-text">&#127873; Subscribe today and get the "Architecting AI Agents" visual guide for FREE.</div><div class="embedded-publication-author-name">By Tech Fusionist</div></a><form class="embedded-publication-subscribe" method="GET" action="https://techfusionist.substack.com/subscribe?"><input type="hidden" name="source" value="publication-embed"><input type="hidden" name="autoSubmit" value="true"><input type="email" class="email-input" name="email" placeholder="Type your email..."><input type="submit" class="button primary" value="Subscribe"></form></div></div><p><em><strong>P.S.</strong> &#8212; If you&#8217;re part of a team transitioning into AI, grab the <strong><a href="https://academy.towardsai.net/bundles/get-it-all?ref=af681e">Get It All: From Novice to Expert Bundle</a></strong>. It&#8217;s more cost-effective for multiple people and gives you a complete learning path from fundamentals through advanced topics.</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>]]></content:encoded></item><item><title><![CDATA[I Spent 300+ Hours Testing AI Coding Tools: Here Are the 12 Every Developer Should Know in 2026]]></title><description><![CDATA[12 AI Coding Tools and Framework which is worth your time]]></description><link>https://javarevisited.substack.com/p/i-spent-300-hours-testing-ai-coding</link><guid isPermaLink="false">https://javarevisited.substack.com/p/i-spent-300-hours-testing-ai-coding</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Thu, 16 Jul 2026 14:01:08 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!zOMR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1bfe241-917c-45cc-a2f4-41c0aeb17b6c_700x394.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h3>&#128073;<a href="https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo">Datacamp 50% OFF (Sponsored)</a></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!R92M!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 424w, https://substackcdn.com/image/fetch/$s_!R92M!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 848w, https://substackcdn.com/image/fetch/$s_!R92M!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 1272w, https://substackcdn.com/image/fetch/$s_!R92M!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!R92M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png" width="1200" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:395035,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/193475530?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!R92M!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 424w, https://substackcdn.com/image/fetch/$s_!R92M!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 848w, https://substackcdn.com/image/fetch/$s_!R92M!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.png 1272w, https://substackcdn.com/image/fetch/$s_!R92M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F008c5f8b-d5a9-4ad5-8d72-7f64de83fead_1200x600.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 aria-hidden="true" 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><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>Looking to break into Data Science or AI? Join DataCamp today for hands-on learning. They're currently offering an incredible 50% discount on their annual plans.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo&quot;,&quot;text&quot;:&quot;Join Now for 50% OFF&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo"><span>Join Now for 50% OFF</span></a></p><div><hr></div><p>Hello friends the way we write code has changed more in the last two years than in the previous ten. The developers who understand this and adapt are shipping faster, building more ambitious projects, and becoming genuinely hard to compete with. The ones who don&#8217;t are spending twice as long on work that could take half the time.</p><p>I&#8217;ve spent hundreds of hours working with GitHub Copilot, Cursor, Claude Code, Amazon Q, <code>Replit</code>, and a dozen other AI coding tools. Some completely transformed how I work.</p><p>Others were hype with underwhelming substance. This article is the honest breakdown of what&#8217;s actually worth your time in 2026.</p><p>Whether you&#8217;re a backend engineer, a full-stack developer, or a data scientist who writes code, these are the 10 AI tools that will matter most this year &#8212; and the courses to help you actually master each one.</p><blockquote><p><em><strong>New to Generative AI?</strong> Before diving into specific tools, I&#8217;d recommend going through the <strong><a href="https://www.educative.io/courses/generative-ai-handbook?aff=VMMr">Generative AI Handbook</a></strong> on Educative first. Understanding how LLMs actually work makes every tool on this list click faster and makes you dramatically more effective when </em></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zOMR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1bfe241-917c-45cc-a2f4-41c0aeb17b6c_700x394.jpeg 424w, https://substackcdn.com/image/fetch/$s_!zOMR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1bfe241-917c-45cc-a2f4-41c0aeb17b6c_700x394.jpeg 848w, https://substackcdn.com/image/fetch/$s_!zOMR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1bfe241-917c-45cc-a2f4-41c0aeb17b6c_700x394.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!zOMR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1bfe241-917c-45cc-a2f4-41c0aeb17b6c_700x394.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zOMR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1bfe241-917c-45cc-a2f4-41c0aeb17b6c_700x394.jpeg" width="728" height="409.76" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c1bfe241-917c-45cc-a2f4-41c0aeb17b6c_700x394.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:394,&quot;width&quot;:700,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;I Spent 300+ Hours Testing AI Coding Tools: Here Are the 10 Every Developer Should Know&quot;,&quot;title&quot;:&quot;I Spent 300+ Hours Testing AI Coding Tools: Here Are the 10 Every Developer Should Know&quot;,&quot;type&quot;:null,&quot;href&quot;:&quot;https://datacamp.pxf.io/c/1193463/1012793/13294?u=https%3A%2F%2Fwww.datacamp.com%2Fpromo&quot;,&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="I Spent 300+ Hours Testing AI Coding Tools: Here Are the 10 Every Developer Should Know" title="I Spent 300+ Hours Testing AI Coding Tools: Here Are the 10 Every Developer Should Know" srcset="https://substackcdn.com/image/fetch/$s_!zOMR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1bfe241-917c-45cc-a2f4-41c0aeb17b6c_700x394.jpeg 424w, https://substackcdn.com/image/fetch/$s_!zOMR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1bfe241-917c-45cc-a2f4-41c0aeb17b6c_700x394.jpeg 848w, https://substackcdn.com/image/fetch/$s_!zOMR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1bfe241-917c-45cc-a2f4-41c0aeb17b6c_700x394.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!zOMR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1bfe241-917c-45cc-a2f4-41c0aeb17b6c_700x394.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 aria-hidden="true" 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><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></p><h2>12 AI Coding Tools and Framework Every Developer Should Know in 2026</h2><p>Without any further ado, here are the 10 AI Coding tools every developer should learn in 2026, I have also shared relevant resources like online courses, books and tutorials for your reference.</p><h3>1. Claude Code by Anthropic &#8212; Best for Context-Aware, Production-Quality Code</h3><p>Claude Code is the tool that has most changed how I approach complex coding tasks. Built on Anthropic&#8217;s Claude models, it doesn&#8217;t just autocomplete &#8212; it understands what you&#8217;re <em>trying to build</em> and reasons about the best way to do it.</p><p>Where GitHub Copilot excels at line-by-line completion, Claude Code excels at bigger-picture tasks: refactoring a sprawling module, explaining a 500-line function you&#8217;ve never seen, generating an entire feature from a natural language description, or debugging a subtle logic error by actually reasoning through the code flow.</p><p>The conversational approach means you can iterate &#8212; &#8220;make that function more efficient,&#8221; &#8220;add error handling,&#8221; &#8220;explain why you chose that data structure&#8221; &#8212; and get thoughtful responses that improve with each exchange.</p><p><strong>Why learn it:</strong> Claude stands out for its accuracy, reasoning depth, and ability to maintain context across a long coding session. For developers who want a thinking partner rather than just an autocomplete engine, Claude Code is in a class of its own.</p><p><strong>&#127891; Recommended course:</strong> <a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fanthropic-claude-code%2F%3FcouponCode%3DMT300725A">Claude Code: Building Faster with AI, from Prototype to Prod</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_!Yk8f!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffaa0683d-5e06-4ca0-aaf2-753bbac0a19f_700x394.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Yk8f!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffaa0683d-5e06-4ca0-aaf2-753bbac0a19f_700x394.png 424w, https://substackcdn.com/image/fetch/$s_!Yk8f!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffaa0683d-5e06-4ca0-aaf2-753bbac0a19f_700x394.png 848w, https://substackcdn.com/image/fetch/$s_!Yk8f!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffaa0683d-5e06-4ca0-aaf2-753bbac0a19f_700x394.png 1272w, https://substackcdn.com/image/fetch/$s_!Yk8f!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffaa0683d-5e06-4ca0-aaf2-753bbac0a19f_700x394.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Yk8f!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffaa0683d-5e06-4ca0-aaf2-753bbac0a19f_700x394.png" width="700" height="394" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/faa0683d-5e06-4ca0-aaf2-753bbac0a19f_700x394.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:394,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Yk8f!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffaa0683d-5e06-4ca0-aaf2-753bbac0a19f_700x394.png 424w, https://substackcdn.com/image/fetch/$s_!Yk8f!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffaa0683d-5e06-4ca0-aaf2-753bbac0a19f_700x394.png 848w, https://substackcdn.com/image/fetch/$s_!Yk8f!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffaa0683d-5e06-4ca0-aaf2-753bbac0a19f_700x394.png 1272w, https://substackcdn.com/image/fetch/$s_!Yk8f!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffaa0683d-5e06-4ca0-aaf2-753bbac0a19f_700x394.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 aria-hidden="true" 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><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><h3>2. GitHub Copilot &#8212; The Original AI Pair Programmer</h3><p>The tool that started the AI coding revolution and still dominates adoption. GitHub Copilot writes code in real time as you type &#8212; suggesting entire functions, generating boilerplate, proposing API usage, and even writing test cases based on the code it sees in your editor.</p><p>It lives inside VS Code, JetBrains, and other major editors, making it the most frictionless AI coding tool available. The GitHub Copilot certification (GH-300) is also increasingly appearing in job descriptions, which makes becoming fluent in it a career move, not just a productivity hack.</p><p><strong>Why learn it:</strong> No other tool has this level of editor integration and ecosystem maturity. Even if you use other AI tools for specific tasks, Copilot remains the best for continuous, in-flow code assistance.</p><p><strong>&#127891; Recommended course:</strong> <a href="https://www.educative.io/courses/github-copilot?aff=VMMr">Mastering GitHub Copilot on Educative</a></p><div data-attrs="{&quot;url&quot;:&quot;https://www.educative.io/v2api/editorpage/5683833923829760/image/5058651370684416&quot;}" data-component-name="AssetErrorToDOM"><picture><img src="/img/missing-image.png" height="455" width="728"></picture></div><p></p><h3>3. OpenAI Codex &#8212; The High-Throughput Parallel Engine</h3><p>OpenAI Codex has evolved from a simple code completion model into a powerhouse agentic development platform. </p><p>Unlike tools meant for single-file edits, Codex is designed for parallel task execution, allowing you to run multiple independent agents to handle tasks like QA passes, dependency checks, or CRM updates simultaneously. </p><p>It integrates natively with GitHub, Linear, and Slack, providing a &#8220;workspace-first&#8221; experience that manages your entire project lifecycle rather than just suggesting the next line of code.</p><p><strong>Why learn it:</strong> It is the best-in-class tool for teams and developers who need to automate complex, multi-step workflows. Its ability to manage parallel sandbox environments and execute background desktop automation makes it the most mature &#8220;developer workstation&#8221; in the 2026 AI ecosystem.</p><p><strong>Recommended course </strong>- <strong><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fcodex-the-practical-guide">Codex &#8212; The Practical Guide</a></strong></p><p>If you&#8217;re looking for a no-nonsense, hands-on introduction to OpenAI&#8217;s Codex, this is it. This course cuts through the hype and gets straight into practical applications.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fcodex-the-practical-guide" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ce2K!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9ae7c95-330d-4ac5-8d0f-151e3e0f1614_680x382.png 424w, https://substackcdn.com/image/fetch/$s_!ce2K!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9ae7c95-330d-4ac5-8d0f-151e3e0f1614_680x382.png 848w, https://substackcdn.com/image/fetch/$s_!ce2K!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9ae7c95-330d-4ac5-8d0f-151e3e0f1614_680x382.png 1272w, https://substackcdn.com/image/fetch/$s_!ce2K!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9ae7c95-330d-4ac5-8d0f-151e3e0f1614_680x382.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ce2K!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9ae7c95-330d-4ac5-8d0f-151e3e0f1614_680x382.png" width="728" height="408.9647058823529" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a9ae7c95-330d-4ac5-8d0f-151e3e0f1614_680x382.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:382,&quot;width&quot;:680,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:145183,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fcodex-the-practical-guide&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/207289427?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9ae7c95-330d-4ac5-8d0f-151e3e0f1614_680x382.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!ce2K!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9ae7c95-330d-4ac5-8d0f-151e3e0f1614_680x382.png 424w, https://substackcdn.com/image/fetch/$s_!ce2K!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9ae7c95-330d-4ac5-8d0f-151e3e0f1614_680x382.png 848w, https://substackcdn.com/image/fetch/$s_!ce2K!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9ae7c95-330d-4ac5-8d0f-151e3e0f1614_680x382.png 1272w, https://substackcdn.com/image/fetch/$s_!ce2K!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9ae7c95-330d-4ac5-8d0f-151e3e0f1614_680x382.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 aria-hidden="true" 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><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><h3>4. Devin &#8212; The Autonomous Software Engineer</h3><p>Devin represents the &#8220;second wave&#8221; of AI coding: fully autonomous, unattended engineering. </p><p>You define a high-level goal in natural language, and Devin takes over the entire process&#8212;planning the architecture, writing the code, researching documentation, executing tests, and submitting pull requests without requiring constant human oversight. </p><p>It functions like an outsourced senior engineer who works within your cloud sandbox, communicating progress and asking for clarification only when it hits a roadblock.</p><p><strong>Why learn it:</strong> It changes your role from an implementer to an architect. Mastering Devin means learning how to manage AI agents, review their code quality, and provide high-level technical direction, which is becoming a critical skill as companies shift toward fully autonomous CI/CD pipelines.</p><p><strong>Recommended course - <a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2F">Intro to AI Agents: Build an Army of Digital Workers with AI</a></strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2F" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AHTo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a0a999a-b443-4225-8c4b-399578d49e75_800x450.webp 424w, https://substackcdn.com/image/fetch/$s_!AHTo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a0a999a-b443-4225-8c4b-399578d49e75_800x450.webp 848w, https://substackcdn.com/image/fetch/$s_!AHTo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a0a999a-b443-4225-8c4b-399578d49e75_800x450.webp 1272w, https://substackcdn.com/image/fetch/$s_!AHTo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a0a999a-b443-4225-8c4b-399578d49e75_800x450.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AHTo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a0a999a-b443-4225-8c4b-399578d49e75_800x450.webp" width="728" height="409.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3a0a999a-b443-4225-8c4b-399578d49e75_800x450.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:450,&quot;width&quot;:800,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Build Your Own AI Data Analyst (Part 1)&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2F&quot;,&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="Build Your Own AI Data Analyst (Part 1)" title="Build Your Own AI Data Analyst (Part 1)" srcset="https://substackcdn.com/image/fetch/$s_!AHTo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a0a999a-b443-4225-8c4b-399578d49e75_800x450.webp 424w, https://substackcdn.com/image/fetch/$s_!AHTo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a0a999a-b443-4225-8c4b-399578d49e75_800x450.webp 848w, https://substackcdn.com/image/fetch/$s_!AHTo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a0a999a-b443-4225-8c4b-399578d49e75_800x450.webp 1272w, https://substackcdn.com/image/fetch/$s_!AHTo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a0a999a-b443-4225-8c4b-399578d49e75_800x450.webp 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 aria-hidden="true" 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><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><h3>5. Cursor &#8212; The AI-Native Code Editor Built for Real Codebases</h3><p>Cursor is VS Code but with GPT-4 and Claude built in at a deep level &#8212; not bolted on. The crucial difference is that Cursor understands your <em>entire codebase</em>, not just the file you&#8217;re currently editing.</p><p>That means when you ask it to add a feature, fix a bug, or refactor a module, it actually has the context it needs to give you an answer that works.</p><p>For developers working on real, multi-file projects &#8212; not just tutorials or toy examples &#8212; Cursor is the tool that most closely replicates the experience of having a senior engineer who knows your codebase sitting next to you.</p><p><em>If you don&#8217;t know SpaceX bought the cursor for 60M, that shows its value.</em></p><p><strong>Why learn it:</strong> Cursor is becoming the preferred editor for serious developers in the AI era. Its whole-codebase context understanding solves the biggest limitation of tools like Copilot &#8212; giving suggestions without understanding how the pieces fit together.</p><p><strong>&#127891; Recommended course:</strong> <a href="https://www.educative.io/courses/cursor-ai?aff=VMMr">Build Smarter Code with Cursor AI on Educative</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.educative.io/courses/cursor-ai?aff=VMMr" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nxBQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7943ad4c-e059-4a5a-b287-33d77a0020fa_784x392.png 424w, https://substackcdn.com/image/fetch/$s_!nxBQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7943ad4c-e059-4a5a-b287-33d77a0020fa_784x392.png 848w, https://substackcdn.com/image/fetch/$s_!nxBQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7943ad4c-e059-4a5a-b287-33d77a0020fa_784x392.png 1272w, https://substackcdn.com/image/fetch/$s_!nxBQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7943ad4c-e059-4a5a-b287-33d77a0020fa_784x392.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nxBQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7943ad4c-e059-4a5a-b287-33d77a0020fa_784x392.png" width="784" height="392" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7943ad4c-e059-4a5a-b287-33d77a0020fa_784x392.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:392,&quot;width&quot;:784,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:191475,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://www.educative.io/courses/cursor-ai?aff=VMMr&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/207289427?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7943ad4c-e059-4a5a-b287-33d77a0020fa_784x392.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_!nxBQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7943ad4c-e059-4a5a-b287-33d77a0020fa_784x392.png 424w, https://substackcdn.com/image/fetch/$s_!nxBQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7943ad4c-e059-4a5a-b287-33d77a0020fa_784x392.png 848w, https://substackcdn.com/image/fetch/$s_!nxBQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7943ad4c-e059-4a5a-b287-33d77a0020fa_784x392.png 1272w, https://substackcdn.com/image/fetch/$s_!nxBQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7943ad4c-e059-4a5a-b287-33d77a0020fa_784x392.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 aria-hidden="true" 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><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><h3>6. ChatGPT &#8212; The Universal AI Coding Assistant</h3><p>ChatGPT remains one of the most versatile tools in a developer&#8217;s arsenal &#8212; not because it&#8217;s the best at any specific coding task, but because it&#8217;s the best at the <em>wide range</em> of coding-adjacent tasks that fill a developer&#8217;s day: explaining an error message, writing a regex pattern, generating a SQL query, producing a test plan, drafting technical documentation, or just thinking through an architectural decision.</p><p>The Code Interpreter / Advanced Data Analysis mode adds Python execution, data analysis, chart generation, and real-time debugging &#8212; making it particularly powerful for data engineers and analysts.</p><p><strong>Why learn it:</strong> ChatGPT&#8217;s versatility makes it the highest-ROI tool for developers who want a single interface that handles everything from quick questions to complex analysis.</p><p><strong>&#127891; Recommended course:</strong> <a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fchatgpt-complete-chatgpt-course-for-work-2023-ethically-chat-gpt%2F%3FcouponCode%3DMT300725A">ChatGPT: Complete ChatGPT Course For Work 2026 (Ethically)!</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fchatgpt-complete-chatgpt-course-for-work-2023-ethically-chat-gpt%2F%3FcouponCode%3DMT300725A" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RkNA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27cd6da5-00d0-4783-aff0-e90df6cb1c07_700x394.png 424w, https://substackcdn.com/image/fetch/$s_!RkNA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27cd6da5-00d0-4783-aff0-e90df6cb1c07_700x394.png 848w, https://substackcdn.com/image/fetch/$s_!RkNA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27cd6da5-00d0-4783-aff0-e90df6cb1c07_700x394.png 1272w, https://substackcdn.com/image/fetch/$s_!RkNA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27cd6da5-00d0-4783-aff0-e90df6cb1c07_700x394.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RkNA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27cd6da5-00d0-4783-aff0-e90df6cb1c07_700x394.png" width="728" height="409.76" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/27cd6da5-00d0-4783-aff0-e90df6cb1c07_700x394.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:394,&quot;width&quot;:700,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fchatgpt-complete-chatgpt-course-for-work-2023-ethically-chat-gpt%2F%3FcouponCode%3DMT300725A&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!RkNA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27cd6da5-00d0-4783-aff0-e90df6cb1c07_700x394.png 424w, https://substackcdn.com/image/fetch/$s_!RkNA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27cd6da5-00d0-4783-aff0-e90df6cb1c07_700x394.png 848w, https://substackcdn.com/image/fetch/$s_!RkNA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27cd6da5-00d0-4783-aff0-e90df6cb1c07_700x394.png 1272w, https://substackcdn.com/image/fetch/$s_!RkNA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27cd6da5-00d0-4783-aff0-e90df6cb1c07_700x394.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 aria-hidden="true" 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><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><h3>7. Amazon Q Developer &#8212; Best for AWS-Native Development</h3><p>Amazon&#8217;s answer to GitHub Copilot, built specifically for the AWS ecosystem. Amazon Q Developer understands AWS services deeply &#8212; it can help you write Lambda functions, CloudFormation templates, CDK stacks, and IAM policies with context that generic coding tools simply don&#8217;t have.</p><p>If you&#8217;re building cloud-native applications on AWS, Amazon Q Developer is the most valuable specialized tool available. It generates security-aware, production-ready code that integrates naturally with the AWS services you&#8217;re already using.</p><p><strong>&#128161; Why learn it:</strong> For AWS developers, Amazon Q Developer is the tool that understands your platform better than any general-purpose assistant. If your infrastructure is AWS, this is a significant productivity multiplier.</p><p><strong>&#127891; Recommended course:</strong> <a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-complete-ai-coding-course-2025-cursor-ai-v0-vercel%2F%3FcouponCode%3DMT300725A">Amazon Q Developer for Programmers and DevOps AWS AI Coding</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-complete-ai-coding-course-2025-cursor-ai-v0-vercel%2F%3FcouponCode%3DMT300725A" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jZO5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8563d243-3514-4237-836f-43a7da1970e5_700x394.png 424w, https://substackcdn.com/image/fetch/$s_!jZO5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8563d243-3514-4237-836f-43a7da1970e5_700x394.png 848w, https://substackcdn.com/image/fetch/$s_!jZO5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8563d243-3514-4237-836f-43a7da1970e5_700x394.png 1272w, https://substackcdn.com/image/fetch/$s_!jZO5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8563d243-3514-4237-836f-43a7da1970e5_700x394.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jZO5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8563d243-3514-4237-836f-43a7da1970e5_700x394.png" width="728" height="409.76" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8563d243-3514-4237-836f-43a7da1970e5_700x394.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:394,&quot;width&quot;:700,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-complete-ai-coding-course-2025-cursor-ai-v0-vercel%2F%3FcouponCode%3DMT300725A&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!jZO5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8563d243-3514-4237-836f-43a7da1970e5_700x394.png 424w, https://substackcdn.com/image/fetch/$s_!jZO5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8563d243-3514-4237-836f-43a7da1970e5_700x394.png 848w, https://substackcdn.com/image/fetch/$s_!jZO5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8563d243-3514-4237-836f-43a7da1970e5_700x394.png 1272w, https://substackcdn.com/image/fetch/$s_!jZO5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8563d243-3514-4237-836f-43a7da1970e5_700x394.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 aria-hidden="true" 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><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><h3>8. CrewAI &#8212; Best for Building Multi-Agent AI Systems</h3><p>CrewAI is the most important framework on this list for developers building the next generation of software &#8212; not just AI-assisted development, but AI <em>doing</em> development through autonomous, collaborative agent systems.</p><p>CrewAI enables you to create teams of AI agents, each with defined roles, goals, and capabilities &#8212; and have them collaborate on complex, multi-step engineering tasks. The <code>allow_code_execution</code> parameter even lets agents write and execute code themselves, creating genuine agentic software development workflows.</p><p>This is where software engineering is heading, and understanding CrewAI now puts you well ahead of where the industry will be in 12&#8211;18 months.</p><p><strong>&#128161; Why learn it:</strong> Multi-agent systems are the next paradigm after single-LLM coding assistants. CrewAI is the most mature framework for building them, and the developers who understand it will be defining how software gets built in the future.</p><p><strong>&#127891; Recommended courses:</strong></p><ul><li><p><a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fai-agents-workflows-the-practical-guide%2F%3FcouponCode%3DMT300725A">AI Agents &amp; Workflows &#8212; The Practical Guide on Udemy</a></p></li><li><p><a href="https://www.educative.io/courses/build-ai-agents-and-multi-agent-systems-with-crewai?aff=VMMr">Build AI Agents and Multi-Agent Systems with CrewAI on Educative</a></p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fai-agents-workflows-the-practical-guide%2F%3FcouponCode%3DMT300725A" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VKkc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca9f693d-a679-434c-9144-d21aa9f08f01_700x394.png 424w, https://substackcdn.com/image/fetch/$s_!VKkc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca9f693d-a679-434c-9144-d21aa9f08f01_700x394.png 848w, https://substackcdn.com/image/fetch/$s_!VKkc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca9f693d-a679-434c-9144-d21aa9f08f01_700x394.png 1272w, https://substackcdn.com/image/fetch/$s_!VKkc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca9f693d-a679-434c-9144-d21aa9f08f01_700x394.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VKkc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca9f693d-a679-434c-9144-d21aa9f08f01_700x394.png" width="728" height="409.76" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ca9f693d-a679-434c-9144-d21aa9f08f01_700x394.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:394,&quot;width&quot;:700,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fai-agents-workflows-the-practical-guide%2F%3FcouponCode%3DMT300725A&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!VKkc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca9f693d-a679-434c-9144-d21aa9f08f01_700x394.png 424w, https://substackcdn.com/image/fetch/$s_!VKkc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca9f693d-a679-434c-9144-d21aa9f08f01_700x394.png 848w, https://substackcdn.com/image/fetch/$s_!VKkc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca9f693d-a679-434c-9144-d21aa9f08f01_700x394.png 1272w, https://substackcdn.com/image/fetch/$s_!VKkc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca9f693d-a679-434c-9144-d21aa9f08f01_700x394.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 aria-hidden="true" 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><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><h3>9. Replit Ghostwriter &#8212; Best for Cloud-Based Rapid Prototyping</h3><p>Replit has evolved from a simple online IDE into a complete cloud development environment with AI assistance built in. Ghostwriter helps you generate, explain, and debug code directly in the browser &#8212; no local setup, no configuration, no environment conflicts.</p><p>For hackathons, quick prototypes, or running scripts that you don&#8217;t want to set up locally, Replit&#8217;s combination of cloud IDE and AI assistance is genuinely unbeatable. It&#8217;s also increasingly popular for vibe coding &#8212; the practice of building applications through natural language descriptions rather than traditional programming.</p><p><strong>&#128161; Why learn it:</strong> When you need to go from idea to working prototype in hours rather than days, Replit is the fastest path. Its AI assistance removes the friction of setup and environment management that slows down traditional development.</p><p><strong>&#127891; Recommended course:</strong> <a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-complete-ai-coding-course-2025-cursor-ai-v0-vercel%2F%3FcouponCode%3DMT300725A">The Complete AI Coding Course (2026) &#8212; Cursor, Replit, Claude Code</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-complete-ai-coding-course-2025-cursor-ai-v0-vercel%2F%3FcouponCode%3DMT300725A" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aZeU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cef7aec-2636-4a60-9e30-b39022e302d9_700x394.png 424w, https://substackcdn.com/image/fetch/$s_!aZeU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cef7aec-2636-4a60-9e30-b39022e302d9_700x394.png 848w, https://substackcdn.com/image/fetch/$s_!aZeU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cef7aec-2636-4a60-9e30-b39022e302d9_700x394.png 1272w, https://substackcdn.com/image/fetch/$s_!aZeU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cef7aec-2636-4a60-9e30-b39022e302d9_700x394.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aZeU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cef7aec-2636-4a60-9e30-b39022e302d9_700x394.png" width="728" height="409.76" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3cef7aec-2636-4a60-9e30-b39022e302d9_700x394.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:394,&quot;width&quot;:700,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-complete-ai-coding-course-2025-cursor-ai-v0-vercel%2F%3FcouponCode%3DMT300725A&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!aZeU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cef7aec-2636-4a60-9e30-b39022e302d9_700x394.png 424w, https://substackcdn.com/image/fetch/$s_!aZeU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cef7aec-2636-4a60-9e30-b39022e302d9_700x394.png 848w, https://substackcdn.com/image/fetch/$s_!aZeU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cef7aec-2636-4a60-9e30-b39022e302d9_700x394.png 1272w, https://substackcdn.com/image/fetch/$s_!aZeU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cef7aec-2636-4a60-9e30-b39022e302d9_700x394.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 aria-hidden="true" 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><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><h3>10. Tabnine &#8212; Best for Enterprise Teams With Privacy Requirements</h3><p>Tabnine uses LLMs fine-tuned on your team&#8217;s specific codebase &#8212; which is its key differentiator. Where Copilot and Claude learn from public code, Tabnine learns from <em>your</em> code. The suggestions it makes reflect your team&#8217;s conventions, naming patterns, and architectural choices rather than generic internet code.</p><p>The privacy consideration is also significant. Tabnine offers on-premise deployment options for enterprises that can&#8217;t send their code to external APIs &#8212; a non-negotiable requirement for many regulated industries and companies working on sensitive proprietary code.</p><p><strong>Why learn it:</strong> If you&#8217;re working in an enterprise environment with strict data governance requirements, Tabnine is often the only AI coding assistant that satisfies both security and compliance teams while still delivering genuine productivity gains.</p><p><strong>&#127891; Recommended course:</strong> <a href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-complete-ai-coding-course-2025-cursor-ai-v0-vercel%2F%3FcouponCode%3DMT300725A">Vibe Coding with ChatGPT, GitHub Copilot, Tabnine &amp; More</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-complete-ai-coding-course-2025-cursor-ai-v0-vercel%2F%3FcouponCode%3DMT300725A" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!erjy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9529521a-73e2-41c1-82a7-68efee19fbc5_700x394.png 424w, https://substackcdn.com/image/fetch/$s_!erjy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9529521a-73e2-41c1-82a7-68efee19fbc5_700x394.png 848w, https://substackcdn.com/image/fetch/$s_!erjy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9529521a-73e2-41c1-82a7-68efee19fbc5_700x394.png 1272w, https://substackcdn.com/image/fetch/$s_!erjy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9529521a-73e2-41c1-82a7-68efee19fbc5_700x394.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!erjy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9529521a-73e2-41c1-82a7-68efee19fbc5_700x394.png" width="728" height="409.76" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9529521a-73e2-41c1-82a7-68efee19fbc5_700x394.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:394,&quot;width&quot;:700,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://trk.udemy.com/c/3294490/3262185/39854?u=https%3A%2F%2Fwww.udemy.com%2Fcourse%2Fthe-complete-ai-coding-course-2025-cursor-ai-v0-vercel%2F%3FcouponCode%3DMT300725A&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!erjy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9529521a-73e2-41c1-82a7-68efee19fbc5_700x394.png 424w, https://substackcdn.com/image/fetch/$s_!erjy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9529521a-73e2-41c1-82a7-68efee19fbc5_700x394.png 848w, https://substackcdn.com/image/fetch/$s_!erjy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9529521a-73e2-41c1-82a7-68efee19fbc5_700x394.png 1272w, https://substackcdn.com/image/fetch/$s_!erjy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9529521a-73e2-41c1-82a7-68efee19fbc5_700x394.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 aria-hidden="true" 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><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><h3>11. Codeium &#8212; Best Free Alternative to GitHub Copilot</h3><p>Codeium is fast, free, and surprisingly capable &#8212; and that combination makes it the best starting point for developers who want AI code assistance without a subscription.</p><p>It integrates with VS Code, JetBrains, Vim, and most major editors, and delivers completion quality that genuinely competes with Copilot for standard coding tasks.</p><p>For independent developers, students, or anyone who wants to explore AI-assisted coding before committing to a paid tool, Codeium is the obvious first choice. Many developers end up staying with it permanently.</p><p><strong>Why learn it:</strong> There&#8217;s no reason not to use Codeium if you&#8217;re not already using a paid AI coding tool. It removes all the friction &#8212; free to use, easy to install, and immediately useful across every language and editor it supports.</p>
      <p>
          <a href="https://javarevisited.substack.com/p/i-spent-300-hours-testing-ai-coding">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The 2026 AI Engineer Roadmap]]></title><description><![CDATA[From Zero to Pro AI Engineer in 2026: The Complete Roadmap, from Raw Data to LLM Fine-Tuning, RAG and LLMOps]]></description><link>https://javarevisited.substack.com/p/the-2026-agentic-ai-engineer-roadmap</link><guid isPermaLink="false">https://javarevisited.substack.com/p/the-2026-agentic-ai-engineer-roadmap</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Tue, 14 Jul 2026 15:18:09 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!UE20!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p><em><strong>Looking to master Agentic AI? </strong>Check out the <strong><a href="https://academy.towardsai.net/courses/agent-engineering?ref=af681e">Agentic AI Engineering Course</a></strong> by Paul Iusztin (bestselling author of <a href="https://www.amazon.com/LLM-Engineers-Handbook-engineering-production/dp/1836200072?tag=javamysqlanta-20">LLM Engineer&#8217;s Handbook</a>). From fundamentals to production-ready agents with real projects &#8212; perfect for serious engineers. (Affiliate)</em></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://academy.towardsai.net/courses/agent-engineering?ref=af681e" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UE20!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!UE20!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!UE20!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!UE20!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UE20!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png" width="1200" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Architecture&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://academy.towardsai.net/courses/agent-engineering?ref=af681e&quot;,&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="Architecture" title="Architecture" srcset="https://substackcdn.com/image/fetch/$s_!UE20!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!UE20!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!UE20!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!UE20!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.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 aria-hidden="true" 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><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>Hello guys, I am excited to bring you another great post by </em><span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Paul Iusztin&quot;,&quot;id&quot;:110559689,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0714d360-396c-4b41-a676-1b58dc1dc5f3_1470x1470.jpeg&quot;,&quot;uuid&quot;:&quot;783ed1a1-57f1-4dfe-8c46-f5a15a04b1a7&quot;}" data-component-name="MentionToDOM"></span> ,  creator of popular <strong><a href="https://academy.towardsai.net/courses/agent-engineering?ref=af681e">Agentic AI Engineering Course</a></strong> and bestselling author of <a href="https://www.amazon.com/LLM-Engineers-Handbook-engineering-production/dp/1836200072?tag=javamysqlanta-20">LLM Engineer&#8217;s Handbook</a>).  Paul has been sharing some great resources when it comes to AI Engineering, Agenti AI engineering and Machine Learning.</p><p>In the past, Paul has contributed epic resources like <a href="https://javarevisited.substack.com/p/the-complete-ai-and-llm-engineering">The Complete AI and LLM Engineering Roadmap</a> and <a href="https://javarevisited.substack.com/p/rag-fundamentals-getting-started">RAG Fundamentals: Getting Started with Retrieval-Augmented Generation</a> and today, he is going to share the complete AI Engineering roadmap for 2026 and coming years. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>With that, I hand over to Paul to take you through the rest of the article. </p><p><em>Ever wanted to build an advanced project to level up in building production-ready AI systems, and didn&#8217;t know where to start?</em></p><p>If so, Decoding ML&#8217;s philosophy is to learn by doing. No procrastination, no useless &#8220;research,&#8221; just jump straight into it and learn along the way. Suppose that&#8217;s how you like to learn, then we have the perfect free learning resource for you.</p><p><span>For the builders from the AI community, we created the</span><strong><a href="https://github.com/decodingml/second-brain-ai-assistant-course"> Second Brain AI Assistant</a><span> open-source course</span></strong><span>, where you will learn to architect and build a production-ready Notion-like AI assistant </span><em>that talks to your digital resources.</em></p><p><em>&#8594; An end-to-end AI system, from data collection to fine-tuning, deploying, and LLMOps.</em></p><p>The course is 100% free, with no hidden costs and no registration required. You just need Decoding ML&#8217;s GitHub and Substack articles.</p><p>This course will teach you the core concepts required to build LLM/AI apps while implementing a fun project: a Second-Brain AI assistant.</p><p>While following the articles and running the code yourself, you will gain valuable skills in all the AI engineering roles, such as building ML pipelines, LLMOps systems, and RAG agents.</p><p>Before digging into more technical details, let&#8217;s understand what a Second Brain AI Assistant is.</p><h3><strong><a href="https://academy.towardsai.net/courses/agent-engineering?ref=af681e">Agentic AI Engineering Course by Paul Iustzin (aff)</a></strong></h3><p>If you&#8217;re serious about Agentic AI, this is the course you&#8217;ve been waiting for.</p><p>Authored by <strong>Paul Iusztin</strong> (bestselling <strong><a href="https://www.amazon.com/LLM-Engineers-Handbook-engineering-production/dp/1836200072?tag=javamysqlanta-20">LLM Engineer&#8217;s Handbook author</a></strong>), the <strong>Agentic AI Engineering</strong> course takes you from fundamentals to production-ready agents with real-world projects, evaluation frameworks, and deployment pipelines.</p><p>Perfect for engineers who want to move beyond demos.</p><p><strong>Here is the link to join this course</strong> <strong>- <a href="https://academy.towardsai.net/courses/agent-engineering?ref=af681e">Agentic AI Engineering (aff)</a> by </strong>Paul Iusztin</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://academy.towardsai.net/courses/agent-engineering?ref=af681e" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6g5m!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ddb895b-e451-4103-8a9e-1978bd72a58e_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!6g5m!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ddb895b-e451-4103-8a9e-1978bd72a58e_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!6g5m!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ddb895b-e451-4103-8a9e-1978bd72a58e_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!6g5m!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ddb895b-e451-4103-8a9e-1978bd72a58e_1200x1200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6g5m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ddb895b-e451-4103-8a9e-1978bd72a58e_1200x1200.png" width="725" height="725" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1ddb895b-e451-4103-8a9e-1978bd72a58e_1200x1200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:725,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;RAG Fundamentals First | Decoding AI Magazine&quot;,&quot;title&quot;:&quot;RAG Fundamentals First | Decoding AI Magazine&quot;,&quot;type&quot;:null,&quot;href&quot;:&quot;https://academy.towardsai.net/courses/agent-engineering?ref=af681e&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="RAG Fundamentals First | Decoding AI Magazine" title="RAG Fundamentals First | Decoding AI Magazine" srcset="https://substackcdn.com/image/fetch/$s_!6g5m!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ddb895b-e451-4103-8a9e-1978bd72a58e_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!6g5m!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ddb895b-e451-4103-8a9e-1978bd72a58e_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!6g5m!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ddb895b-e451-4103-8a9e-1978bd72a58e_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!6g5m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ddb895b-e451-4103-8a9e-1978bd72a58e_1200x1200.png 1456w" sizes="100vw" loading="lazy" 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 aria-hidden="true" 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><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><div><hr></div><h4><strong>So, what is the Second Brain AI Assistant?</strong></h4><p>The Second Brain, a concept by Tiago Forte, is your personal knowledge base of notes, ideas, and resources. Our AI Assistant leverages this knowledge to answer questions, summarize documents, and provide insights.</p><p>Imagine asking your AI Assistant to recommend agent courses, list top PDF parsing tools, or summarize LLM optimization methods - all based on your research, without manually searching through notes.</p><h4><strong>What you&#8217;ll do and learn:</strong></h4><p>While building your Second Brain AI Assistant, you will:</p><ul><li><p>Build an agentic RAG system powered by your Second Brain</p></li><li><p>Design an end-to-end production-ready LLM &amp; AI architecture: from data collection to deployment and observability</p></li><li><p>Apply LLMOps and software engineering best practices</p></li><li><p>Fine-tune and deploy LLMs</p></li><li><p>Evaluate agents</p></li><li><p>Use industry tools: OpenAI, Hugging Face, MongoDB, ZenML, Opik, Comet, Unsloth, and more</p></li></ul><blockquote><blockquote><p><strong>More details</strong><span>, such as who should join this course and the technical and hardware prerequisites, can be found in the </span><strong><a href="https://github.com/decodingml/second-brain-ai-assistant-course">GitHub repository</a></strong><span>.</span></p></blockquote></blockquote><p>After completing this course, you&#8217;ll have access to your own Second Brain AI assistant, as seen in the video below:</p><p><em><span>Now, let&#8217;s move on to the fun part, where we</span><strong> zoom in on each lesson to understand better what it takes to build a Second Brain AI Assistant</strong><span> </span></em><span>&#8595;&#8595;&#8595;</span></p><div><hr></div><h2><strong>1. Build your Second Brain AI assistant</strong></h2><p>First, we will explore the system architecture of the Second Brain AI assistant, illustrated in the figure below. We will explain each component&#8217;s role, what it is, what algorithms and tools we used, and, most importantly, why we used them.</p><p>By the end of this lesson, you will have a strong intuition of what it takes to architect an AI assistant for your Second Brain, such as a Notion-like AI assistant that allows you to chat with your notes and resources.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://academy.towardsai.net/courses/agent-engineering?ref=af681e" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UE20!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!UE20!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!UE20!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!UE20!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UE20!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png" width="1200" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Architecture&quot;,&quot;title&quot;:&quot;Architecture&quot;,&quot;type&quot;:null,&quot;href&quot;:&quot;https://academy.towardsai.net/courses/agent-engineering?ref=af681e&quot;,&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="Architecture" title="Architecture" srcset="https://substackcdn.com/image/fetch/$s_!UE20!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!UE20!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!UE20!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!UE20!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8daef35-b630-4f56-90d0-7b27ed261823_1200x1200.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 aria-hidden="true" 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><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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.decodingai.com/p/build-your-second-brain-ai-assistant&quot;,&quot;text&quot;:&quot;Go to Lesson 1&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://www.decodingai.com/p/build-your-second-brain-ai-assistant"><span>Go to Lesson 1</span></a></p><h2><strong>2. Data pipelines for AI assistants</strong></h2><p>Every data and AI system starts with data. If you don&#8217;t have data, you don&#8217;t have the raw material to work with. You can have the fanciest algorithms, but without data, they are still like a car without fuel.</p><p>Hence, this lesson will teach us to architect and build the data pipelines that fuel our Second Brain AI assistant, such as the Notion data collection and ETL data pipelines.</p><p><span>We will learn to manage data and ML pipelines using </span><strong><a href="https://zenml.io/?utm_source=llm_course&amp;utm_medium=partnership&amp;utm_campaign=zenml_llm_engineering_2025_q1&amp;utm_content=course">ZenML</a></strong><span>, an open-source MLOps framework.</span></p><blockquote><blockquote><p>We will collect data from Notion, but if you don&#8217;t want to hook up your Notion (or don&#8217;t have one), we prepared an easily downloadable dataset with our notes.</p></blockquote></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://academy.towardsai.net/courses/agent-engineering?ref=af681e" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GUAx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facb954dd-fe92-4270-9abf-d444966ca8c5_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!GUAx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facb954dd-fe92-4270-9abf-d444966ca8c5_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!GUAx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facb954dd-fe92-4270-9abf-d444966ca8c5_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!GUAx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facb954dd-fe92-4270-9abf-d444966ca8c5_1200x1200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GUAx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facb954dd-fe92-4270-9abf-d444966ca8c5_1200x1200.png" width="1200" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/acb954dd-fe92-4270-9abf-d444966ca8c5_1200x1200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:154699,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://academy.towardsai.net/courses/agent-engineering?ref=af681e&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://decodingml.substack.com/i/162680776?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facb954dd-fe92-4270-9abf-d444966ca8c5_1200x1200.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!GUAx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facb954dd-fe92-4270-9abf-d444966ca8c5_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!GUAx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facb954dd-fe92-4270-9abf-d444966ca8c5_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!GUAx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facb954dd-fe92-4270-9abf-d444966ca8c5_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!GUAx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facb954dd-fe92-4270-9abf-d444966ca8c5_1200x1200.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 aria-hidden="true" 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><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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.decodingai.com/p/data-pipelines-for-ai-assistants&quot;,&quot;text&quot;:&quot;Go to Lesson 2&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://www.decodingai.com/p/data-pipelines-for-ai-assistants"><span>Go to Lesson 2</span></a></p><h2><strong>3. From noisy docs to fine-tuning datasets</strong></h2><p>In this lesson, we will learn to transform noisy documents collected from Notion and the Internet (through crawling) into a high-quality instruction dataset. This will allow us to fine-tune an LLM specialized in summarizing documents (an everyday use case for real-world projects).</p><p>Forget the ready-to-use datasets you see in online tutorials. In real-world projects, success comes from rolling up your sleeves and working through the messy process of preparing your own custom data.</p><p>Process that requires building a robust pipeline that collects, cleans, structures, and augments your data (as we started to explore in Lesson 2). This process ensures you have a high-quality and diverse set of samples to fine-tune your LLM (or any other AI model).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://academy.towardsai.net/courses/agent-engineering?ref=af681e" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!G9c2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06360caf-5abc-44fd-b01a-65311e57d729_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!G9c2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06360caf-5abc-44fd-b01a-65311e57d729_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!G9c2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06360caf-5abc-44fd-b01a-65311e57d729_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!G9c2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06360caf-5abc-44fd-b01a-65311e57d729_1200x1200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!G9c2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06360caf-5abc-44fd-b01a-65311e57d729_1200x1200.png" width="1200" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/06360caf-5abc-44fd-b01a-65311e57d729_1200x1200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Dataset Generation Pipeline Architecture&quot;,&quot;title&quot;:&quot;Dataset Generation Pipeline Architecture&quot;,&quot;type&quot;:null,&quot;href&quot;:&quot;https://academy.towardsai.net/courses/agent-engineering?ref=af681e&quot;,&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="Dataset Generation Pipeline Architecture" title="Dataset Generation Pipeline Architecture" srcset="https://substackcdn.com/image/fetch/$s_!G9c2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06360caf-5abc-44fd-b01a-65311e57d729_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!G9c2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06360caf-5abc-44fd-b01a-65311e57d729_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!G9c2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06360caf-5abc-44fd-b01a-65311e57d729_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!G9c2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06360caf-5abc-44fd-b01a-65311e57d729_1200x1200.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 aria-hidden="true" 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><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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.decodingai.com/p/from-noisy-docs-to-fine-tuning-datasets&quot;,&quot;text&quot;:&quot;Go to Lesson 3&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://www.decodingai.com/p/from-noisy-docs-to-fine-tuning-datasets"><span>Go to Lesson 3</span></a></p><h2><strong>4. Playbook to fine-tune and deploy LLMs</strong></h2><p>Fine-tune an open-source LLM (Llama 3.1 8B) to specialize in summarizing documents. Deploy it as a real-time API endpoint.</p><p>Building your LLM and RAG application around APIs providers (e.g., OpenAI, Gemini) is a solid start to create a PoC or MVP quickly, but you will soon realize that:</p><ul><li><p>Your API bill is skyrocketing.</p></li><li><p>You are vendor-locked in, and your application&#8217;s performance can degrade anytime (as you don&#8217;t have control over the LLMs).</p></li><li><p>You don&#8217;t have control over your data.</p></li></ul><p>Thus, you need to find ways to optimize costs and gain more control over your models and data.</p><p>That&#8217;s why the next natural step is learning to use open-source LLMs (e.g., Llama, Qwen, or DeepSeek) to power your AI applications. Using swarms of open-source smaller language models (SLM) specialized in specific tasks is a solid strategy in reducing costs and gaining control over your AI system.</p><p>Thus, when using open-source models, you have two options:</p><ol><li><p>Use them as they are and deploy them on your cloud provider of choice (e.g., AWS Bedrock, Hugging Face Dedicated Endpoints, Modal, on-prem)</p></li><li><p><span>If the models are too inaccurate for your use case, you must first fine-tune them on your specific task or domain (using </span><strong><a href="https://github.com/huggingface/trl">Hugging Face&#8217;s TRL</a></strong><span> and </span><strong><a href="https://github.com/unslothai/unsloth">Unsloth</a></strong><span>) and then deploy them.</span></p></li></ol><p><span>In this lesson, we will assume that you need to do both. Therefore, using the summarization instruction dataset from Lesson 3, we will fine-tune a small language model (SLM) specialized in summarizing web documents collected from the internet and use </span><strong><a href="https://www.comet.com/site/products/ml-experiment-tracking?utm_source=paul_2nd_brain_course&amp;utm_campaign=opik&amp;utm_medium=course">Comet</a></strong><span> to track, measure, and compare the training experiments.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://academy.towardsai.net/courses/agent-engineering?ref=af681e" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U3M6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c27c85-da59-4939-9088-393ee5693f13_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!U3M6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c27c85-da59-4939-9088-393ee5693f13_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!U3M6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c27c85-da59-4939-9088-393ee5693f13_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!U3M6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c27c85-da59-4939-9088-393ee5693f13_1200x1200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U3M6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c27c85-da59-4939-9088-393ee5693f13_1200x1200.png" width="1200" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/40c27c85-da59-4939-9088-393ee5693f13_1200x1200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Training Pipeline Architecture&quot;,&quot;title&quot;:&quot;Training Pipeline Architecture&quot;,&quot;type&quot;:null,&quot;href&quot;:&quot;https://academy.towardsai.net/courses/agent-engineering?ref=af681e&quot;,&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="Training Pipeline Architecture" title="Training Pipeline Architecture" srcset="https://substackcdn.com/image/fetch/$s_!U3M6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c27c85-da59-4939-9088-393ee5693f13_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!U3M6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c27c85-da59-4939-9088-393ee5693f13_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!U3M6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c27c85-da59-4939-9088-393ee5693f13_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!U3M6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40c27c85-da59-4939-9088-393ee5693f13_1200x1200.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 aria-hidden="true" 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><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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.decodingai.com/p/playbook-to-fine-tune-and-deploy&quot;,&quot;text&quot;:&quot;Go to Lesson 4&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://www.decodingai.com/p/playbook-to-fine-tune-and-deploy"><span>Go to Lesson 4</span></a></p><h2><strong>5. Build RAG pipelines that actually work</strong></h2><p>Context is the backbone of every intelligent AI assistant. Even the most advanced large language models (LLMs) can generate inaccurate or partial answers without the proper context, as it&#8217;s the fuel that powers meaningful, accurate, and valuable results.</p><p>That&#8217;s where Retrieval-Augmented Generation (RAG) steps in. By grounding responses in accurate, reliable data, RAG helps your assistant access external data and avoid hallucinations.</p><p>Most RAG problems are retrieval problems, which are the most challenging to solve. That&#8217;s why most advanced RAG techniques attack the retrieval step, providing better solutions to index and search data before sending the context to the LLM.</p><p>Simply put, the quality of the generated answer is the by-product of the quality and relevance of the provided context. It&#8217;s intuitive. If you pass the wrong data to the most powerful LLM, it will output trash.</p><p>Even if the LLM that you are using has huge context windows of 128k tokens or more, allowing you to ingest all your data into the prompt, you still need RAG, as:</p><ul><li><p>Always sending huge prompts results in unsustainable costs and latencies.</p></li><li><p>The LLM will not know what to focus on. For example, if you pass an entire book inside the prompt, the LLM will use all the context to generate an answer. If you pass only the paragraphs you are interested in, you are 100% sure it will pick up the correct information.</p></li><li><p>The LLMs suffer from bias or might forget the necessary information from the context.</p></li></ul><p><span>That&#8217;s why we dedicated an entire lesson to attacking various advanced RAG techniques, which will ultimately be unified under the RAG feature pipeline. This offline batch pipeline extracts data from MongoDB, processes it using advanced RAG techniques, and adds the data back to </span><strong><a href="https://www.mongodb.com/products/platform/atlas-vector-search?utm_campaign=ai-pilot&amp;utm_medium=creator&amp;utm_term=iusztin&amp;utm_source=course">MongoDB</a></strong><span> (using text and vector indexes for search during RAG).</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/LLM-Engineers-Handbook-engineering-production/dp/1836200072?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GedD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089f04a2-2df4-49d4-91a1-611ff754cbc6_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!GedD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089f04a2-2df4-49d4-91a1-611ff754cbc6_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!GedD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089f04a2-2df4-49d4-91a1-611ff754cbc6_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!GedD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089f04a2-2df4-49d4-91a1-611ff754cbc6_1200x1200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GedD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089f04a2-2df4-49d4-91a1-611ff754cbc6_1200x1200.png" width="1200" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/089f04a2-2df4-49d4-91a1-611ff754cbc6_1200x1200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;RAG Feature Pipeline Architecture&quot;,&quot;title&quot;:&quot;RAG Feature Pipeline Architecture&quot;,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/LLM-Engineers-Handbook-engineering-production/dp/1836200072?tag=javamysqlanta-20&quot;,&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="RAG Feature Pipeline Architecture" title="RAG Feature Pipeline Architecture" srcset="https://substackcdn.com/image/fetch/$s_!GedD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089f04a2-2df4-49d4-91a1-611ff754cbc6_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!GedD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089f04a2-2df4-49d4-91a1-611ff754cbc6_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!GedD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089f04a2-2df4-49d4-91a1-611ff754cbc6_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!GedD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F089f04a2-2df4-49d4-91a1-611ff754cbc6_1200x1200.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 aria-hidden="true" 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><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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.decodingai.com/p/build-rag-pipelines-that-actually&quot;,&quot;text&quot;:&quot;Go to Lesson 5&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://www.decodingai.com/p/build-rag-pipelines-that-actually"><span>Go to Lesson 5</span></a></p><h2><strong>6. LLMOps for production agentic RAG</strong></h2><p>Implement the RAG agentic inference pipeline and an observation pipeline to monitor and evaluate the performance of the AI assistant.</p><p>Agents are the latest breakthrough in AI. For the first time in history, we give a machine complete control over its decisions without explicitly telling it. Agents do that through the LLM, the system&#8217;s brain that interprets the queries and decides what to do next and through the tools that provide access to the external world, such as APIs and databases.</p><p>One of the agents&#8217; most popular use cases is Agentic RAG, in which agents access a tool that provides them with access to a vector database (or another type of database) to retrieve relevant context dynamically before generating an answer.</p><p>In this lesson, we will take the final step to glue everything together by adding an agentic layer on top of the vector index and an observability module on top of the agent to monitor and evaluate it. These elements will be part of our online inference pipelines, which will turn into the Second Brain AI assistant that the user interacts with, as seen in the demo below:</p><p><span>Thus, in this lesson, we will dive into the fundamentals of </span><strong>agentic RAG</strong><span>, exploring how agents powered by LLMs can go beyond traditional retrieval-based workflows to dynamically interact with multiple tools and external systems, such as vector databases.</span></p><p><span>Next, we will move to our </span><strong>observability pipeline,</strong><span> which evaluates the agents using techniques such as LLM-as-judges and heuristics to ensure they work correctly. We will monitor the prompt traces that power the agents using </span><strong><a href="https://github.com/comet-ml/opik">Opik</a></strong><span>, an open-source LLMOps tool, to help us debug and understand what happens under the hood.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.amazon.com/LLM-Engineers-Handbook-engineering-production/dp/1836200072?tag=javamysqlanta-20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sXT4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08090c89-107c-4e7b-b5bd-8abaa8af492f_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!sXT4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08090c89-107c-4e7b-b5bd-8abaa8af492f_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!sXT4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08090c89-107c-4e7b-b5bd-8abaa8af492f_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!sXT4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08090c89-107c-4e7b-b5bd-8abaa8af492f_1200x1200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sXT4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08090c89-107c-4e7b-b5bd-8abaa8af492f_1200x1200.png" width="1200" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/08090c89-107c-4e7b-b5bd-8abaa8af492f_1200x1200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Agentic RAG Architecture&quot;,&quot;title&quot;:&quot;Agentic RAG Architecture&quot;,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.amazon.com/LLM-Engineers-Handbook-engineering-production/dp/1836200072?tag=javamysqlanta-20&quot;,&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="Agentic RAG Architecture" title="Agentic RAG Architecture" srcset="https://substackcdn.com/image/fetch/$s_!sXT4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08090c89-107c-4e7b-b5bd-8abaa8af492f_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!sXT4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08090c89-107c-4e7b-b5bd-8abaa8af492f_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!sXT4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08090c89-107c-4e7b-b5bd-8abaa8af492f_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!sXT4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08090c89-107c-4e7b-b5bd-8abaa8af492f_1200x1200.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 aria-hidden="true" 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><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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.decodingai.com/p/llmops-for-production-agentic-rag&quot;,&quot;text&quot;:&quot;Go to Lesson 6&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://www.decodingai.com/p/llmops-for-production-agentic-rag"><span>Go to Lesson 6</span></a></p><div><hr></div><h2><strong>How to take the course?</strong></h2><p>As an open-source course, it&#8217;s 100% free, with no hidden costs and no registration required.</p><p>The course is based on an open-source GitHub repository and articles that walk you through the fundamentals and the repository.</p><p>Thus, taking the course is super easy. You have to:</p><ol><li><p><span>Navigate to the </span><a href="https://github.com/decodingml/second-brain-ai-assistant-course">Second Brain AI Assistant GitHub repository</a><span> and clone it.</span></p></li><li><p>Open the Substack lessons found in the repository&#8217;s GitHub docs.</p></li><li><p>Set up the code using the documentation from the repository.</p></li><li><p>Start going through the lessons and running the code.</p></li></ol><p>The best part? We encourage you to reuse our code for your open-source projects! If you do, DM us on Substack, and we&#8217;ll share your project on our socials.</p><blockquote><blockquote><p><strong>More details</strong><span>, such as who should join this course and the technical and hardware prerequisites, can be found in the </span><strong><a href="https://github.com/decodingml/second-brain-ai-assistant-course">GitHub repository</a></strong><span>.</span></p></blockquote></blockquote><p><em>Enjoy!</em></p><div><hr></div><div class="callout-block" data-callout="true"><h4><strong>Whenever you&#8217;re ready, here is how I can help you</strong></h4><p><em>Go from agent user to agent builder.</em><span> Master the foundations of AI agents and turn fragile demo code into reliable, production-ready systems with my course, </span><strong><a href="https://academy.towardsai.net/courses/agent-engineering?ref=af681e">Agent Engineering: Building Multi-Agent Systems</a></strong><span> (made with Towards AI).</span></p><p>35 lessons. Pure foundations from scratch. 4 mini-projects. 2 production systems. A certificate and direct access to me &amp; industry experts in our Discord.</p><p><span>Built for software and data professionals transitioning into AI engineering. </span><em>Rated 5/5 with 300+ students. The first 7 lessons are free:</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://academy.towardsai.net/courses/agent-engineering?ref=b3ab31&amp;utm_source=decodingai&amp;utm_medium=partner&amp;utm_campaign=agent_engineering&quot;,&quot;text&quot;:&quot;Start here&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://academy.towardsai.net/courses/agent-engineering?ref=b3ab31&amp;utm_source=decodingai&amp;utm_medium=partner&amp;utm_campaign=agent_engineering"><span>Start here</span></a></p><p><em>Not ready to commit?</em><span> Start with our </span><strong><a href="https://email-course.towardsai.net/?ref=af681e1&amp;utm_source=javarevisited&amp;utm_medium=partner&amp;utm_campaign=agent_engineering">free Agent AI Engineering Guide</a></strong><span>, a 6-day email course on the mistakes that silently break AI agents in production.</span></p></div><div><hr></div><h2><strong>Images</strong></h2><p>If not otherwise stated, all images are created by the author.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>]]></content:encoded></item><item><title><![CDATA[API Gateway vs Load Balancer in Microservices: Key Differences Explained]]></title><description><![CDATA[A practical comparison with real-world use cases, pros, cons, and architecture diagrams]]></description><link>https://javarevisited.substack.com/p/difference-between-api-gateway-and-5b3</link><guid isPermaLink="false">https://javarevisited.substack.com/p/difference-between-api-gateway-and-5b3</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Sun, 12 Jul 2026 14:15:19 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!xdi8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadc694b3-c461-4377-95bf-b8958fc7aea9_700x312.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2><a href="https://wavemaker.ai/"><span>[SPONSORED] From Figma to production-ready apps in minutes.</span></a></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://wavemaker.ai/" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hpJk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb312cbf3-8731-4b08-b771-12c6e5642d74_1313x687.png 424w, https://substackcdn.com/image/fetch/$s_!hpJk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb312cbf3-8731-4b08-b771-12c6e5642d74_1313x687.png 848w, https://substackcdn.com/image/fetch/$s_!hpJk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb312cbf3-8731-4b08-b771-12c6e5642d74_1313x687.png 1272w, https://substackcdn.com/image/fetch/$s_!hpJk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb312cbf3-8731-4b08-b771-12c6e5642d74_1313x687.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hpJk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb312cbf3-8731-4b08-b771-12c6e5642d74_1313x687.png" width="725" height="379.34120335110435" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b312cbf3-8731-4b08-b771-12c6e5642d74_1313x687.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:687,&quot;width&quot;:1313,&quot;resizeWidth&quot;:725,&quot;bytes&quot;:111393,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://wavemaker.ai/&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/206699757?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb312cbf3-8731-4b08-b771-12c6e5642d74_1313x687.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_!hpJk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb312cbf3-8731-4b08-b771-12c6e5642d74_1313x687.png 424w, https://substackcdn.com/image/fetch/$s_!hpJk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb312cbf3-8731-4b08-b771-12c6e5642d74_1313x687.png 848w, https://substackcdn.com/image/fetch/$s_!hpJk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb312cbf3-8731-4b08-b771-12c6e5642d74_1313x687.png 1272w, https://substackcdn.com/image/fetch/$s_!hpJk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb312cbf3-8731-4b08-b771-12c6e5642d74_1313x687.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 aria-hidden="true" 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><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><span>Enterprise UI development has a persistent translation problem: the gap between what design intends and what production code delivers. WaveMaker closes it.</span></p><p><span>Their design-to-code platform converts Figma designs to production apps within the constraints of your design system &#8212; deterministically, at scale. AI proposes. Your team validates. The system ships consistent code.</span></p><p><span>If your team spends weeks reconciling design intent with implementation, this is worth a look.</span></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://wavemaker.ai/&quot;,&quot;text&quot;:&quot;Learn more &#8594; wavemaker.ai&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://wavemaker.ai/"><span>Learn more &#8594; wavemaker.ai</span></a></p><div><hr></div><p>Hello folks, what is difference between API Gateway and Load balancer is one of the <strong>popular Microservice interview question</strong> and often asked to experienced Java developers during telephonic or face-to-face round.</p><p>Though, you must know what is API Gateway and load balancer is before you can talk about their differences. If you are new to these two terms or concepts then I suggest you to first watch this video on API Gateway from <strong><a href="https://bit.ly/3P3eqMN">ByteByteGo </a></strong>to learn basics</p><p>And, this one to learn about Load balancers from <strong><a href="https://bit.ly/3cNF0vw">Exponent</a></strong>, another great site and channel to learn system design concepts.</p><p>In the past, I have shared <em><a href="https://reactjava.substack.com/p/the-10-microservices-best-practices">essential Microservices design principles and best practices</a></em> as well <a href="https://reactjava.substack.com/p/19-essential-microservices-patterns">popular Microservices design patterns</a> and in this article, I will answer this question and also tell you key differences between them.</p><p>While, API Gateway and Load Balancer are both important components in microservices architecture, but they serve different purposes.</p><p><strong>API Gateway acts as a single entry point for all API requests</strong> and provides features such as <em>request routing, rate limiting, authentication, and API versioning</em> and also hide the complexities of the underlying microservices from the client applications.</p><p><strong>Load Balancer</strong>, on the other hand, is r<strong>esponsible for distributing incoming request across multiple instances of a microservice</strong> to improve availability, performance, and scalability. It helps to <em>evenly distribute the workload </em>across multiple instances and ensures that each instance is utilized to its fullest potential.</p><p>In other words, API Gateway provides <strong>higher-level features</strong> related to API management, while Load Balancer provides <strong>lower-level features </strong>related to traffic distribution across multiple instances of a microservice.</p><p>Now, that you know the basics, let&#8217;s see each of them in bit more detail to understand the differences as well as learn when to use them.</p><p>By the way, if you are preparing for System design interviews and want to learn System Design in depth then you can also checkout sites like <strong><a href="https://bit.ly/3P3eqMN">ByteByteGo</a></strong>, <strong><a href="https://bit.ly/3pMiO8g">DesignGuru</a></strong>, <strong><a href="https://bit.ly/3cNF0vw">Exponent</a></strong>, <strong><a href="https://bit.ly/3Mnh6UR">Educative </a>, <a href="https://www.bugfree.ai/?via=javarevisited">Bugfree.ai</a>, </strong>and <strong><a href="https://www.bugfree.ai/?via=javarevisited">Udemy </a></strong>which have many great System design courses and if you need free system design courses you can also see the below article.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bit.ly/3P3eqMN" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xdi8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadc694b3-c461-4377-95bf-b8958fc7aea9_700x312.png 424w, https://substackcdn.com/image/fetch/$s_!xdi8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadc694b3-c461-4377-95bf-b8958fc7aea9_700x312.png 848w, https://substackcdn.com/image/fetch/$s_!xdi8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadc694b3-c461-4377-95bf-b8958fc7aea9_700x312.png 1272w, https://substackcdn.com/image/fetch/$s_!xdi8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadc694b3-c461-4377-95bf-b8958fc7aea9_700x312.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xdi8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadc694b3-c461-4377-95bf-b8958fc7aea9_700x312.png" width="725" height="323.14285714285717" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/adc694b3-c461-4377-95bf-b8958fc7aea9_700x312.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:312,&quot;width&quot;:700,&quot;resizeWidth&quot;:725,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bit.ly/3P3eqMN&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!xdi8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadc694b3-c461-4377-95bf-b8958fc7aea9_700x312.png 424w, https://substackcdn.com/image/fetch/$s_!xdi8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadc694b3-c461-4377-95bf-b8958fc7aea9_700x312.png 848w, https://substackcdn.com/image/fetch/$s_!xdi8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadc694b3-c461-4377-95bf-b8958fc7aea9_700x312.png 1272w, https://substackcdn.com/image/fetch/$s_!xdi8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fadc694b3-c461-4377-95bf-b8958fc7aea9_700x312.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 aria-hidden="true" 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><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>And, If you like my post, consider <strong><a href="https://reactjava.substack.com">subscribing to my newsletter</a></strong>, its FREE and you will not miss any of my post</p><h2>What is API Gateway Pattern in Microservices?</h2><p><a href="https://javarevisited.substack.com/p/system-design-interviews-were-hard">API Gateway</a> is one of the essential pattern used in microservices architecture that acts as a<strong> reverse proxy </strong>to route requests from clients to multiple internal services.</p><p>It also provides a single entry point for all clients to interact with the system, allowing for better scalability, security, and control over the APIs.</p><p>API Gateway handles common tasks such as <strong>authentication</strong>,<strong> rate limiting</strong>, <strong>and caching</strong>, while also abstracting away the complexity of the underlying services.</p><p>Thing will be more clear when we go through a real world scenario where API Gateway can be used, so let&#8217;s do that.</p><p>Let&#8217;s assume you have a microservices-based e-commerce application that allows users to browse and purchase products. The application is composed of <strong>several microservices,</strong> including a product catalog service, a shopping cart service, an order service, and a user service.</p><p><strong>To simplify the interaction between clients and these microservices, you can use an API gateway.</strong> The API gateway acts as a single entry point for all client requests and routes them to the appropriate microservice.</p><p>For example, <strong>when a user wants to view the product catalog, they make a request to the API gateway, which forwards the request to the product catalog service</strong>. Similarly, when a user wants to place an order, they make a request to the API gateway, which forwards the request to the order service.</p><p><em>By using an API gateway, you can simplify the client-side code, reduce the number of requests that need to be made</em>, and provide a unified interface for clients to interact with the microservices.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bit.ly/3P3eqMN" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dEuU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F235b17b3-fdd8-4c25-b6bd-9d044ed0c0ee_700x444.png 424w, https://substackcdn.com/image/fetch/$s_!dEuU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F235b17b3-fdd8-4c25-b6bd-9d044ed0c0ee_700x444.png 848w, https://substackcdn.com/image/fetch/$s_!dEuU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F235b17b3-fdd8-4c25-b6bd-9d044ed0c0ee_700x444.png 1272w, https://substackcdn.com/image/fetch/$s_!dEuU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F235b17b3-fdd8-4c25-b6bd-9d044ed0c0ee_700x444.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dEuU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F235b17b3-fdd8-4c25-b6bd-9d044ed0c0ee_700x444.png" width="725" height="459.85714285714283" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/235b17b3-fdd8-4c25-b6bd-9d044ed0c0ee_700x444.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:444,&quot;width&quot;:700,&quot;resizeWidth&quot;:725,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;How API Gateway works&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bit.ly/3P3eqMN&quot;,&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="How API Gateway works" title="How API Gateway works" srcset="https://substackcdn.com/image/fetch/$s_!dEuU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F235b17b3-fdd8-4c25-b6bd-9d044ed0c0ee_700x444.png 424w, https://substackcdn.com/image/fetch/$s_!dEuU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F235b17b3-fdd8-4c25-b6bd-9d044ed0c0ee_700x444.png 848w, https://substackcdn.com/image/fetch/$s_!dEuU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F235b17b3-fdd8-4c25-b6bd-9d044ed0c0ee_700x444.png 1272w, https://substackcdn.com/image/fetch/$s_!dEuU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F235b17b3-fdd8-4c25-b6bd-9d044ed0c0ee_700x444.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 aria-hidden="true" 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><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>When to use API Gateway?</h2><p>Now that we know what is API Gateway and what services it provides, it pretty easy to understand when to use it. API Gateway can be used in various scenarios like</p><ol><li><p><strong>Providing a unified entry point for multiple microservices:</strong> API Gateway can act as a single entry point for multiple microservices, providing a unified interface to clients.</p></li><li><p><strong>Implementing security: </strong>API Gateway can enforce security policies, such as authentication and authorization, for all the microservices.</p></li><li><p><strong>Improving performance:</strong> API Gateway can cache responses from microservices and reduce the number of requests that reach the back-end.</p></li><li><p><strong>Simplifying the client:</strong> API Gateway can abstract the complexity of the underlying microservices and provide a simpler interface for clients to interact with.</p></li><li><p><strong>Versioning and routing: </strong>API Gateway can route requests to different versions of the same microservice or different microservices based on the request parameters.</p></li></ol><p>So, you can see that it&#8217;s<em> doing a lot more than just forwarding your request to Microservices</em> and that&#8217;s probably the main difference between API Gateway and Load balancer. </p><p>Here is also a nice diagram from <a href="https://bytebytego.com/pricing?fpr=javarevisited">ByteByteGo </a>which shows how you can use both Load Balancer and API Gateway in your application. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/pricing?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZZX8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41660697-9a87-4fc7-9f44-a131ab971238_3795x3240.png 424w, https://substackcdn.com/image/fetch/$s_!ZZX8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41660697-9a87-4fc7-9f44-a131ab971238_3795x3240.png 848w, https://substackcdn.com/image/fetch/$s_!ZZX8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41660697-9a87-4fc7-9f44-a131ab971238_3795x3240.png 1272w, https://substackcdn.com/image/fetch/$s_!ZZX8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41660697-9a87-4fc7-9f44-a131ab971238_3795x3240.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZZX8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41660697-9a87-4fc7-9f44-a131ab971238_3795x3240.png" width="1456" height="1243" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/41660697-9a87-4fc7-9f44-a131ab971238_3795x3240.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1243,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;ByteByteGo | Load Balancer vs. API Gateway&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bytebytego.com/pricing?fpr=javarevisited&quot;,&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="ByteByteGo | Load Balancer vs. API Gateway" title="ByteByteGo | Load Balancer vs. API Gateway" srcset="https://substackcdn.com/image/fetch/$s_!ZZX8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41660697-9a87-4fc7-9f44-a131ab971238_3795x3240.png 424w, https://substackcdn.com/image/fetch/$s_!ZZX8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41660697-9a87-4fc7-9f44-a131ab971238_3795x3240.png 848w, https://substackcdn.com/image/fetch/$s_!ZZX8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41660697-9a87-4fc7-9f44-a131ab971238_3795x3240.png 1272w, https://substackcdn.com/image/fetch/$s_!ZZX8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41660697-9a87-4fc7-9f44-a131ab971238_3795x3240.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 aria-hidden="true" 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><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>What is Load Balancer? What Problem it Solve?</h2><p>A load balancer is a component that distributes incoming network traffic across multiple servers or nodes in a server cluster, not just in Microservices architecture but any architecture.</p><p><strong>It helps to improve the performance, scalability, and availability of applications </strong>and services by evenly distributing the workload among the servers.</p><p>In this way, a <strong>load balancer ensures that no single server is overloaded with traffic</strong> while others remain idle, which can lead to better resource utilization and increased reliability of the overall system.</p><p>Here is a nice diagram which shows how load-balancer works and how it can be used at both hardware and software level as well:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/pricing?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YrrD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d967138-10d7-4ce1-9ee1-626797044f78_700x354.png 424w, https://substackcdn.com/image/fetch/$s_!YrrD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d967138-10d7-4ce1-9ee1-626797044f78_700x354.png 848w, https://substackcdn.com/image/fetch/$s_!YrrD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d967138-10d7-4ce1-9ee1-626797044f78_700x354.png 1272w, https://substackcdn.com/image/fetch/$s_!YrrD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d967138-10d7-4ce1-9ee1-626797044f78_700x354.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YrrD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d967138-10d7-4ce1-9ee1-626797044f78_700x354.png" width="725" height="366.64285714285717" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d967138-10d7-4ce1-9ee1-626797044f78_700x354.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:354,&quot;width&quot;:700,&quot;resizeWidth&quot;:725,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bytebytego.com/pricing?fpr=javarevisited&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!YrrD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d967138-10d7-4ce1-9ee1-626797044f78_700x354.png 424w, https://substackcdn.com/image/fetch/$s_!YrrD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d967138-10d7-4ce1-9ee1-626797044f78_700x354.png 848w, https://substackcdn.com/image/fetch/$s_!YrrD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d967138-10d7-4ce1-9ee1-626797044f78_700x354.png 1272w, https://substackcdn.com/image/fetch/$s_!YrrD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d967138-10d7-4ce1-9ee1-626797044f78_700x354.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 aria-hidden="true" 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><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>When to use load balancer in Microservices?</h2><p>As I said, <strong>Load balancers</strong> are primarily used in microservices architecture to distribute incoming network traffic across multiple instances of the same service.</p><p>Load balancers can help to increase the availability and scalability of the application and that&#8217;s why they have been around for quite sometime even before the Microservices architecture.</p><p>Load balancers are also used when the traffic to the application becomes too high and a single instance of the service is unable to handle the load. Load balancers are also used when the application is deployed across multiple servers or data centers.</p><h2>Pros and Cons of Load Balancer in Microservices</h2><p>Now, let&#8217;s see pros and cons of using Load balancers in Microservices architecture:</p><p><strong>Pros:</strong></p><ul><li><p><strong>Improved performance and scalability</strong>: Load balancers distribute traffic evenly across multiple servers, reducing the load on each server and ensuring that no server is overwhelmed.</p></li><li><p><strong>High availability and fault tolerance:</strong> Load balancers can automatically redirect traffic to other healthy servers if one server fails, ensuring that services remain available even if some servers go down.</p></li><li><p><strong>Flexibility and customization:</strong> Load balancers can be customized with different algorithms and rules to handle traffic in a way that best suits the specific needs of the system.</p></li></ul><p><strong>Cons:</strong></p><ul><li><p><strong>Complexity and cost: </strong>Load balancers can add complexity and cost to the system, as they require additional hardware or software to manage and maintain.</p></li><li><p><strong>Single point of failure: </strong>If the load balancer itself fails, the entire system may become unavailable.</p></li><li><p><strong>Increased latency</strong>: Depending on the setup, load balancers can add some latency to the system by adding an additional hop between clients and servers.</p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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></p><h2>Difference between Load Balancers and API Gateway in Microservice Architecture</h2><p>here are 10 differences between API gateway and load balancer in point-by-point format:</p><h3>1. Purpose</h3><p>The primary purpose of an API gateway is to provide a unified API for microservices, while the primary purpose of a load balancer is to distribute traffic evenly across multiple servers.</p><h3>2. Functionality</h3><p>An API gateway can perform several functions, such as routing, security, load balancing, and API management, while a load balancer only handles traffic distribution.</p><h3>3. Routing</h3><p>An API gateway routes requests based on a predefined set of rules, while a load balancer routes requests based on predefined algorithms, such as round-robin or least connections.</p><h3>4. Protocol Support</h3><p>An API gateway typically supports multiple protocols, such as HTTP, WebSocket, and MQTT, while a load balancer only supports protocols at the transport layer, such as TCP and UDP.</p><h3>5. Security</h3><p>An API gateway provides features such as authentication, authorization, and SSL termination, while a load balancer only provides basic security features such as SSL offloading.</p><h3>6. Caching</h3><p>An API gateway can cache responses from microservices to improve performance, while a load balancer does not offer caching capabilities.</p>
      <p>
          <a href="https://javarevisited.substack.com/p/difference-between-api-gateway-and-5b3">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[System Design Interview Question – Parking Lot Design]]></title><description><![CDATA[How to design Parking Lot in a System Design Interview]]></description><link>https://javarevisited.substack.com/p/system-design-interview-question-af4</link><guid isPermaLink="false">https://javarevisited.substack.com/p/system-design-interview-question-af4</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Fri, 10 Jul 2026 14:35:35 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ps4G!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef4faa51-1458-490d-ba76-50cfce37fd15_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h3><a href="https://wavemaker.ai/"><span>[SPONSORED] AI writes code. WaveMaker makes it deterministic.</span></a></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://wavemaker.ai/" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!t81i!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc31eac4-5fb5-49c9-aee4-aa420436b647_749x391.png 424w, https://substackcdn.com/image/fetch/$s_!t81i!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc31eac4-5fb5-49c9-aee4-aa420436b647_749x391.png 848w, https://substackcdn.com/image/fetch/$s_!t81i!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc31eac4-5fb5-49c9-aee4-aa420436b647_749x391.png 1272w, https://substackcdn.com/image/fetch/$s_!t81i!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc31eac4-5fb5-49c9-aee4-aa420436b647_749x391.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!t81i!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc31eac4-5fb5-49c9-aee4-aa420436b647_749x391.png" width="749" height="391" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dc31eac4-5fb5-49c9-aee4-aa420436b647_749x391.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:391,&quot;width&quot;:749,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:49007,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://wavemaker.ai/&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/172995022?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc31eac4-5fb5-49c9-aee4-aa420436b647_749x391.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!t81i!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc31eac4-5fb5-49c9-aee4-aa420436b647_749x391.png 424w, https://substackcdn.com/image/fetch/$s_!t81i!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc31eac4-5fb5-49c9-aee4-aa420436b647_749x391.png 848w, https://substackcdn.com/image/fetch/$s_!t81i!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc31eac4-5fb5-49c9-aee4-aa420436b647_749x391.png 1272w, https://substackcdn.com/image/fetch/$s_!t81i!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc31eac4-5fb5-49c9-aee4-aa420436b647_749x391.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 aria-hidden="true" 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><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><span>Most AI coding tools treat code generation like autocomplete at scale. WaveMaker treats it like engineering.</span></p><p><span>Their 2-pass model:</span></p><p><span>&#8226; Pass 1: AI converts your intent into structured markup</span></p><p><span>&#8226; Pass 2: A deterministic code generator produces production-ready output &#8212; identically, every time</span></p><p><span>The result: &#8230;</span></p>
      <p>
          <a href="https://javarevisited.substack.com/p/system-design-interview-question-af4">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How to System Design Twitter/X Like a Senior Engineer at FAANG?]]></title><description><![CDATA[How to design Twitter/X in a System Design Interview like a Senior Developer]]></description><link>https://javarevisited.substack.com/p/how-to-system-design-twitterx-like</link><guid isPermaLink="false">https://javarevisited.substack.com/p/how-to-system-design-twitterx-like</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Wed, 08 Jul 2026 14:38:41 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!4tnI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8e38f70-0e9e-4743-9a53-2d83f4607ac9_700x318.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2><a href="https://wavemaker.ai/"><span>Copilots make one dev faster. WaveMaker makes 10 squads consistent. </span>[SPONSORED]</a></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://wavemaker.ai/" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IP9U!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98af2e9-79cf-4d38-b764-e97d47bddfac_997x525.png 424w, https://substackcdn.com/image/fetch/$s_!IP9U!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98af2e9-79cf-4d38-b764-e97d47bddfac_997x525.png 848w, https://substackcdn.com/image/fetch/$s_!IP9U!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98af2e9-79cf-4d38-b764-e97d47bddfac_997x525.png 1272w, https://substackcdn.com/image/fetch/$s_!IP9U!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98af2e9-79cf-4d38-b764-e97d47bddfac_997x525.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IP9U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98af2e9-79cf-4d38-b764-e97d47bddfac_997x525.png" width="997" height="525" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a98af2e9-79cf-4d38-b764-e97d47bddfac_997x525.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:525,&quot;width&quot;:997,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:70113,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://wavemaker.ai/&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/205270479?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98af2e9-79cf-4d38-b764-e97d47bddfac_997x525.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_!IP9U!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98af2e9-79cf-4d38-b764-e97d47bddfac_997x525.png 424w, https://substackcdn.com/image/fetch/$s_!IP9U!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98af2e9-79cf-4d38-b764-e97d47bddfac_997x525.png 848w, https://substackcdn.com/image/fetch/$s_!IP9U!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98af2e9-79cf-4d38-b764-e97d47bddfac_997x525.png 1272w, https://substackcdn.com/image/fetch/$s_!IP9U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98af2e9-79cf-4d38-b764-e97d47bddfac_997x525.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 aria-hidden="true" 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><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><span>If you lead an engineering team, you&#8217;ve likely noticed this: AI coding tools make individual developers faster, but they don&#8217;t make teams more consistent. Different developers, different AI suggestions, different architectural interpretations &#8212; and six months later, you&#8217;re managing drift.</span></p><p><a href="https://wavemaker.ai/"><span>WaveMaker</span></a><span> takes a different approach. Their architecture-first AI uses a 2-pass system: AI converts intent to structured markup, then a deterministic engine produces identical production code every time. No hallucinations. No drift.</span></p><p><span>Built for enterprise teams who need AI that respects their architecture &#8212; not one that improvises around it.</span></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://wavemaker.ai/&quot;,&quot;text&quot;:&quot;Explore at wavemaker.ai&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://wavemaker.ai/"><span>Explore at wavemaker.ai</span></a></p><div><hr></div><p>Hello guys, if you are preparing for system design interview and looking for common System deign problems and resources then you have come to the right place.</p><p>Earlier, I have shared&nbsp;<a href="https://javarevisited.substack.com/p/15-best-places-to-prepare-for-system">best </a><strong><a href="https://javarevisited.substack.com/p/15-best-places-to-prepare-for-system">System design resources</a>,</strong> as well as<a href="https://javarevisited.substack.com/p/how-to-prepare-for-system-design">&nbsp;System design interview guide</a>,&nbsp; and&nbsp;<a href="https://javarevisited.substack.com/p/top-10-system-design-concepts-for">common System design concepts</a> and in this article to discuss one popular System deign problem &#8212; designing Twitter or X.com.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>Designing a complex system like Twitter can be challenging, especially in a system design interview.</p><p><strong>The biggest challenge is not the complexity but the time as you need to convince your interviewer in 40 minutes</strong> <strong>that you know your stuff </strong>and this can only be possible if you prepare well and follow a structured approach while answering such questions.</p><p>In this System design tutorial I will also give you a simple guide to help you structure and system design template (see below) to collect your thoughts and present a clear design.</p><p>By the way, if you are preparing for System design interviews and want to learn System Design in a limited time then you can also checkout sites like <strong><a href="https://bit.ly/3P3eqMN">ByteByteGo</a></strong>, <a href="https://wavemaker.ai/">Codemia.io</a>, <strong><a href="https://bit.ly/3pMiO8g">Design Guru</a></strong>, <strong><a href="https://bit.ly/3cNF0vw">Exponent</a></strong>, <strong><a href="https://bit.ly/3Mnh6UR">Educative</a></strong> <strong>,<a href="https://wavemaker.ai/">Bugfree.ai</a> and <a href="https://wavemaker.ai/">udemy</a>, </strong>which have many great System design courses</p><p>Similar, while answering System design questions you can also follow a System design template like this from <em><strong><a href="https://bit.ly/3pMiO8g">DesignGurus.io </a></strong></em>to articulate your answer better in a limited time.</p><p>Following this template is actually one of the best thing you can do to start your preparation for any system design interview.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bit.ly/3pMiO8g" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YUmL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3953699-9770-4009-9c85-155b7f335ca0_609x761.jpeg 424w, https://substackcdn.com/image/fetch/$s_!YUmL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3953699-9770-4009-9c85-155b7f335ca0_609x761.jpeg 848w, https://substackcdn.com/image/fetch/$s_!YUmL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3953699-9770-4009-9c85-155b7f335ca0_609x761.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!YUmL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3953699-9770-4009-9c85-155b7f335ca0_609x761.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YUmL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3953699-9770-4009-9c85-155b7f335ca0_609x761.jpeg" width="728" height="909.7011494252873" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e3953699-9770-4009-9c85-155b7f335ca0_609x761.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:761,&quot;width&quot;:609,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bit.ly/3pMiO8g&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!YUmL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3953699-9770-4009-9c85-155b7f335ca0_609x761.jpeg 424w, https://substackcdn.com/image/fetch/$s_!YUmL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3953699-9770-4009-9c85-155b7f335ca0_609x761.jpeg 848w, https://substackcdn.com/image/fetch/$s_!YUmL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3953699-9770-4009-9c85-155b7f335ca0_609x761.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!YUmL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3953699-9770-4009-9c85-155b7f335ca0_609x761.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 aria-hidden="true" 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><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>Now, let&#8217;s jump into the problem and solution.</p><h1>How to System Design Twitter or X.com?</h1><p>Designing a system like Twitter is a common scenario in system design interviews but if you want to practice this question from scratch you can start it on <em><strong><a href="https://codemia.io/?via=javarevisited">Codemia.io</a></strong></em> which is a Leetcode style platform for system design interviews.</p><p>It has more than 120+ system design problems and growing. It also provide editorial solution created by senior engineers from reputed company. It also got <em><strong><a href="https://codemia.io/system-design/design-twitter/editorial?via=javarevisited">free questions and designing Twitter i</a></strong></em>s one of them. You can access it here.</p><p>Now coming back to question itself, it&#8217;s a great way to showcase your understanding of large-scale distributed systems, as it involves various aspects such as handling massive user bases, ensuring high availability, and maintaining stability under heavy loads.</p><p>This solution guide will walk you through the process of designing Twitter, covering system requirements, capacity estimation, API design, database design, high-level design, request flow, detailed component design, trade-offs, and potential failure scenarios.</p><p>By the end of this guide, you&#8217;ll have a solid understanding of how to approach and present this design in an interview setting.</p><h1>Twitter System Requirements</h1><p>First thing you should get the requirements right and it starts with functional requirement.</p><p>Choose the one you are most familiar with if you are cloning a real app like buying stuff on Amazon or sending message on Facebook or Twitter.</p><h2>Functional Requirements</h2><p>To design a robust and user-friendly Twitter-like system, we need to outline the core functionalities.</p><ul><li><p>Users should be able to compose and share tweets, which is the primary function of the platform.</p></li><li><p>This involves creating a new tweet, attaching optional media, and sharing it with their followers. Additionally, users should be able to follow other users to see their updates in their feed.</p></li><li><p>This means managing a list of followed users and ensuring their tweets appear in the user&#8217;s timeline.</p></li><li><p>Another essential feature is allowing users to favorite tweets, indicating their appreciation and potentially bookmarking these tweets for future reference.</p></li></ul><p>Here are the key functional requirements for your reference:</p><ol><li><p><strong>Compose and Share Tweets</strong>: Users should be able to create and share tweets.</p></li><li><p><strong>Follow Users</strong>: Users should be able to follow other users and see their updates.</p></li><li><p><strong>Favorite Tweets</strong>: Users should be able to favorite tweets to show appreciation.</p></li></ol><div><hr></div><h2>Non-Functional Requirements</h2><p>For a platform with the scale of Twitter, non-functional requirements are crucial. Scalability is paramount as the system must handle a vast number of users, tweets, and interactions without degradation in performance.</p><ul><li><p>High availability ensures that the platform remains accessible and functional even during peak traffic times or in the event of hardware failures.</p></li><li><p>Stability is another critical aspect, as the service must be reliable, with minimal downtime and consistent performance, even under high concurrency.</p></li></ul><p>Here are the key non-functional requirements which you should mention during interview:</p><ol><li><p><strong>Scalability</strong>: The system should handle a large number of users, tweets, and interactions.</p></li><li><p><strong>High Availability</strong>: The system should be available even under high traffic.</p></li><li><p><strong>Stability</strong>: The system should be stable and accessible without frequent issues or downtime.</p></li></ol><div><hr></div><h1>Capacity Estimation</h1><p>Estimating the user base is the first step in understanding the scale of the system. For this design, let&#8217;s assume a user base of 500 million. This helps us gauge the expected load and the necessary infrastructure to support such a large number of users.</p><h2>User Base</h2><ul><li><p>Assume a user base of 500 million.</p></li></ul><h2>Traffic</h2><p>To get a sense of the daily operations, we need to estimate the traffic. Assuming each user tweets once a day, we can expect 500 million tweets daily.</p><p>Additionally, if each user views 10 pages of their home feed per day, this results in substantial read operations.</p><p>Following relationships also add to the complexity, with each user following 100 others on average, leading to 50 billion follow relationships.</p><p>Lastly, if each user favorites 5 tweets daily, we have 2.5 billion favorite operations per day.</p><p>Here are the key traffic requirements you should consider or mention:</p><ul><li><p><strong>Tweets</strong>: 500 million tweets per day (one tweet per user per day).</p></li><li><p><strong>Home Feed</strong>: Each user views 10 pages per day.</p></li><li><p><strong>Following</strong>: Each user follows 100 other users on average, leading to 50 billion follow relationships.</p></li><li><p><strong>Favorites</strong>: Each user favorites 5 tweets per day, leading to 2.5 billion favorites per day.</p></li></ul><h2>QPS (Queries Per Second)</h2><p>Breaking down these operations into queries per second (QPS) helps us understand the real-time load.</p><p>For write operations, we calculate approximately 15k QPS, for read operations about 75k QPS, and for favorite operations around 30k QPS.</p><p>These numbers help in planning the necessary infrastructure and load balancing strategies.</p><ul><li><p><strong>Write</strong>: 500M&#215;23600&#215;24&#8776;15k\frac{500M \times 2}{3600 \times 24} \approx 15k3600&#215;24500M&#215;2&#8203;&#8776;15k QPS</p></li><li><p><strong>Read</strong>: 500M&#215;103600&#215;24&#8776;75k\frac{500M \times 10}{3600 \times 24} \approx 75k3600&#215;24500M&#215;10&#8203;&#8776;75k QPS</p></li><li><p><strong>Favorites</strong>: 500M&#215;53600&#215;24&#8776;30k\frac{500M \times 5}{3600 \times 24} \approx 30k3600&#215;24500M&#215;5&#8203;&#8776;30k QPS</p></li></ul><h2>Data Size</h2><p>Understanding the data size is crucial for storage planning. With 500 million tweets daily, and each tweet averaging 300 bytes after considering encoding, this totals to 140GB of new data daily, or 50TB annually.</p><p>For media content, if we assume it to be 100 times the size of tweets, it results in 10TB daily, or 4PB annually.</p><p>This estimation underscores the need for a distributed storage architecture.</p><ul><li><p><strong>Tweets</strong>: 500 million tweets daily, each with 140 characters (300 bytes each). This totals 140GB per day, and 50TB per year.</p></li><li><p><strong>Media (Images/Videos)</strong>: Assume 100 times the size of tweets, 10TB per day, and 4PB per year.</p></li></ul><div><hr></div><h1>API Design</h1><p>Now, let&#8217;s talk about the API Design which is is another important area in System design interviews:</p><h2>Tweeting</h2><p>APIs for tweeting need to handle the creation and posting of tweets efficiently. This involves capturing user information, tweet content, location data, and timestamp. Proper error handling and validation are essential to ensure a smooth user experience.</p><pre><code>public Result postTweet(Long userId, String tweetText, String location, DateTime date);</code></pre><h2>Following</h2><p>The following functionality requires APIs to manage relationships between users. This includes following and unfollowing users, ensuring data integrity, and updating the user&#8217;s following list promptly.</p><pre><code>public Result followUser(Long userId, Long followedUserId);
public Result unfollowUser(Long userId, Long followedUserId);</code></pre><h2>Favorites</h2><p>APIs for favorites allow users to like or unlike tweets. These operations should be efficient, with proper indexing and error handling to ensure quick updates and accurate count of favorites on each tweet.</p><pre><code>public Result favoriteTweet(Long userId, Long tweetId);
public Result unfavoriteTweet(Long userId, Long tweetId);</code></pre><p>The feed rendering API is crucial for fetching and displaying tweets from followed users. This requires efficient querying and pagination to ensure quick load times and a seamless user experience.</p><pre><code>public Result getFeeds(Long userId, String location, int pageNo);</code></pre><p>Here is a nice diagram showing key APIs using mermaid</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!b0ce!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc483dc0b-15aa-4e59-8cd0-440a1c496dd5_843x652.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!b0ce!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc483dc0b-15aa-4e59-8cd0-440a1c496dd5_843x652.png 424w, https://substackcdn.com/image/fetch/$s_!b0ce!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc483dc0b-15aa-4e59-8cd0-440a1c496dd5_843x652.png 848w, https://substackcdn.com/image/fetch/$s_!b0ce!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc483dc0b-15aa-4e59-8cd0-440a1c496dd5_843x652.png 1272w, https://substackcdn.com/image/fetch/$s_!b0ce!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc483dc0b-15aa-4e59-8cd0-440a1c496dd5_843x652.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!b0ce!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc483dc0b-15aa-4e59-8cd0-440a1c496dd5_843x652.png" width="843" height="652" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c483dc0b-15aa-4e59-8cd0-440a1c496dd5_843x652.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:652,&quot;width&quot;:843,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:138420,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!b0ce!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc483dc0b-15aa-4e59-8cd0-440a1c496dd5_843x652.png 424w, https://substackcdn.com/image/fetch/$s_!b0ce!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc483dc0b-15aa-4e59-8cd0-440a1c496dd5_843x652.png 848w, https://substackcdn.com/image/fetch/$s_!b0ce!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc483dc0b-15aa-4e59-8cd0-440a1c496dd5_843x652.png 1272w, https://substackcdn.com/image/fetch/$s_!b0ce!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc483dc0b-15aa-4e59-8cd0-440a1c496dd5_843x652.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 aria-hidden="true" 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><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><div><hr></div><p></p><h1>Database Design</h1><p>After API Design, let&#8217;s talk about Database design now:</p><h1>Tables</h1><p>The database design involves defining tables for users, tweets, and follower relationships. </p><p>The <code>UserInfo</code> table stores user details, the <code>Tweets</code> table handles tweet content and metadata, and the <code>Follower</code> table manages follow relationships. </p><p>Proper indexing is essential for fast lookups and updates.</p><ul><li><p><strong>UserInfo Table</strong></p></li><li><p>userId (Primary Key)</p></li><li><p>userName</p></li><li><p>status</p></li><li><p>otherProfile (avatar, age, etc.)</p></li><li><p><strong>Tweets Table</strong></p></li><li><p>tweetId (Primary Key)</p></li><li><p>userId (Index)</p></li><li><p>content</p></li><li><p>postTime (Index)</p></li><li><p>modifyTime</p></li><li><p>status</p></li><li><p><strong>Follower Table</strong></p></li><li><p>userId</p></li><li><p>followerId (Index)</p></li><li><p>followedTime</p></li></ul><p>And, here is a nice ERD diagram showing the relationship between these tables:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JQF3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb929beae-507a-4c5b-8b77-393942dfcdf5_863x642.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JQF3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb929beae-507a-4c5b-8b77-393942dfcdf5_863x642.png 424w, https://substackcdn.com/image/fetch/$s_!JQF3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb929beae-507a-4c5b-8b77-393942dfcdf5_863x642.png 848w, https://substackcdn.com/image/fetch/$s_!JQF3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb929beae-507a-4c5b-8b77-393942dfcdf5_863x642.png 1272w, https://substackcdn.com/image/fetch/$s_!JQF3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb929beae-507a-4c5b-8b77-393942dfcdf5_863x642.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JQF3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb929beae-507a-4c5b-8b77-393942dfcdf5_863x642.png" width="863" height="642" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b929beae-507a-4c5b-8b77-393942dfcdf5_863x642.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:642,&quot;width&quot;:863,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:88556,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!JQF3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb929beae-507a-4c5b-8b77-393942dfcdf5_863x642.png 424w, https://substackcdn.com/image/fetch/$s_!JQF3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb929beae-507a-4c5b-8b77-393942dfcdf5_863x642.png 848w, https://substackcdn.com/image/fetch/$s_!JQF3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb929beae-507a-4c5b-8b77-393942dfcdf5_863x642.png 1272w, https://substackcdn.com/image/fetch/$s_!JQF3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb929beae-507a-4c5b-8b77-393942dfcdf5_863x642.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 aria-hidden="true" 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><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><div><hr></div><h1>Storage</h1><p>Choosing the right storage solutions is critical. For structured data like user profiles and tweets, MySQL is a good choice due to its support for complex queries and transactions.</p><p>For media storage, Amazon S3 offers scalable and cost-effective storage for images and videos.</p><ul><li><p>Use MySQL for structured data (users, tweets, follow relationships).</p></li><li><p>Use Amazon S3 for media storage (images and videos).</p></li></ul><div><hr></div><h1>High-Level Design</h1><p>Let&#8217;s see the high level design first:</p><h2>Client Layer</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4tnI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8e38f70-0e9e-4743-9a53-2d83f4607ac9_700x318.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4tnI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8e38f70-0e9e-4743-9a53-2d83f4607ac9_700x318.png 424w, https://substackcdn.com/image/fetch/$s_!4tnI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8e38f70-0e9e-4743-9a53-2d83f4607ac9_700x318.png 848w, https://substackcdn.com/image/fetch/$s_!4tnI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8e38f70-0e9e-4743-9a53-2d83f4607ac9_700x318.png 1272w, https://substackcdn.com/image/fetch/$s_!4tnI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8e38f70-0e9e-4743-9a53-2d83f4607ac9_700x318.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4tnI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8e38f70-0e9e-4743-9a53-2d83f4607ac9_700x318.png" width="700" height="318" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f8e38f70-0e9e-4743-9a53-2d83f4607ac9_700x318.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:318,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!4tnI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8e38f70-0e9e-4743-9a53-2d83f4607ac9_700x318.png 424w, https://substackcdn.com/image/fetch/$s_!4tnI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8e38f70-0e9e-4743-9a53-2d83f4607ac9_700x318.png 848w, https://substackcdn.com/image/fetch/$s_!4tnI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8e38f70-0e9e-4743-9a53-2d83f4607ac9_700x318.png 1272w, https://substackcdn.com/image/fetch/$s_!4tnI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8e38f70-0e9e-4743-9a53-2d83f4607ac9_700x318.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 aria-hidden="true" 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><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>The client layer involves websites and apps sending requests to the server. These requests are distributed via load balancers to ensure even load distribution and high availability. Using a CDN for static files helps reduce latency and improve load times.</p><ul><li><p>Clients (websites/apps) send requests to the server.</p></li><li><p>Requests are distributed via load balancers.</p></li><li><p>Use a rate limiter to protect backend servers.</p></li><li><p>Use a CDN for static files (images, videos).</p></li></ul><h2>Server Layer</h2><p>The client layer involves websites and apps sending requests to the server. These requests are distributed via load balancers to ensure even load distribution and high availability.</p><p>Using a CDN for static files helps reduce latency and improve load times.</p><ul><li><p>Server clusters handle requests and different services:</p></li><li><p><strong>Tweet Service</strong>: Posting tweets.</p></li><li><p><strong>User Service</strong>: User registration and profile management.</p></li><li><p><strong>Follow Service</strong>: Following/unfollowing users.</p></li><li><p><strong>Home Feed Service</strong>: Rendering user feeds.</p></li></ul><h2>Data Layer</h2><p>The data layer involves caching data with Redis to increase response speed and using MySQL for persistent storage with master-slave architecture to ensure consistency and availability. Amazon S3 is used for storing media files, ensuring scalability and durability.</p><ul><li><p>Use Redis for caching to increase response speed.</p></li><li><p>Use MySQL with master-slave architecture for data consistency and availability.</p></li><li><p>Use Amazon S3 for storing media files.</p></li></ul><h2>Request Flow</h2><p>Explaining the request flow helps in understanding how different components interact. When a client sends a request, it first hits the load balancer, which distributes it to an appropriate server.</p><p>The server processes the request, updates the database, and caches the necessary data. For read requests, data is retrieved from the cache or database, and media files are fetched from the CDN, ensuring quick response times.</p><ol><li><p>Client sends a request to the load balancer.</p></li><li><p>Load balancer distributes the request to a server.</p></li><li><p>Rate limiter checks the traffic.</p></li><li><p>Server processes the request and stores data in MySQL and Redis.</p></li><li><p>Media files are stored in CDN.</p></li><li><p>For read requests, the server retrieves files from CDN and data from Redis or MySQL.</p></li></ol><div><hr></div><h1>Detailed Component Design</h1><p>Now, let&#8217;s see the detailed component design and various software architecture components we can use to design twitter.</p><h2>Load Balancer</h2><p>Deploying multiple load balancers in a cluster ensures high availability and even load distribution.</p><p>Placing load balancers in different locations reduces latency for users, and using various algorithms like round-robin or least connections helps manage the load efficiently.</p><ul><li><p>Deploy multiple load balancers in a cluster.</p></li><li><p>Place load balancers in different locations to reduce latency.</p></li><li><p>Use algorithms like round-robin, least connections, or IP hash.</p></li></ul><h2>CDN</h2><p>Using a CDN for static content reduces the load on the origin server and improves load times for users. Optimizing caching rules and adjusting TTL helps achieve higher cache hit ratios, ensuring content is served quickly.</p><ul><li><p>Use both pull and push caching approaches.</p></li><li><p>Optimize caching rules and TTL to achieve higher cache hit ratios.</p></li><li><p>Scale the system by adding more server nodes.</p></li></ul><h2>Redis</h2><p>Using Redis for caching involves setting up a Redis cluster for scalability and employing master-slave replication for high availability. Sentinel monitors the cluster and handles failovers, ensuring the cache remains available even during node failures.</p><ul><li><p>Use Redis cluster for large-scale data.</p></li><li><p>Employ master-slave replication for high availability.</p></li><li><p>Use Sentinel to monitor the cluster and handle failovers.</p></li></ul><h2>MySQL</h2><p>MySQL&#8217;s master-slave architecture supports high volume traffic and ensures data consistency through replication. Horizontal partitioning helps distribute the load across multiple servers, handling large datasets efficiently.</p><ul><li><p>Use master-slave architecture for high volume traffic.</p></li><li><p>Use horizontal partitioning to handle more data.</p></li></ul><p>Here is a nice diagram showing key component of Twitter:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!m70X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd404f5c-e461-4249-97d9-ca5ce7359cbd_1050x674.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!m70X!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd404f5c-e461-4249-97d9-ca5ce7359cbd_1050x674.png 424w, https://substackcdn.com/image/fetch/$s_!m70X!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd404f5c-e461-4249-97d9-ca5ce7359cbd_1050x674.png 848w, https://substackcdn.com/image/fetch/$s_!m70X!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd404f5c-e461-4249-97d9-ca5ce7359cbd_1050x674.png 1272w, https://substackcdn.com/image/fetch/$s_!m70X!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd404f5c-e461-4249-97d9-ca5ce7359cbd_1050x674.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!m70X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd404f5c-e461-4249-97d9-ca5ce7359cbd_1050x674.png" width="1050" height="674" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dd404f5c-e461-4249-97d9-ca5ce7359cbd_1050x674.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:674,&quot;width&quot;:1050,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:49677,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!m70X!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd404f5c-e461-4249-97d9-ca5ce7359cbd_1050x674.png 424w, https://substackcdn.com/image/fetch/$s_!m70X!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd404f5c-e461-4249-97d9-ca5ce7359cbd_1050x674.png 848w, https://substackcdn.com/image/fetch/$s_!m70X!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd404f5c-e461-4249-97d9-ca5ce7359cbd_1050x674.png 1272w, https://substackcdn.com/image/fetch/$s_!m70X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd404f5c-e461-4249-97d9-ca5ce7359cbd_1050x674.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 aria-hidden="true" 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><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></p><div><hr></div><h1>Trade-offs and Tech Choices</h1><p>This is probably the most important part for interviews, let&#8217;s see:</p><h2>Database</h2><p>Choosing MySQL over NoSQL is due to the need for complex queries and transaction support. While NoSQL offers schema flexibility, it lacks support for structured data and complex transactions, which are essential for Twitter&#8217;s business model.</p><ul><li><p>Chose MySQL over NoSQL due to the need for complex queries and transaction support.</p></li></ul><h2>Cache</h2><p>Redis is preferred over Memcached due to its support for various data types and horizontal scaling. While Memcached is efficient for basic key-value storage, Redis offers advanced features and better scalability, making it suitable for large-scale systems.</p><ul><li><p>Chose Redis over Memcached for its advanced features and horizontal scaling.</p></li></ul><div><hr></div><h1>Failure Scenarios and Bottlenecks</h1><h2>Hybrid Model</h2><p>To handle users who follow many accounts, a hybrid model combining pull and push approaches can reduce latency. For users following many people, pushing new tweets reduces the load during feed aggregation, improving user experience.</p><ul><li><p>If a user follows many people, combine pull and push models to reduce latency.</p></li></ul><h2>Read Hotspot</h2><p>Handling read hotspots, such as popular users with many followers, involves caching their tweets in Redis and using a cache-aside strategy for consistency. </p><p>Adding hot zones in Redis servers and using local caches can distribute the load, avoiding excessive calls to the same server.</p><ul><li><p>Cache hot data in Redis with a cache-aside strategy.</p></li><li><p>Use local cache to handle high traffic.</p></li></ul><h2>Future Improvements</h2><p>Future improvements include implementing a multi-region active-active strategy for disaster recovery and high availability.</p><p>Deploying service clusters and database clusters in multiple locations with automatic failover and load balancing ensures no single point of failure, maintaining service continuity and reliability.</p><ul><li><p>Implement a multi-region active-active strategy for disaster recovery and high availability.</p></li><li><p>Continue optimizing caching, load balancing, and data storage strategies to handle future growth.</p></li></ul><div><hr></div><h1>System Design Interviews Resources</h1><p>And, here are curated list of<em> best system design books, online courses, and practice websites</em> which you can check to better prepare for System design interviews. Most of these courses also answer questions I have shared here.</p><ol><li><p><strong><a href="https://bit.ly/3pMiO8g">DesignGuru&#8217;s Grokking System Design Course</a></strong>: An interactive learning platform with hands-on exercises and real-world scenarios to strengthen your system design skills.</p></li><li><p><strong><a href="https://codemia.io/?via=javarevisited">Codemia.io</a></strong> : This is another great platform to practice System design problems for interviews. It got more than 120+ System design problems, many of them are free and also a proper structure to solve them.</p></li><li><p><strong><a href="https://bit.ly/3P3eqMN">ByteByteGo</a></strong>: A live book and course by Alex Xu for System design interview preparation. It contains all the content of System Design Interview book volume 1 and 2 and will be updated with volume 3 which is coming soon.</p></li><li><p><strong><a href="https://bit.ly/3cNF0vw">Exponent</a></strong>: A specialized site for interview prep especially for FAANG companies like Amazon and Google, They also have a great system design course and many other material which can help you crack FAAN interviews.</p></li><li><p><strong><a href="https://amzn.to/3nU2Mbp">&#8220;System Design Interview&#8221; by Alex Xu</a></strong>: This book provides an in-depth exploration of system design concepts, strategies, and interview preparation tips.</p></li><li><p><strong><a href="https://amzn.to/3nXKaas">&#8220;Designing Data-Intensive Applications&#8221;</a></strong> by Martin Kleppmann: A comprehensive guide that covers the principles and practices for designing scalable and reliable systems.</p></li><li><p><a href="https://leetcode.com/explore/learn/card/system-design">LeetCode System Design Tag</a>: LeetCode is a popular platform for technical interview preparation. The System Design tag on LeetCode includes a variety of questions to practice.</p></li><li><p><strong><a href="https://bit.ly/3bSaBfC">&#8220;System Design Primer&#8221;</a></strong> on GitHub: A curated list of resources, including articles, books, and videos, to help you prepare for system design interviews.</p></li><li><p><strong><a href="https://bit.ly/3Mnh6UR">Educative&#8217;s System Design Cours</a></strong>e: An interactive learning platform with hands-on exercises and real-world scenarios to strengthen your system design skills.</p></li><li><p><strong>High Scalability Blog</strong>: A blog that features articles and case studies on the architecture of high-traffic websites and scalable systems.</p></li><li><p><strong><a href="https://medium.com/javarevisited/top-8-youtube-channels-for-system-design-interview-preparation-970d103ea18d">YouTube Channels</a></strong>: Check out channels like &#8220;Gaurav Sen&#8221; and &#8220;Tech Dummies&#8221; for insightful videos on system design concepts and interview preparation.</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bit.ly/3P3eqMN" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LpOJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e6390e9-b3fc-4b15-a200-713655dad405_700x737.jpeg 424w, https://substackcdn.com/image/fetch/$s_!LpOJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e6390e9-b3fc-4b15-a200-713655dad405_700x737.jpeg 848w, https://substackcdn.com/image/fetch/$s_!LpOJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e6390e9-b3fc-4b15-a200-713655dad405_700x737.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!LpOJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e6390e9-b3fc-4b15-a200-713655dad405_700x737.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LpOJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e6390e9-b3fc-4b15-a200-713655dad405_700x737.jpeg" width="728" height="766.48" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8e6390e9-b3fc-4b15-a200-713655dad405_700x737.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:737,&quot;width&quot;:700,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bit.ly/3P3eqMN&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!LpOJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e6390e9-b3fc-4b15-a200-713655dad405_700x737.jpeg 424w, https://substackcdn.com/image/fetch/$s_!LpOJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e6390e9-b3fc-4b15-a200-713655dad405_700x737.jpeg 848w, https://substackcdn.com/image/fetch/$s_!LpOJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e6390e9-b3fc-4b15-a200-713655dad405_700x737.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!LpOJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e6390e9-b3fc-4b15-a200-713655dad405_700x737.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 aria-hidden="true" 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><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>image_credit &#8212; <a href="https://bit.ly/3P3eqMN">ByteByteGo</a></em></p><p>Remember to combine theoretical knowledge with practical application by working on real-world projects and participating in mock interviews. Continuous practice and learning will give you confidence for system design interviews.</p>
      <p>
          <a href="https://javarevisited.substack.com/p/how-to-system-design-twitterx-like">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How I Would Learn Software Design in 2026 (If I Had To Start Over)]]></title><description><![CDATA[How to learn System Design in 2026 with right resources]]></description><link>https://javarevisited.substack.com/p/how-i-would-learn-software-design</link><guid isPermaLink="false">https://javarevisited.substack.com/p/how-i-would-learn-software-design</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Tue, 07 Jul 2026 15:51:17 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!VBBd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858726a8-0f62-4319-8dd8-f50dffa823c1_1391x860.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h3><a href="https://codemia.io/pricing?via=javarevisited">Codemia.io (LeetCode for System Design and Agentic AI Design) (30% OFF) </a>(Sponsored)</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://codemia.io/pricing?via=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VBBd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858726a8-0f62-4319-8dd8-f50dffa823c1_1391x860.png 424w, https://substackcdn.com/image/fetch/$s_!VBBd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858726a8-0f62-4319-8dd8-f50dffa823c1_1391x860.png 848w, https://substackcdn.com/image/fetch/$s_!VBBd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858726a8-0f62-4319-8dd8-f50dffa823c1_1391x860.png 1272w, https://substackcdn.com/image/fetch/$s_!VBBd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858726a8-0f62-4319-8dd8-f50dffa823c1_1391x860.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VBBd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858726a8-0f62-4319-8dd8-f50dffa823c1_1391x860.png" width="1391" height="860" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/858726a8-0f62-4319-8dd8-f50dffa823c1_1391x860.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:860,&quot;width&quot;:1391,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:100865,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://codemia.io/pricing?via=javarevisited&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://javarevisited.substack.com/i/195429278?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858726a8-0f62-4319-8dd8-f50dffa823c1_1391x860.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!VBBd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858726a8-0f62-4319-8dd8-f50dffa823c1_1391x860.png 424w, https://substackcdn.com/image/fetch/$s_!VBBd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858726a8-0f62-4319-8dd8-f50dffa823c1_1391x860.png 848w, https://substackcdn.com/image/fetch/$s_!VBBd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858726a8-0f62-4319-8dd8-f50dffa823c1_1391x860.png 1272w, https://substackcdn.com/image/fetch/$s_!VBBd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858726a8-0f62-4319-8dd8-f50dffa823c1_1391x860.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 aria-hidden="true" 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><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>Hello guys, It&#8217;s been hard way I approached learning System Design, especially for interviews.</p><p>When I started, I just went through reading blogs, Medium articles, joining courses, watching YouTube videos, reading books and whitepapers and what not.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</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>While it did helped me to <a href="https://javarevisited.substack.com/p/8-udemy-courses-to-learn-distributed">learn System Design</a>, its certainly not the best or most structured way to learn System Design and I won&#8217;t recommend any people to do that way, especially if they have an interview coming up soon.</p><blockquote><p>If I had to start my system design learning journey from scratch, I&#8217;d take a methodical, step-by-step approach to cover essential concepts, practical applications, and tradeoffs.</p></blockquote><p>System design can feel overwhelming at first because of its vast scope, but breaking it down into smaller chunks helps and you will be surprised that its not that vast as it looks.</p><p>Below, I&#8217;ll outline how I&#8217;d structure my learning, focusing on <strong><a href="https://javarevisited.substack.com/p/6-system-design-concepts-you-cannot">key concepts</a></strong>, <strong>building blocks</strong>, <strong>databases</strong>, <strong>tradeoffs</strong>, and <strong>architectural patterns</strong>.</p><h2>1. Start with the Core Concepts</h2><p>System design fundamentals are built on understanding <strong>core concepts</strong> like scalability, availability, and fault tolerance.</p><p>These concepts are the foundation for designing systems that are efficient, reliable, and scalable.</p><ul><li><p><strong>Scalability:</strong> Understand vertical vs. horizontal scaling and when to use each.</p></li><li><p><strong>Availability:</strong> Learn how to design systems with minimal downtime (e.g., active-active vs. active-passive setups).</p></li><li><p><strong>CAP Theorem:</strong> Explore the tradeoffs between consistency, availability, and partition tolerance in distributed systems.</p></li><li><p><strong>Latency vs. Throughput:</strong> Grasp the difference between low latency and high throughput, and how they impact user experience.</p></li><li><p><strong>Fault Tolerance:</strong> Study techniques like redundancy and replication to ensure systems continue functioning despite failures.</p></li></ul><blockquote><p><em>&#128161; <strong>Resources Tip :</strong>  You can also checkout <strong><a href="https://bytebytego.com/pricing?fpr=javarevisited">ByteByteGo</a></strong>, which has the best visual explanation for each of these System Design concepts. </em></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bytebytego.com/pricing?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eGZb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefdf1399-b0d1-4a19-8970-92cf92b245d1_700x455.png 424w, https://substackcdn.com/image/fetch/$s_!eGZb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefdf1399-b0d1-4a19-8970-92cf92b245d1_700x455.png 848w, https://substackcdn.com/image/fetch/$s_!eGZb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefdf1399-b0d1-4a19-8970-92cf92b245d1_700x455.png 1272w, https://substackcdn.com/image/fetch/$s_!eGZb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefdf1399-b0d1-4a19-8970-92cf92b245d1_700x455.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eGZb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefdf1399-b0d1-4a19-8970-92cf92b245d1_700x455.png" width="700" height="455" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/efdf1399-b0d1-4a19-8970-92cf92b245d1_700x455.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:455,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bytebytego.com/pricing?fpr=javarevisited&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!eGZb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefdf1399-b0d1-4a19-8970-92cf92b245d1_700x455.png 424w, https://substackcdn.com/image/fetch/$s_!eGZb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefdf1399-b0d1-4a19-8970-92cf92b245d1_700x455.png 848w, https://substackcdn.com/image/fetch/$s_!eGZb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefdf1399-b0d1-4a19-8970-92cf92b245d1_700x455.png 1272w, https://substackcdn.com/image/fetch/$s_!eGZb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefdf1399-b0d1-4a19-8970-92cf92b245d1_700x455.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 aria-hidden="true" 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><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><div><hr></div><h2>2. Master the Building Blocks of System Design</h2><p>Once the basics are clear, focus on the building blocks that form the backbone of system design.</p><ul><li><p><strong>Content Delivery Network (CDN):</strong> Learn how CDNs reduce latency by caching content closer to users.</p></li><li><p><strong>Load Balancing:</strong> Understand load balancing algorithms like round robin, least connections, and IP hash.</p></li><li><p><strong>Caching:</strong> Dive into caching strategies, cache eviction policies, and distributed caching.</p></li><li><p><strong>Message Queues:</strong> Explore how queues decouple systems and enable asynchronous communication.</p></li><li><p><strong>Circuit Breakers:</strong> Study how they prevent cascading failures in distributed systems.</p></li><li><p><strong>API Gateway:</strong> Learn its role in managing APIs, rate limiting, and handling cross-origin resource sharing (CORS).</p></li></ul><blockquote><p><em>&#128161; <strong>Practical Step:</strong> Watch an interview focused System design course like </em><a href="https://www.educative.io/courses/grokking-modern-system-design-software-engineers-managers?affiliate_id=5073518643380224">Grokking Modern System Design for Software Engineers &amp; Managers</a><em> or Build a small project (e.g., a chat app) to see how load balancing, caching, and API gateways come together.</em></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.educative.io/courses/grokking-modern-system-design-software-engineers-managers?affiliate_id=5073518643380224" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!h7hu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42cbf9b6-c901-4490-8028-8d3131375590_526x526.jpeg 424w, https://substackcdn.com/image/fetch/$s_!h7hu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42cbf9b6-c901-4490-8028-8d3131375590_526x526.jpeg 848w, https://substackcdn.com/image/fetch/$s_!h7hu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42cbf9b6-c901-4490-8028-8d3131375590_526x526.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!h7hu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42cbf9b6-c901-4490-8028-8d3131375590_526x526.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!h7hu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42cbf9b6-c901-4490-8028-8d3131375590_526x526.jpeg" width="526" height="526" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/42cbf9b6-c901-4490-8028-8d3131375590_526x526.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:526,&quot;width&quot;:526,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.educative.io/courses/grokking-modern-system-design-software-engineers-managers?affiliate_id=5073518643380224&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!h7hu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42cbf9b6-c901-4490-8028-8d3131375590_526x526.jpeg 424w, https://substackcdn.com/image/fetch/$s_!h7hu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42cbf9b6-c901-4490-8028-8d3131375590_526x526.jpeg 848w, https://substackcdn.com/image/fetch/$s_!h7hu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42cbf9b6-c901-4490-8028-8d3131375590_526x526.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!h7hu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42cbf9b6-c901-4490-8028-8d3131375590_526x526.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 aria-hidden="true" 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><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><div><hr></div><h2>3. Dive into Databases</h2><p>Databases are at the heart of every system. Knowing how to choose and design them is critical.</p><ul><li><p><strong>SQL vs. NoSQL:</strong> Understand the differences and when to use each.</p></li><li><p><strong>Database Indexes:</strong> Learn how indexes speed up query performance.</p></li><li><p><strong><a href="https://javarevisited.substack.com/p/the-complete-guide-of-database-sharding">Database Sharding</a>:</strong> Explore strategies for distributing data across multiple nodes.</p></li><li><p><strong>Replication and Scaling:</strong> Understand how to replicate databases for availability and scale them for performance.</p></li><li><p><strong>ACID Transactions:</strong> Learn the importance of atomicity, consistency, isolation, and durability.</p></li></ul><blockquote><p><em>&#128161; <strong>Practice Exercise:</strong> Design a schema for a large-scale e-commerce app and experiment with sharding and replication, you can also checkout <strong><a href="https://designgurus.org/link/84Y9hP?url=https%3A%2F%2Fdesigngurus.org%2Fcourse%3Fcourseid%3Dgrokking-the-advanced-system-design-interview">Grokking the advanced System Design course on DesignGurus.io</a></strong> for more such topics.</em></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://designgurus.org/link/84Y9hP?url=https%3A%2F%2Fdesigngurus.org%2Fcourse%3Fcourseid%3Dgrokking-the-advanced-system-design-interview" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nni-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21b20b7a-1c00-43e8-bd3d-d861893ac496_700x1117.jpeg 424w, https://substackcdn.com/image/fetch/$s_!nni-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21b20b7a-1c00-43e8-bd3d-d861893ac496_700x1117.jpeg 848w, https://substackcdn.com/image/fetch/$s_!nni-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21b20b7a-1c00-43e8-bd3d-d861893ac496_700x1117.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!nni-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21b20b7a-1c00-43e8-bd3d-d861893ac496_700x1117.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nni-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21b20b7a-1c00-43e8-bd3d-d861893ac496_700x1117.jpeg" width="700" height="1117" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/21b20b7a-1c00-43e8-bd3d-d861893ac496_700x1117.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1117,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://designgurus.org/link/84Y9hP?url=https%3A%2F%2Fdesigngurus.org%2Fcourse%3Fcourseid%3Dgrokking-the-advanced-system-design-interview&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!nni-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21b20b7a-1c00-43e8-bd3d-d861893ac496_700x1117.jpeg 424w, https://substackcdn.com/image/fetch/$s_!nni-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21b20b7a-1c00-43e8-bd3d-d861893ac496_700x1117.jpeg 848w, https://substackcdn.com/image/fetch/$s_!nni-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21b20b7a-1c00-43e8-bd3d-d861893ac496_700x1117.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!nni-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21b20b7a-1c00-43e8-bd3d-d861893ac496_700x1117.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 aria-hidden="true" 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><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><div><hr></div><h3>4. Understand Key Tradeoffs</h3><p>System design often involves making tradeoffs. Learning to evaluate them is crucial for building efficient systems.</p><ul><li><p><strong>Strong vs. Eventual Consistency:</strong> Study the implications of each for real-world applications like banking systems and social media.</p></li><li><p><strong>Synchronous vs. Asynchronous Communication:</strong> Understand when to use synchronous APIs vs. asynchronous queues.</p></li><li><p><strong>Batch vs. Stream Processing:</strong> Learn the difference between systems like Apache Hadoop (batch) and Apache Kafka (stream).</p></li><li><p><strong>Stateful vs. Stateless Design:</strong> Explore how stateless systems scale better and why stateful systems are still essential in some cases.</p></li></ul><blockquote><blockquote><p><em>&#128161; <strong>Resource Tip:</strong> Join a comprehensive course like <strong><a href="https://bit.ly/3pMiO8g">&#8220;Grokking the System Design Interview&#8221;</a></strong> or Read real-world case studies from companies like <strong>Netflix</strong> and <strong>Google </strong>to see how they implement these concepts.</em></p></blockquote></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://designgurus.org/link/84Y9hP?url=https%3A%2F%2Fdesigngurus.org%2Fcourse%3Fcourseid%3Dgrokking-the-advanced-system-design-interview" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vMGU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f012f0-7942-4010-ba2b-0f610edb94c3_700x871.jpeg 424w, https://substackcdn.com/image/fetch/$s_!vMGU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f012f0-7942-4010-ba2b-0f610edb94c3_700x871.jpeg 848w, https://substackcdn.com/image/fetch/$s_!vMGU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f012f0-7942-4010-ba2b-0f610edb94c3_700x871.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!vMGU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f012f0-7942-4010-ba2b-0f610edb94c3_700x871.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vMGU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f012f0-7942-4010-ba2b-0f610edb94c3_700x871.jpeg" width="700" height="871" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c6f012f0-7942-4010-ba2b-0f610edb94c3_700x871.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:871,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://designgurus.org/link/84Y9hP?url=https%3A%2F%2Fdesigngurus.org%2Fcourse%3Fcourseid%3Dgrokking-the-advanced-system-design-interview&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!vMGU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f012f0-7942-4010-ba2b-0f610edb94c3_700x871.jpeg 424w, https://substackcdn.com/image/fetch/$s_!vMGU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f012f0-7942-4010-ba2b-0f610edb94c3_700x871.jpeg 848w, https://substackcdn.com/image/fetch/$s_!vMGU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f012f0-7942-4010-ba2b-0f610edb94c3_700x871.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!vMGU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f012f0-7942-4010-ba2b-0f610edb94c3_700x871.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 aria-hidden="true" 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><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><div><hr></div><h3>5. Study System Design Architectural Patterns</h3><p>Architectural patterns provide blueprints for designing systems. They guide how components interact and scale.</p><ul><li><p><strong>Client-Server Architecture:</strong> Learn the basic two-tier architecture and its limitations.</p></li><li><p><strong>Microservices Architecture:</strong> Understand how to break down monoliths into smaller, independently deployable services.</p></li><li><p><strong>Serverless Architecture:</strong> Explore event-driven architectures using AWS Lambda or Azure Functions.</p></li><li><p><strong>Event-Driven Architecture:</strong> Learn how events drive workflows in systems like e-commerce and IoT.</p></li><li><p><strong>Peer-to-Peer (P2P) Architecture:</strong> Study decentralized systems like torrents or blockchain.</p></li></ul><blockquote><p><em>&#128161; <strong>Project Idea:</strong> Design a system like Uber using a combination of event-driven and microservices architecture. You can practice such problems on <strong><a href="https://buff.ly/4dl3eHJ">codemia.io</a></strong>, a great place to practice system design.</em></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://buff.ly/4dl3eHJ" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Hke0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7eb4285-985e-4375-9011-2200492fc69e_700x692.png 424w, https://substackcdn.com/image/fetch/$s_!Hke0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7eb4285-985e-4375-9011-2200492fc69e_700x692.png 848w, https://substackcdn.com/image/fetch/$s_!Hke0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7eb4285-985e-4375-9011-2200492fc69e_700x692.png 1272w, https://substackcdn.com/image/fetch/$s_!Hke0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7eb4285-985e-4375-9011-2200492fc69e_700x692.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Hke0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7eb4285-985e-4375-9011-2200492fc69e_700x692.png" width="700" height="692" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a7eb4285-985e-4375-9011-2200492fc69e_700x692.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:692,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://buff.ly/4dl3eHJ&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Hke0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7eb4285-985e-4375-9011-2200492fc69e_700x692.png 424w, https://substackcdn.com/image/fetch/$s_!Hke0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7eb4285-985e-4375-9011-2200492fc69e_700x692.png 848w, https://substackcdn.com/image/fetch/$s_!Hke0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7eb4285-985e-4375-9011-2200492fc69e_700x692.png 1272w, https://substackcdn.com/image/fetch/$s_!Hke0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7eb4285-985e-4375-9011-2200492fc69e_700x692.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 aria-hidden="true" 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><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><div><hr></div><h3>6. Embrace Hands-On Learning</h3><p>The best way to master system design is by building real-world systems. Start small and progressively increase the complexity of your designs.</p><ul><li><p><strong>Basic Project:</strong> Design a URL shortening service (learn about hashing, databases, and scalability).</p></li><li><p><strong>Intermediate Project:</strong> Build a Twitter-like app (explore API design, rate limiting, and caching).</p></li><li><p><strong>Advanced Project:</strong> Design a ride-hailing service (focus on location-based systems, distributed databases, and fault tolerance).</p></li></ul><blockquote><p><em>&#128161; <strong>Mock Interviews:</strong> Participate in system design interviews on platforms like <strong><a href="https://bit.ly/3cNF0vw">Pramp</a></strong><a href="https://bit.ly/3cNF0vw"> ,</a> <a href="https://bit.ly/3pMiO8g">Designgurus.io</a>, or </em><a href="https://upwardandonwardinc.sjv.io/RG2Aka">InterviewKickStart </a><em>with peers to gain confidence.</em></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://bit.ly/3pMiO8g" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!yt0n!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26089140-9e0e-4b67-b291-dd2b1ecc1454_700x873.jpeg 424w, https://substackcdn.com/image/fetch/$s_!yt0n!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26089140-9e0e-4b67-b291-dd2b1ecc1454_700x873.jpeg 848w, https://substackcdn.com/image/fetch/$s_!yt0n!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26089140-9e0e-4b67-b291-dd2b1ecc1454_700x873.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!yt0n!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26089140-9e0e-4b67-b291-dd2b1ecc1454_700x873.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!yt0n!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26089140-9e0e-4b67-b291-dd2b1ecc1454_700x873.jpeg" width="700" height="873" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/26089140-9e0e-4b67-b291-dd2b1ecc1454_700x873.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:873,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://bit.ly/3pMiO8g&quot;,&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="" title="" srcset="https://substackcdn.com/image/fetch/$s_!yt0n!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26089140-9e0e-4b67-b291-dd2b1ecc1454_700x873.jpeg 424w, https://substackcdn.com/image/fetch/$s_!yt0n!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26089140-9e0e-4b67-b291-dd2b1ecc1454_700x873.jpeg 848w, https://substackcdn.com/image/fetch/$s_!yt0n!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26089140-9e0e-4b67-b291-dd2b1ecc1454_700x873.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!yt0n!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26089140-9e0e-4b67-b291-dd2b1ecc1454_700x873.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 aria-hidden="true" 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><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><div><hr></div><h2>7. Learn from Real-World Systems</h2><p>Study architectures of systems like Netflix, Facebook, and Google Drive. Analyze how they handle challenges like scaling, high availability, and fault tolerance.</p><blockquote><p><em>&#128161; <strong>Resource Tip:</strong> Check out YouTube channels like <strong>Tech Dummies</strong> and <strong>System Design Simplified</strong> for breakdowns of real-world architectures.</em></p></blockquote><div><hr></div><h2>8. Use Structured Learning Resources</h2><p>Lastly, supplement your learning with curated courses, books, and blogs.</p><ul><li><p><strong>Books:</strong> <a href="https://amzn.to/3nXKaas">&#8220;Designing Data-Intensive Applications&#8221;</a> by Martin Kleppmann or <a href="https://www.amazon.com/System-Design-Interview-insiders-Second/dp/B08CMF2CQF/?tag=javamysqlanta-20">&#8220;System Design Inside Guide&#8221;</a> by Alex Xu</p></li><li><p><strong>Courses:</strong> Alex Xu&#8217;s <strong><a href="https://bit.ly/3P3eqMN">ByteByteGo</a></strong><a href="https://bit.ly/3P3eqMN"> </a>or Exponet <a href="https://bit.ly/3cNF0vw">System Design Course</a></p></li><li><p><strong>Blogs:</strong> Check out articles on Medium, GitHub, and educational platforms like <a href="https://bit.ly/3Mnh6UR">Educative.io</a>.</p></li></ul>
      <p>
          <a href="https://javarevisited.substack.com/p/how-i-would-learn-software-design">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[I’ve Read 20+ Coding Interview Books — Here Are My Top 5 Recommendations for 2026]]></title><description><![CDATA[My Favorite Books to Prepare for Coding Interviews in 2026]]></description><link>https://javarevisited.substack.com/p/ive-read-20-coding-interview-books</link><guid isPermaLink="false">https://javarevisited.substack.com/p/ive-read-20-coding-interview-books</guid><dc:creator><![CDATA[javinpaul]]></dc:creator><pubDate>Sun, 05 Jul 2026 15:32:22 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!GD1e!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c63e31-be1c-4ceb-b4fb-801ad8aa3619_693x894.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://bytebytego.com/?fpr=javarevisited" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GD1e!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c63e31-be1c-4ceb-b4fb-801ad8aa3619_693x894.png 424w, https://substackcdn.com/image/fetch/$s_!GD1e!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c63e31-be1c-4ceb-b4fb-801ad8aa3619_693x894.png 848w, https://substackcdn.com/image/fetch/$s_!GD1e!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c63e31-be1c-4ceb-b4fb-801ad8aa3619_693x894.png 1272w, https://substackcdn.com/image/fetch/$s_!GD1e!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c63e31-be1c-4ceb-b4fb-801ad8aa3619_693x894.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GD1e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c63e31-be1c-4ceb-b4fb-801ad8aa3619_693x894.png" width="725" height="935.2813852813853" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/45c63e31-be1c-4ceb-b4fb-801ad8aa3619_693x894.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:894,&quot;width&quot;:693,&quot;resizeWidth&quot;:725,&quot;bytes&quot;:872523,&quot;alt&quot;:&quot;7 best ByteByteGo books for coding interviews&quot;,&quot;title&quot;:&quot;7 best ByteByteGo books for coding interviews&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://bytebytego.com/?fpr=javarevisited&quot;,&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="7 best ByteByteGo books for coding interviews" title="7 best ByteByteGo books for coding interviews" srcset="https://substackcdn.com/image/fetch/$s_!GD1e!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c63e31-be1c-4ceb-b4fb-801ad8aa3619_693x894.png 424w, https://substackcdn.com/image/fetch/$s_!GD1e!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c63e31-be1c-4ceb-b4fb-801ad8aa3619_693x894.png 848w, https://substackcdn.com/image/fetch/$s_!GD1e!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c63e31-be1c-4ceb-b4fb-801ad8aa3619_693x894.png 1272w, https://substackcdn.com/image/fetch/$s_!GD1e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45c63e31-be1c-4ceb-b4fb-801ad8aa3619_693x894.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 aria-hidden="true" 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><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">credit &#8212; <a href="https://bytebytego.com/?fpr=javarevisited">ByteByteGo</a></figcaption></figure></div><p>Hello guys, seven years ago, <a href="https://bytebytego.com/?fpr=javarevisited">Alex Xu</a> walked away from his job at Twitter with no clear plan for what came next. No flashy startup idea. No big funding round.</p><p>Just time &#8212; and a curiosity about how to help engineers prepare for one of the most intimidating parts of their careers: <strong><a href="https://bytebytego.com/?fpr=javarevisited">system design interviews</a></strong>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://javarevisited.substack.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">Javarevisited Newsletter is a rea&#8230;</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>
          <a href="https://javarevisited.substack.com/p/ive-read-20-coding-interview-books">
              Read more
          </a>
      </p>
   ]]></content:encoded></item></channel></rss>