Skip to main content

Node.js / TypeScript

Weekly Goals​

  • DSA
    • Intensively practice:
      • Arrays & strings.
      • Hash maps & sets.
      • Two pointers & sliding window.
    • Build a pattern-based cheat sheet.
  • Backend/Design
    • Lightly maintain system design/machine coding familiarity (small daily touch).
  • Interview Skills
    • Practice timed problem solving and communication.

Use with:


Weekly Overview Table​

DayFocus
1Arrays & strings – basics & frequency counting
2Arrays & strings – two pointers
3Sliding window – fixed & variable size
4Hash maps & sets – lookup, grouping
5Mixed practice (patterns)
6Timed mixed set (3–4 problems)
7Weekly review & pattern cheat sheet

Day 1 – Arrays & Strings: Basics & Frequency Counting​

4-Hour Plan​

  • Block 1 (Warm-up – 30 min)

    • 2 easy problems to get comfortable (e.g., reverse array, check palindrome).
  • Block 2 (Core Practice – 90 min)

    • 3 medium problems focusing on:
      • Frequency counting.
      • Checking anagrams.
      • Character/word counts.
  • Block 3 (Review – 45–60 min)

    • For each problem:
      • Document pattern and key insight.
  • Block 4 (Light Backend – 30–45 min)

    • Skim notes from system design or machine coding (10–15 min).

6-Hour Plan​

  • Add:
    • Extra problems (60 min):
      • 1–2 more mediums or a hard if you are comfortable.

Day 2 – Arrays & Strings: Two Pointers​

4-Hour Plan​

  • Block 1 (Concepts – 30–45 min)

    • Review two-pointer technique:
      • Left/right pointers on sorted arrays.
      • Partitioning and removing elements in-place.
  • Block 2 (Practice – 90 min)

    • 3 medium two-pointer problems.
  • Block 3 (Review – 45–60 min)

    • Capture the invariant for each problem:
      • What condition are pointers maintaining?
  • Block 4 (Light Backend – 30 min)

    • Skim a system design note or revisit one machine coding design.

6-Hour Plan​

  • Add:
    • Timed problem (30 min):
      • Solve one medium problem under 30 minutes and analyze mistakes.

Day 3 – Sliding Window: Fixed & Variable Size​

4-Hour Plan​

  • Block 1 (Concepts – 30–45 min)

    • Fixed-size vs variable-size windows.
    • Maintaining sum or counts within the window.
  • Block 2 (Practice – 90 min)

    • 3 sliding window problems:
      • 1 fixed-size (e.g., max sum subarray of size k).
      • 2 variable-size (e.g., longest substring with K distinct chars).
  • Block 3 (Review – 45–60 min)

    • Document sliding window template and when it applies.
  • Block 4 (Light Backend – 30 min)

    • 10–15 min reading of rate limiter/caching notes.

6-Hour Plan​

  • Add:
    • Additional sliding window problems (60 min).

Day 4 – Hash Maps & Sets: Lookup & Grouping​

4-Hour Plan​

  • Block 1 (Warm-up – 30 min)

    • 1 easy map/set problem (e.g., check duplicates).
  • Block 2 (Practice – 90 min)

    • 3 medium problems focusing on:
      • Grouping elements (e.g., group anagrams).
      • Counting frequencies.
      • Map-based DP-like patterns (simple).
  • Block 3 (Review – 45–60 min)

    • For each problem, log:
      • How the map/set reduced complexity.
  • Block 4 (Light Backend – 30 min)

    • Quick review of DB indexing or caching.

6-Hour Plan​

  • Add:
    • Extra map/set problem (30–45 min):
      • Slightly more challenging one.

Day 5 – Mixed Pattern Practice​

4-Hour Plan​

  • Block 1 (Mixed Set – 90 min)

    • 3–4 problems:
      • 1 array/string two-pointer.
      • 1 sliding window.
      • 1 hash map/set.
  • Block 2 (Timed Problem – 30–45 min)

    • 1 problem under 30 minutes; treat as interview-style.
  • Block 3 (Review – 45–60 min)

    • Note which pattern you recognized quickly vs slowly.
  • Block 4 (Light Backend – 30 min)

6-Hour Plan​

  • Add:
    • One more timed problem (30 min) and brief self-review.

Day 6 – Timed Mixed Set (3–4 Problems)​

4-Hour Plan​

  • Block 1 (Timed Set – 120 min)

    • Solve a set of 3 medium problems:
      • 1 array/string.
      • 1 sliding window.
      • 1 hash map/two-pointer.
    • Time yourself ~35–40 min per problem.
  • Block 2 (Review – 60 min)

    • For each problem:
      • Check for bugs, complexity, and clarity.
  • Block 3 (Light Backend – 30–45 min)

    • Rehearse explaining one problem’s solution out loud.

6-Hour Plan​

  • Add:
    • Fourth problem (30–45 min) if energy allows.

Day 7 – Weekly Review & Pattern Cheat Sheet​

4-Hour Plan​

  • Block 1 (Review – 60–75 min)

    • Count how many problems solved this week by category.
    • Update dsa-backend-plan.md personal notes.
  • Block 2 (Pattern Cheat Sheet – 60–75 min)

    • Create:
      • Sections for arrays/strings, two pointers, sliding window, hash maps.
      • Include template snippets and bullet points per pattern.
  • Block 3 (Planning – 30–45 min)

    • Skim week-15 (Trees/Graphs/Heaps focus).

6-Hour Plan​

  • Add:
    • Short mock (45–60 min):
      • 2 problems back-to-back, focusing on using the cheat sheet patterns quickly.