<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: anjan-dutta</title>
    <description>The latest articles on DEV Community by anjan-dutta (@anjandutta).</description>
    <link>https://dev.to/anjandutta</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F636935%2Fd696f15f-06c1-4de8-86e7-6075315a3d75.jpg</url>
      <title>DEV Community: anjan-dutta</title>
      <link>https://dev.to/anjandutta</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/anjandutta"/>
    <language>en</language>
    <item>
      <title>What's your biggest interview prep challenge?</title>
      <dc:creator>anjan-dutta</dc:creator>
      <pubDate>Fri, 10 Oct 2025 15:46:20 +0000</pubDate>
      <link>https://dev.to/anjandutta/whats-your-biggest-interview-prep-challenge-2enj</link>
      <guid>https://dev.to/anjandutta/whats-your-biggest-interview-prep-challenge-2enj</guid>
      <description>&lt;p&gt;

&lt;/p&gt;
&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c" class="crayons-story__hidden-navigation-link"&gt;I Failed 5 Coding Interviews Despite Solving 200+ LeetCode Problems — Here's What Fixed It&lt;/a&gt;

  &lt;a href="https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c" class="crayons-story__video"&gt;
    &lt;span class="crayons-story__video__time"&gt;
      00:30
    &lt;/span&gt;
  &lt;/a&gt;

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

          &lt;a href="/anjandutta" class="crayons-avatar  crayons-avatar--l  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F636935%2Fd696f15f-06c1-4de8-86e7-6075315a3d75.jpg" alt="anjandutta profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/anjandutta" class="crayons-story__secondary fw-medium m:hidden"&gt;
              anjan-dutta
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                anjan-dutta
                
              
              &lt;div id="story-author-preview-content-2911778" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/anjandutta" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F636935%2Fd696f15f-06c1-4de8-86e7-6075315a3d75.jpg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;anjan-dutta&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Oct 10 '25&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c" id="article-link-2911778"&gt;
          I Failed 5 Coding Interviews Despite Solving 200+ LeetCode Problems — Here's What Fixed It
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag crayons-tag--filled  " href="/t/showdev"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;showdev&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/webdev"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;webdev&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/career"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;career&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/programming"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;programming&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;6&lt;span class="hidden s:inline"&gt; reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


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

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

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

&lt;/div&gt;




</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>career</category>
      <category>programming</category>
    </item>
    <item>
      <title>Made it free because interview prep is stressful enough!</title>
      <dc:creator>anjan-dutta</dc:creator>
      <pubDate>Fri, 10 Oct 2025 15:45:26 +0000</pubDate>
      <link>https://dev.to/anjandutta/made-it-free-because-interview-prep-is-stressful-enough-29b4</link>
      <guid>https://dev.to/anjandutta/made-it-free-because-interview-prep-is-stressful-enough-29b4</guid>
      <description>&lt;p&gt;

&lt;/p&gt;
&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c" class="crayons-story__hidden-navigation-link"&gt;I Failed 5 Coding Interviews Despite Solving 200+ LeetCode Problems — Here's What Fixed It&lt;/a&gt;

  &lt;a href="https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c" class="crayons-story__video"&gt;
    &lt;span class="crayons-story__video__time"&gt;
      00:30
    &lt;/span&gt;
  &lt;/a&gt;

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

          &lt;a href="/anjandutta" class="crayons-avatar  crayons-avatar--l  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F636935%2Fd696f15f-06c1-4de8-86e7-6075315a3d75.jpg" alt="anjandutta profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/anjandutta" class="crayons-story__secondary fw-medium m:hidden"&gt;
              anjan-dutta
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                anjan-dutta
                
              
              &lt;div id="story-author-preview-content-2911778" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/anjandutta" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F636935%2Fd696f15f-06c1-4de8-86e7-6075315a3d75.jpg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;anjan-dutta&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Oct 10 '25&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c" id="article-link-2911778"&gt;
          I Failed 5 Coding Interviews Despite Solving 200+ LeetCode Problems — Here's What Fixed It
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag crayons-tag--filled  " href="/t/showdev"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;showdev&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/webdev"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;webdev&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/career"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;career&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/programming"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;programming&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;6&lt;span class="hidden s:inline"&gt; reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


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

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

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

&lt;/div&gt;




</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>career</category>
      <category>programming</category>
    </item>
    <item>
      <title>I Failed 5 Coding Interviews Despite Solving 200+ LeetCode Problems — Here's What Fixed It</title>
      <dc:creator>anjan-dutta</dc:creator>
      <pubDate>Fri, 10 Oct 2025 13:57:47 +0000</pubDate>
      <link>https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c</link>
      <guid>https://dev.to/anjandutta/i-failed-5-coding-interviews-despite-solving-200-leetcode-problems-heres-what-fixed-it-4f5c</guid>
      <description>&lt;p&gt;Hey devs!&lt;/p&gt;

&lt;p&gt;If you're grinding through coding interviews, you've probably been there: solving problem after problem on LeetCode, feeling prepared, only to blank out when it matters. That's exactly what happened to me. I crushed over 200 problems, but bombed five interviews in a row. The issue? Not lack of practice, but terrible retention.&lt;/p&gt;

&lt;p&gt;In this post, I'll break down why one-and-done grinding fails, the science behind better learning, and the tool I built to automate it all. Let's dive in.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Forgetting Curve: Why Your Brain Betrays You
&lt;/h2&gt;

&lt;p&gt;Your brain isn't a hard drive — it forgets fast. According to the Ebbinghaus forgetting curve, we lose about 70% of new information within 24 hours if we don't review it. I was solving problems daily, but by interview time, most of that knowledge evaporated.&lt;/p&gt;

&lt;p&gt;Think about it: Cramming 200 problems might give you a temporary boost, but without reinforcement, patterns like dynamic programming or graph traversals fade. In interviews, I could recognize the problem type but forgot the edge cases or optimizations. One-and-done practice = guaranteed forgetting.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Solution: Spaced Repetition
&lt;/h2&gt;

&lt;p&gt;Enter spaced repetition — a proven technique where you review material at increasing intervals to combat forgetting. It's like this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Day 1: Learn/solve&lt;/li&gt;
&lt;li&gt;Day 3: Quick review&lt;/li&gt;
&lt;li&gt;Week 1: Deeper dive&lt;/li&gt;
&lt;li&gt;Week 2: Test yourself&lt;/li&gt;
&lt;li&gt;Month 1: Solidify&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is the same method med students use for anatomy or pharmacology. Studies show it can boost retention by 200-300% compared to massed practice. For coding, it means turning fleeting "aha" moments into automatic pattern recognition.&lt;/p&gt;

&lt;p&gt;I needed this for DSA prep, but tracking reviews manually across LeetCode was a nightmare. So, I built my own system.&lt;/p&gt;

&lt;h2&gt;
  
  
  Introducing DSAPrep: Automated Spaced Repetition for LeetCode
&lt;/h2&gt;

&lt;p&gt;I created DSAPrep.dev — a free web app that integrates spaced repetition directly into your LeetCode workflow. No more spreadsheets or forgotten reviews; it handles the scheduling for you.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Features
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Mark Problems Complete:&lt;/strong&gt; Link your LeetCode solves and flag them done in one click.&lt;br&gt;
&lt;strong&gt;Auto-Scheduled Reviews:&lt;/strong&gt; The app uses algorithms to schedule reviews at optimal intervals based on Ebbinghaus principles.&lt;br&gt;
&lt;strong&gt;Adaptive Difficulty:&lt;/strong&gt; Rate how tough a problem felt (easy/medium/hard), and it adjusts intervals — struggle more? Review sooner.&lt;br&gt;
&lt;strong&gt;Daily Dashboard:&lt;/strong&gt; Log in to see exactly what's due today. Solve, review, repeat.&lt;br&gt;
&lt;strong&gt;Progress Tracking:&lt;/strong&gt; Visualize retention with stats on completed reviews and mastery levels.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;It's seamless:&lt;/strong&gt; Solve on LeetCode, log in DSAPrep, and let it manage the rest. No manual tracking required.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech Stack
&lt;/h2&gt;

&lt;p&gt;Built with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; React for a responsive, interactive UI.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend:&lt;/strong&gt; Node.js for handling scheduling logic and user data.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Database:&lt;/strong&gt; MongoDB for storing problem logs, schedules, and ratings.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I made it free because interview prep is stressful enough without paywalls.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Results: From 30% to 85% Retention
&lt;/h2&gt;

&lt;p&gt;Before DSAPrep: 200+ problems solved, but retention hovered around 30%. Interviews felt like starting over.&lt;br&gt;
After: Focused on 80 problems with spaced reviews. Retention jumped to ~85% (self-tracked via mock interviews). Patterns like two-pointer techniques or binary search trees became second nature.&lt;/p&gt;

&lt;p&gt;The difference? In one interview, a tricky sliding window problem popped up — I'd reviewed it just a week prior via DSAPrep. Nailed it without panic.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why This Works for Any Dev
&lt;/h2&gt;

&lt;p&gt;Spaced repetition isn't magic; it's science-backed efficiency. If you're prepping for FAANG or startups, this shifts you from quantity to quality. Less burnout, more confidence.&lt;/p&gt;

&lt;p&gt;Try it out at &lt;a href="https://dsaprep.dev" rel="noopener noreferrer"&gt;https://dsaprep.dev&lt;/a&gt;. Open to feedback — bug reports, feature ideas (like integration with other platforms), or even collab requests.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Your Biggest Interview Prep Challenge?
&lt;/h2&gt;

&lt;p&gt;Retention? Nerves? System design? Drop a comment below — let's chat and level up together. Happy coding! 🚀&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>career</category>
      <category>programming</category>
    </item>
    <item>
      <title>I Built a Free Tracker to Filter Leetcode Questions by Company</title>
      <dc:creator>anjan-dutta</dc:creator>
      <pubDate>Mon, 14 Apr 2025 17:13:35 +0000</pubDate>
      <link>https://dev.to/anjandutta/i-built-a-free-tracker-to-filter-leetcode-questions-by-company-24c5</link>
      <guid>https://dev.to/anjandutta/i-built-a-free-tracker-to-filter-leetcode-questions-by-company-24c5</guid>
      <description>&lt;p&gt;I built this to make DSA prep less overwhelming, especially when targeting companies.&lt;/p&gt;

&lt;p&gt;link → &lt;a href="https://dsaprep.dev" rel="noopener noreferrer"&gt;https://dsaprep.dev&lt;/a&gt;&lt;/p&gt;

</description>
      <category>leetcode</category>
      <category>interviewprep</category>
      <category>webdev</category>
      <category>showdev</category>
    </item>
    <item>
      <title>🚀 I Built A Tool to Filter Recent Leetcode Interview Questions by Company</title>
      <dc:creator>anjan-dutta</dc:creator>
      <pubDate>Thu, 10 Apr 2025 03:54:22 +0000</pubDate>
      <link>https://dev.to/anjandutta/i-built-a-tool-to-filter-recent-leetcode-interview-questions-by-company-4n43</link>
      <guid>https://dev.to/anjandutta/i-built-a-tool-to-filter-recent-leetcode-interview-questions-by-company-4n43</guid>
      <description>&lt;p&gt;Hey Dev community! 👋&lt;br&gt;
I recently launched a small project that came out of my own interview prep frustrations — it’s called dsaprep.dev, and it lets you filter LeetCode questions actually asked by top tech companies like Google, Amazon, Meta, and more.&lt;/p&gt;

&lt;h2&gt;
  
  
  😵 Why I Built It
&lt;/h2&gt;

&lt;p&gt;I’m a full-time software engineer, and like many of you, I’ve been through the grind of LeetCode prep while balancing a day job and personal life.&lt;/p&gt;

&lt;h2&gt;
  
  
  The biggest pain point?
&lt;/h2&gt;

&lt;p&gt;Not knowing what to focus on.&lt;/p&gt;

&lt;p&gt;There are thousands of LeetCode problems, but most interviews ask the same ~200-300 repeatedly. I wanted a way to cut the noise and just focus on the ones that matter — the ones companies are actually asking now.&lt;/p&gt;

&lt;h2&gt;
  
  
  🛠️ What It Does
&lt;/h2&gt;

&lt;p&gt;At dsaprep.dev, you can:&lt;/p&gt;

&lt;p&gt;✅ Filter LeetCode questions by company (Google, Amazon, Meta, etc.)&lt;/p&gt;

&lt;p&gt;📆 Choose questions by timeframe (last 3 months, 6 months, 1 year)&lt;/p&gt;

&lt;p&gt;📊 Sort by difficulty, frequency, and tags&lt;/p&gt;

&lt;p&gt;🌓 Use it in light or dark mode (your eyes will thank you)&lt;/p&gt;

&lt;p&gt;All based on real data from recent interview reports and GitHub repos.&lt;/p&gt;

&lt;h2&gt;
  
  
  💡 Why It Might Help You
&lt;/h2&gt;

&lt;p&gt;If you’re:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Prepping for FAANG / top tech interviews&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tired of solving random questions without knowing if they’re relevant&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Working full-time and want to make the most of your prep time&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;This tool was literally made for you.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  📈 What’s Next
&lt;/h2&gt;

&lt;p&gt;I’m planning a Product Hunt launch soon and actively adding features like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Sign-in &amp;amp; bookmarking&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Personalized problem sets&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Mock interview builder&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Community-sourced question updates&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  🙏 Feedback Welcome
&lt;/h2&gt;

&lt;p&gt;I’d love your feedback, ideas, or even bug reports.&lt;br&gt;
If this helps even a few of you save time and prep smarter, it’s a win.&lt;/p&gt;

&lt;p&gt;👉 Check it out: &lt;a href="https://dsaprep.dev" rel="noopener noreferrer"&gt;dsaprep.dev&lt;/a&gt;&lt;br&gt;
💬 Drop your thoughts in the comments — happy to connect!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Remove duplicates from an unsorted linked list without using any extra space [Javascript]</title>
      <dc:creator>anjan-dutta</dc:creator>
      <pubDate>Mon, 19 Aug 2024 07:20:48 +0000</pubDate>
      <link>https://dev.to/anjandutta/remove-duplicates-from-an-unsorted-linked-list-without-using-any-extra-space-javascript-4a69</link>
      <guid>https://dev.to/anjandutta/remove-duplicates-from-an-unsorted-linked-list-without-using-any-extra-space-javascript-4a69</guid>
      <description>&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// defining a linked list 
let LL = {data: 1, next: {data: 2, next: {data: 3, next: {data: 1, next: {data: 2, next: {data: 5, next: {data:1, next: null}}}}}}};

let HEAD = LL;

while(HEAD != null) {
    let HEAD2 = HEAD;
    while( HEAD2.next != null) {
        if(HEAD.data == HEAD2.next.data) {
            HEAD2.next = HEAD2.next.next;
        } else {
            HEAD2 = HEAD2.next;
        }
    }
    HEAD = HEAD.next;
}

console.log(LL);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>dsa</category>
      <category>algorithms</category>
      <category>webdev</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Remove duplicates from an unsorted linked list [JavaScript]</title>
      <dc:creator>anjan-dutta</dc:creator>
      <pubDate>Mon, 19 Aug 2024 05:21:04 +0000</pubDate>
      <link>https://dev.to/anjandutta/remove-duplicates-from-an-unsorted-linked-list-javascript-3f5o</link>
      <guid>https://dev.to/anjandutta/remove-duplicates-from-an-unsorted-linked-list-javascript-3f5o</guid>
      <description>&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// defining a linked list using nested object
let LL = {data: 1, next: {data: 2, next: {data: 3, next: {data: 1, next: {data: 2, next: {data: 5, next: null}}}}}};

let buffer = []; // an empty buffer to store values and check duplicates 
let HEAD = LL;  // pointing to top of the linked list.
let prev = null; // to store previous node 

while(HEAD != null) {
    if(buffer.indexOf(HEAD.data)&amp;gt;-1) {
        prev.next = HEAD.next;
    } else {
        buffer.push(HEAD.data);
        prev = HEAD;
    }
HEAD = HEAD.next;
}

console.log(LL);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>dsa</category>
      <category>javascript</category>
      <category>algorithms</category>
      <category>webdev</category>
    </item>
    <item>
      <title>My online HTML editor in action</title>
      <dc:creator>anjan-dutta</dc:creator>
      <pubDate>Wed, 19 Jun 2024 07:37:45 +0000</pubDate>
      <link>https://dev.to/anjandutta/my-online-html-editor-in-action-19pf</link>
      <guid>https://dev.to/anjandutta/my-online-html-editor-in-action-19pf</guid>
      <description>&lt;p&gt;Proud moment for me :)&lt;/p&gt;

&lt;p&gt;Here is a link for you to try out &lt;a href="https://www.freecodecompiler.com/html-editor"&gt;https://www.freecodecompiler.com/html-editor&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let me know what you think.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>javascript</category>
      <category>programming</category>
    </item>
    <item>
      <title>List of FAANG front-end coding questions.</title>
      <dc:creator>anjan-dutta</dc:creator>
      <pubDate>Tue, 18 Jun 2024 14:54:22 +0000</pubDate>
      <link>https://dev.to/anjandutta/list-of-faang-front-end-coding-questions-448d</link>
      <guid>https://dev.to/anjandutta/list-of-faang-front-end-coding-questions-448d</guid>
      <description>&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Star Rating&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Design Pop Over&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Design Accordion &lt;code&gt;(Amazon onsite)&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Design Carousel&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Design grid using HTML/CSS and Javascript with search and sort, event bubbling (Amazon onsite)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Design NavBar&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Infinite Scroll&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Typeahead / autocomplete using trie&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement Debounce function&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement tic tac toe&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Make snake ladder board&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Make calendar of any Month like Date Picker&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement throttle function&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement custom Higher Order Functions like Map, Reduce, Filter, Sort &lt;code&gt;(Amazon Phone Interview)&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create an analog clock&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Make a todo list&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create functionality to change all text on page to different translations&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Build a calculator (add/subtract/multiply/divide/log/pow)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Search and display Giphy images (through Giphy api) in responsive format&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Build Connect Four&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement Nested Checkboxes (parent is checked, children are checked and vice versa. Must use actual checkbox input)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement a poll widget&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement Event Emitter&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement promise.all function&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Flatten nested Javascript Array without using Array.prototype.flat()&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement Sort() function.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement promise.all function&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;LRU Cache &lt;code&gt;(Netflix onsite)&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Make snake ladder board&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Make calendar of any Month&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement throttle function&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement an event emitter&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement a hashtable&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create an analog clock&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Make a todo list&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Build Connect Four&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement Material UI Chips with auto-suggest &lt;code&gt;(Amazon SDE I)&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;When sending an e-mail, auto-suggest people and convert them into a chip with their avatar on the right&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement a Carousel&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Show default if the image doesn't exist. Prefetch the images.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Inversion of Object&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Given an object make the keys as values and values as keys.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Recursively destructure if the type of value is an object&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Write Throttle function without the use &lt;code&gt;setTimeout()&lt;/code&gt; and &lt;code&gt;clearTimeout()&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create a "Select" component using HTML + CSS + js.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implement reusable table component.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  I will publish code/solutions to all of the above questions gradually. Follow me here for my future article updates.
&lt;/h2&gt;

</description>
      <category>interview</category>
      <category>frontend</category>
      <category>coding</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Made an online HTML editor</title>
      <dc:creator>anjan-dutta</dc:creator>
      <pubDate>Mon, 17 Jun 2024 13:28:07 +0000</pubDate>
      <link>https://dev.to/anjandutta/made-an-online-html-editor-mji</link>
      <guid>https://dev.to/anjandutta/made-an-online-html-editor-mji</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F13mdf4n45vdhzescst0i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F13mdf4n45vdhzescst0i.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Okay, so this is the latest addition to my side project. I made an HTML editor. To be honest, it was not that hard but it was special!&lt;/p&gt;

&lt;p&gt;I enjoyed the magical moment when I first saw my html code rendering in the preview window, that too in real-time. I know it's not a big deal for many but for me it feels like the completion of a long awaited thing. The last one(at least for now) that the project needed. Along with that, I can save my code snippets and share with others. Very much excited because I can showcase and share excellent web snippets from now on. &lt;/p&gt;

&lt;p&gt;Yes, and now I feel like I have added fairly good number of programming language support. &lt;/p&gt;

&lt;p&gt;People often ask, what do I have different than jsFiddle or Pastebin. My answer to that is "simplicity". See, most of my traffic is organic and I am not doing any paid promotion so far, I don't run ads and till now I am spending my own money to run this &lt;a href="https://www.freecodecompiler.com" rel="noopener noreferrer"&gt;side project&lt;/a&gt;. The biggest payback for me is seeing people using my product, they are saving code snippets, registering themselves, maybe for their school project or practicing code; who knows... what matters is all of this with no major differentiator and I'm loving it this way.&lt;/p&gt;

&lt;p&gt;There are plans for more developer friendly front-end and backend interview related features. Looking for more ways to simplify the dev journey.&lt;/p&gt;

</description>
      <category>html</category>
      <category>webdev</category>
      <category>javascript</category>
      <category>beginners</category>
    </item>
    <item>
      <title>The free code compiler found one more purpose</title>
      <dc:creator>anjan-dutta</dc:creator>
      <pubDate>Sun, 29 Oct 2023 20:07:26 +0000</pubDate>
      <link>https://dev.to/anjandutta/the-free-code-compiler-found-one-more-purpose-1ehd</link>
      <guid>https://dev.to/anjandutta/the-free-code-compiler-found-one-more-purpose-1ehd</guid>
      <description>&lt;p&gt;I still remember moments from the early days of my web development journey. It was early 2009 and many of you would correlate that the whole concept of serving video over the web was starting to get momentum.&lt;/p&gt;

&lt;p&gt;There were barely any video based learning platform that I knew of back then. But there were some great blogs around. Couple of them I remember are davidwalsh’s blog and w3schools.&lt;/p&gt;

&lt;p&gt;Every night, before goin to bed, I used to learn and practice HTML and CSS on w3schools. Maybe two or three simple CSS properties everyday, but I used to enjoy those a lot.&lt;/p&gt;

&lt;p&gt;Being able to understand how a webpage works on a browser and more over, how to design a webpage was very exciting topic for me. But the best part was I used to practice those from my phone. I didn’t have a PC back then, instead I owned a Motorola SLVR L7.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--LnepQnkA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lupxin1vispj990ut6yj.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--LnepQnkA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lupxin1vispj990ut6yj.jpg" alt="Please contact for photo credit" width="704" height="554"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Photo taken from the web. Please reach out for photo credit.&lt;br&gt;
I know it was difficult, but w3schools and their eternal Try It editor was the reason I was able to execute CSS code from that 1.9 inch display. It’s been a long time since then (Man, I feel old!).&lt;/p&gt;

&lt;p&gt;A lot has changed over the years, there are great learning tools available in the market. But one thing I see that didn’t change much are the static code blocks in countless blogs over the Internet.&lt;/p&gt;

&lt;p&gt;Learning from videos are great but come on, you can’t copy code from the videos! So either you have to madly pause and type and execute your code or gather notes to try things on your own later. That’s a lot of work, we don’t have time for that.&lt;/p&gt;

&lt;p&gt;I feel that blogs/web articles are still one step ahead if you want to learn coding. At least you don’t need to run behind content. You can look at the content and focus on part of code, right? But it lacks interactivity and excitement.&lt;/p&gt;

&lt;p&gt;I am not saying there are no interactive coding platforms available, there are many. But majority of tech blogs are not interactive when it comes to executing the code part. What would you do if you wish to execute that code? Most of us will need a set-up to run that.&lt;/p&gt;

&lt;p&gt;Of course there are online code compilers available. But still, you have to move from one page to another and come back. Same problem I faced with W3schools back then and I used to lose track a lot, because till date, the TryIt editor opens in a new tab.&lt;/p&gt;

&lt;p&gt;Being a learner, wouldn’t it be great if you could edit and execute the code block in place? This is what I believe is called interactive (and there could be more).&lt;/p&gt;

&lt;p&gt;So, I tried. To make learning more engaging, I have integrated freecodecompiler into my first &lt;a href="https://www.freecodecompiler.com/blog/python-programming"&gt;Beginner’s Python blog series&lt;/a&gt;. I believe it will help a lot of people as it is mobile friendly as well. This is the best part that you can run the code then and there. I believe making things a bit hassle free can help people in a huge way. Please check it out and let me know if you like my idea. Happy coding!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bg9l_hUC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4ovtox1zv21ro378ix35.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bg9l_hUC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4ovtox1zv21ro378ix35.png" alt="Image description" width="800" height="442"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is how it looks!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>newbie</category>
      <category>learning</category>
      <category>python</category>
    </item>
    <item>
      <title>My side project is costing me too much</title>
      <dc:creator>anjan-dutta</dc:creator>
      <pubDate>Thu, 26 Oct 2023 18:56:27 +0000</pubDate>
      <link>https://dev.to/anjandutta/my-side-project-is-costing-me-too-much-d5f</link>
      <guid>https://dev.to/anjandutta/my-side-project-is-costing-me-too-much-d5f</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjf4aankvct9m0xep1clo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjf4aankvct9m0xep1clo.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I run a side project &lt;a href="https://freecodecompiler.com" rel="noopener noreferrer"&gt;https://freecodecompiler.com&lt;/a&gt;. As the domain states, it is an online code compiler for multiple programming languages. Recently it has completed it’s month anniversary and so did the AWS billing. To be honest, while setting up the infra, I was expecting a cost like this. Though it’s not too high but for a side project of this scale, where there is no business value attached, it is a bit high.&lt;/p&gt;

&lt;p&gt;Majority of this cost is coming from the API server that runs on t2 micro instance and has a load balancer associated with it. Also the load balancer was costing more than the ec2 instance cost. Last month the load balancer costed around $16 alone where as the instance cost was around $9.&lt;/p&gt;

&lt;p&gt;I hate to acknowledge that the load balancer was only being used to route the https traffic to a specific port. Since ACM certificates do not support EC2 instances so I had to use LB to enable SSL on ec2 instance.&lt;/p&gt;

&lt;p&gt;But there was always a “what if” in my mind. And I took a shot last weekend. The load balancer was enforcing SSL on the EC2 instance from outside but since it (LB) accounted for majority of the billing amount so I thought of cutting it off completely.&lt;/p&gt;

&lt;p&gt;I chose the traditional way of installing SSL instead of enforcing it. Installed letsencrypt cert directly on the ec2 instance and bingo! Of course I had to install the apache proxy and a few tweaks but overall it did the job. Now I am expecting it should reduce the cost by one third of what it was previously. And I will look forward to reduce it more.&lt;/p&gt;

&lt;p&gt;Also I have to periodically update the cert on server, not sure how I can automate it. But I am satisfied with this solution.&lt;/p&gt;

&lt;p&gt;Do you guys have similar experience? Please suggest if you have any tips to reduce AWS ec2 billing and how to automate updating of letsencrypt cert expiry date. It will be a big help!&lt;/p&gt;

&lt;p&gt;Until then, I will come up with some new update next week!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>devops</category>
      <category>aws</category>
      <category>ec2</category>
    </item>
  </channel>
</rss>
