Digital Garden
A collection of my notes, thoughts, and writings. These are public notes directly synced from my Obsidian vault on GitHub.
Annual Review 2026
One paragraph summary of 2026. Goal Result Notes ---------------------
November 2026 — Monthly Tracker
Final week. Accept offer. Light review only. Coast mode. → Current week: [[Coach/projectcurrentweek]] → Full curriculum: [[Coach/projectdsasdcurriculum]] --- - [ ] Final offer comparison (CTC + role +
Resume Defense Guide
Line-by-line defense of [[Interview Prep/Resume/Resume2026.texResume2026]] (Oct 2026 version). For every resume line: the 30-second pitch, the questions you'll get, what to say, and the traps — the fo
Master's Degree Options
Researched 2026-10-05. Question: is a master's worth it given my profile and the AI landscape, which program, where, and what's value for money? Fees change every year; re-check before applying. Profi
LLM Frontier Learning Path
What to watch/read after [[Karpathy - Deep Dive into LLMs]], to understand where LLMs are now: agents (goal → tasks → loop), agent graphs, reasoning models, multimodal models, Jev / System One models.
Design a ChatGPT-style Assistant
streaming · context management · GPU serving · safety Functional: multi-turn text chat, streamed responses, history across devices, regenerate/edit, thumbs feedback. Optional: file upload, web search,
Design a Code Assistant
fill-in-the-middle · repo context · request cancellation · security Two features: inline completions while typing (p95 < 300 ms) and a chat panel that explains/edits code across the repo. Enterprise:
Design an Enterprise RAG Q&A System
ingestion · hybrid retrieval · permissions · citations Companion: [[RAG & LLM System]] (older, shorter HLD page). Functional: employees ask questions over Confluence, Google Drive, Slack, Jira. Answer
Design an LLM Gateway
multi-provider · token quotas · semantic cache · observability Classic cousins: [[API Gateway]], [[Rate Limiter]]. 200 internal teams call several LLM providers + self-hosted models. One platform: uni
Design Smart Compose
latency budget · small models · personalization · privacy Classic cousin: [[Typeahead - Autocomplete]]. Suggest the rest of the current phrase inline while typing; accept with Tab. End-to-end < 100 ms
Design a Customer-Support Agent with Tools
tool calling · agent loop · human in the loop · prompt injection Pre-read: Building Effective AI Agents (Anthropic). E-commerce bot: answers policy questions, looks up orders, changes delivery address
Design a Text-to-Image Service
diffusion · async jobs · GPU queueing · content safety Prompt → 4 images at 1024×1024 within 15 s. 5M images/day. Block unsafe prompts and outputs, watermark every image, keep 30 days. Latent diffusio
GenAI Capacity Math
Four formulas cover most estimation questions. Order-of-magnitude only; say assumptions aloud. Classic estimation: [[Back-of-Envelope Estimation]]. memory ≈ parameters × bytes per parameter 70B @ fp16
GenAI SD Framework
Same skeleton as a classic SD round ([[SD Interview Framework & Pitfalls]]), with three GenAI additions: model choice, context construction, evaluation. 1. Clarify product and scope (5 min). Who uses
GenAI SD Question Bank
Short questions that come up between or inside design rounds. Answer aloud before reading the answer. 1. RAG or fine-tuning: how do you choose? RAG for knowledge that changes, must be cited, or is per
GenAI Vocabulary
Know a one-line definition + one trade-off for each. Deeper theory: [[Learning/AI & ML/LLM Fundamentals]], [[Learning/AI & ML/Karpathy - Deep Dive into LLMs]]. Term Definition / trade-off ------ T
Vector Quantization
One line: store numbers with fewer bits (fp32 → int8 / 1 bit / short code). Lose a little precision, gain a lot of memory and speed. Two places it shows up in GenAI systems: - Model weights: fp16 → in
GenAI System Design — Index
The "design an LLM-powered system" round, at senior SDE level. You put a model inside a production system; you are not asked to train one. Original content written as a free alternative to ByteByteGo'
Karpathy — Deep Dive into LLMs like ChatGPT
Source: Andrej Karpathy, YouTube, 3h31m (Feb 2025) · Notes built from the full transcript. Goal of video: mental models for what ChatGPT is — how it's built (3 training stages) and its "psychology" (w
October 2026 — Monthly Tracker
DP revision + mixed hards + mock SD interviews. Stack competing offers, negotiate. Target: 2 offers in hand by W23. → Current week: [[Coach/projectcurrentweek]] → Full curriculum: [[Coach/projectdsasd
Remote 40 LPA Crash Course
Live site (interactive — plan checkboxes + "applied" toggles save to browser localStorage only): https://claude.ai/artifact/QZR4vxA1GYLARB28LTXyKQ Goal shift (2026-10-01): user asked to target remote
September 2026 — Monthly Tracker
NO new DSA topics — revision only. Re-solve hardest problems by pattern. SD continues. Active onsites + first offer expected. → Current week: [[Coach/projectcurrentweek]] → Full curriculum: [[Coach/pr
Week 12 — Aug 10–15, 2026 — Bit Manipulation + Sprint Close
Final sprint week (6 days). Last DSA bucket + finish SD theory + last SD problem. Aug 15 = flip to APPLY mode. Timer on, solo. → Curriculum: [[Coach/projectdsasdcurriculum]] Coach state: [[synthesis/
Week 11 — Aug 3–9, 2026 — Intervals + Math & Geometry
14 problems. Redis playlist finishes this week. Timer on, solo. → Curriculum: [[Coach/projectdsasdcurriculum]] Coach state: [[synthesis/Coach Hub]] --- - [ ] 14 DSA problems on time, solo - [ ] SD pr
August 2026 — Monthly Tracker
NeetCode 150 done by Aug 30 (first pass). Greedy → Intervals → Math → Bit Manipulation. SD: 4 more problems. First offer realistic by W15. → Current week: [[Coach/projectcurrentweek]] → Full curriculu
Behavioral & Past Projects — Index
Everything for behavioral rounds and "tell me about a project" — merged 2026-07-29 from the old separate Interview Questions/ and Work Reference/ folders. Page Summary --------------- [[Resume Def
DSA — Index
Flat folder — everything you need is one level down, no sub-folder hunting. Study order: Big O → Techniques 01-18, in order (the numbered files are the primary track, paired with NeetCode). Data-struc
Interview Prep Dashboard
The one file to open. Everything else is reference — this is the daily-use view. Updated after every retro/scorecard. 🎯 Interactive web version: https://claude.ai/code/artifact/8f287e7a-d0e4-48ff-8e4
Application Tracker
Empty until applications start (per plan: apps deferred until DSA/SD sprint is done — see [[Interview Prep/Dashboard]] for the current date). Fill this in row by row as you apply — don't batch it up a
Job Switch — Index
Page Summary --------------- [[30 Company Target List]] 50 companies, 3 tiers, referral-first apply order [[Remote 40 LPA Crash Course]] Active Oct 2026 — remote 40 LPA pivot: 31-day crash cour
Main Plan
The strategy layer — goal, budget, hours, funnel math. Changes rarely. For current state (what week it is, what's next) see [[Interview Prep/Coach]]. For today see [[Interview Prep/Dashboard]]. For th
August 2026 — Monthly Plan
Starts Jul 29 (the DSA restart) rather than Aug 1 — no reason to throw away 3 days waiting for a calendar boundary. Runs through Aug 31. → Live day-to-day: [[Interview Prep/Dashboard]] Full history:
Monthly Plan — Index
Replaces the old Monthly Tracker/ (pre-built for all 7 months back in March under a plan that got replaced Jun 21 — never updated after, archived to Archive/Superseded Trackers 2026-07-29/). New rule:
Week 06 RESTART — Jul 29–Aug 4, 2026 — Backtracking
Restart after a 4-week DSA stall (old W06-W10 trackers superseded, archived to Archive/Superseded Trackers 2026-07-29/). Last verified pattern done: Tries + Heap (W05, Jun 28). This is Day 1 of the ne
AI & ML — Index
Read order: Karpathy Deep Dive (mental models, video) → LLM Frontier Learning Path (what next) → LLM Fundamentals (theory) → Langchain (framework) → MCP (protocol). Cross-domain synthesis (positioning
AWS — Index
Read order: IAM (security model first) → compute (EC2/Lambda) → storage (S3) → networking (VPC) → data (RDS/Data Engineering) → messaging (SQS/SNS) → observability (CloudWatch). --- Page Summary --
FrontEnd — Index
Read order: JavaScript core → DOM → TypeScript → React → Frontend System Design (machine coding) → interview Q&A → WebdriverIO (work-tool reference). For interview-curated machine-coding depth (Typeah
Go — Index
Read order: syntax basics → core types → control/functions → memory & structs → concurrency → tooling & idioms. For interview-specific Go concurrency depth (GMP scheduler, race conditions, goroutine l
Python — Index
Read order: core language → OOP → decorators → libraries → interview Q&A → project. For interview-curated depth (GIL/concurrency decision framework, gotchas cheat sheet), see [[Interview Prep/Intervie
SQL — Index
Read order: Basics → JOINs → Aggregates → Subqueries & CTEs → Window Functions → Set Operations → Pivoting → Indexes & Performance → Transactions → String/Date → DDL/Constraints → Views/Procs/Triggers
Life — Index
Cross-cutting personal planning and logging that isn't interview prep, finance, or a side project. Page Summary --------------- [[Life/Goals/2026 Goals]] Annual theme + top goals across career/fi
Projects — Index
Personal side projects (distinct from Interview Prep/Coach & Tracking/Projects Done.md, which is work/production project history used as interview war-story source). Page Summary --------------- [
Week 10 — Jul 27–Aug 2, 2026 — 2-D Dynamic Programming
11 problems, the hardest bucket. Timer on, solo. Expect this week to bleed time — that's normal. → Curriculum: [[Coach/projectdsasdcurriculum]] Coach state: [[synthesis/Coach Hub]] --- - [ ] 11 DSA p
ACID & Database Transactions
A transaction is a group of reads/writes treated as one indivisible unit. ACID is the four guarantees a transactional database (Postgres, MySQL/InnoDB, Oracle) makes about that unit. This is the vocab
Bloom Filters
A space-efficient probabilistic set answering one question: "is this element possibly in the set, or definitely not?" It can say "definitely not" or "probably yes" — never a false negative, sometimes
Storage Engines & Indexing
Under "which database?" ([[SQL vs NoSQL]]) sits a deeper question senior interviewers push into: how does it store bytes on disk, and why is it fast for your access pattern? The answer is the storage
Week 09 — Jul 20–26, 2026 — 1-D Dynamic Programming
12 problems. DP = the make-or-break bucket. Theory block first. Timer on, solo. → Curriculum: [[Coach/projectdsasdcurriculum]] Coach state: [[synthesis/Coach Hub]] --- - [ ] 12 DSA problems on time,
Back-of-Envelope Estimation
Capacity math is step 2 of every HLD ([[SD Interview Framework & Pitfalls]]). Point isn't a precise number — it's justifying architecture. "Writes fit on one Postgres box" vs "writes need sharding + a
Week 08 — Jul 13–19, 2026 — Advanced Graphs + Greedy
14 problems. Timer on, solo, no peek till timer expires. → Curriculum: [[Coach/projectdsasdcurriculum]] Coach state: [[synthesis/Coach Hub]] --- - [ ] 14 DSA problems on time, solo - [ ] SD problem:
Week 07 — Jul 6–12, 2026 — Graphs (BFS/DFS)
Heaviest DSA week (13). Timer on, solo, no peek till timer expires. → Curriculum: [[Coach/projectdsasdcurriculum]] Coach state: [[synthesis/Coach Hub]] --- - [ ] 13 DSA problems on time, solo - [ ] S
Go Channels
What: make(chan T) — capacity 0; every send blocks until a receiver is ready and vice versa. It's a synchronization point, not a queue. Syntax/Signature: ch := make(chan int); send ch <- v; receive v
Go Concurrency Patterns
What: A fixed set of N goroutines consuming from a shared jobs channel — bounds concurrency and memory regardless of input size. Syntax/Signature: jobs chan In + results chan Out + sync.WaitGroup (or
Go Context & Cancellation
What: The standard mechanism for propagating cancellation, deadlines, and request-scoped values down a call tree. Cooperative: work stops only where code checks ctx.Done(). Syntax/Signature: ctx, canc
Go Data Structure Internals
What: An array [N]T is a fixed-size value (copied on assignment). A slice is a 3-word header {ptr T, len, cap int} viewing a backing array — copying a slice copies the header, aliasing the data. Synta
Go Embedding & Dependency Injection
What: Placing a type name (not a named field) inside a struct or interface promotes its methods/fields to the outer type. Composition, not inheritance — there is no virtual dispatch back to the outer
Go Error Handling
What: Wrapping preserves an error chain while adding context; Is walks the chain comparing to a target value, As walks it looking for a target type, Join (1.20+) aggregates multiple errors into a tree
Go Goroutine Leaks
What: A goroutine blocked forever (channel op, lock, or infinite loop) with no termination path. Each leak pins its stack and everything reachable from it; leaks accumulate in servers until OOM. Synta
Go Goroutines & Scheduling
What: A goroutine is a runtime-managed, cheaply-created unit of execution (2 KB initial stack, grows/shrinks dynamically) multiplexed onto OS threads by Go's scheduler. Syntax/Signature: go f(args) —
Go Interface Internals
What: A type satisfies an interface if its method set contains every method of the interface — no implements keyword, checked structurally at compile time at the point of conversion/assignment. Syntax
Go Race Conditions & Memory Model
What: A data race = two goroutines access the same memory location concurrently, at least one is a write, with no synchronization edge between them. Go declares racy programs to have undefined behavio
Go Receivers & Control Flow
What: func (t T) M() operates on a copy; func (t T) M() on the original. Choice affects mutation, copy cost, method sets, and interface satisfaction. Syntax/Signature: Method set rule: T → value-recei
Go Sync Primitives
What: Mutual exclusion locks. RWMutex allows unlimited concurrent readers or one writer. Syntax/Signature: mu.Lock()/Unlock(); rw.RLock()/RUnlock(); both have TryLock (1.18, rarely appropriate). Zero
Go Type Assertions & Generics
What: Runtime extraction of the concrete type (or a narrower interface) from an interface value. Syntax/Signature: v, ok := i.(T) (comma-ok, safe) · v := i.(T) (panics on mismatch) · switch v := i.(ty
Go Zero Values, Enums & Options Pattern
What: Every Go value is initialized: numeric 0, "", false, nil for pointers/slices/maps/chans/funcs/interfaces. Idiomatic APIs make the zero value immediately usable. Syntax/Signature: var mu sync.Mut
MongoDB
The canonical document database — see [[SQL vs NoSQL]] for the general decision framework this fits into. This page is MongoDB-specific mechanics: the document model, replica sets, sharding, and the a
Postgres Internals
MVCC and isolation levels are covered in [[SQL Transactions & ACID]]; EXPLAIN/indexing in [[SQL Indexes & Query Performance]]. This page is Postgres-specific physical internals — how MVCC is actually
Python asyncio
Single-threaded concurrency via cooperative multitasking — one thread, one event loop, many coroutines. Best for I/O-bound work (HTTP, DB, file reads). For when to reach for asyncio over threading/mul
FastAPI
Modern async Python web framework, built on Starlette (ASGI) + [[Pydantic]]. Auto-generates OpenAPI docs from type hints — the schema isn't written separately from the code, it's derived from it. pyth
Python: Identity, Mutability & Memory
== checks value equality; is checks identity — whether two names point to the exact same object in memory. python a = [1, 2, 3] b = [1, 2, 3] a == b # True — same value a is b # False — different
Pydantic
Data validation using Python type hints as the schema — the standard validation layer under FastAPI. Pydantic v2 (current) is Rust-backed internally — roughly 5-50x faster than v1's pure-Python valida
Python Concurrency: GIL, Threading, Multiprocessing, Asyncio
The Global Interpreter Lock (GIL) allows only one thread to execute Python bytecode at a time, even on a multi-core machine — this single fact is why Python's concurrency story has three genuinely dif
Python Decorators
A decorator is a function that takes another function as an argument, adds behavior around it, and returns a new (usually wrapped) function — without permanently modifying the original function's sour
Python Generators & Iterators
A list computes and stores every value in memory upfront. A generator yields values lazily, one at a time, only when asked — using O(1) memory regardless of how many values it will eventually produce.
Python Gotchas Cheat Sheet
Fast last-minute-review reference. Full explanations for the non-obvious ones live on their dedicated pages — this is the recall table, not the teaching material. Gotcha Rul
Python Logging
Python's built-in logging module is the production standard. print() in production code has no severity levels, no structured output, and can't be selectively disabled without editing source — logging
Python OOP & Data Model
- Encapsulation — bundling data and methods together, hiding internal state so nothing outside the class depends on it directly. In Python this is achieved mostly by convention, not enforcement: prefi
Python: Scoping & Closures
Python resolves a name by searching these scopes in order: Local → Enclosing → Global → Built-in. python x = "global" def outer(): x = "enclosing" def inner(): x = "local" prin
Redis — See Caching & Redis
Redis content lives in [[Caching & Redis]] (System Design/Concepts/Caching & Redis.md) — written first as a Wave 0 fundamentals page since Redis is referenced across many HLD/LLD problems, not filed s
SQL Aggregates & GROUP BY
sql SELECT COUNT(), COUNT(column), COUNT(DISTINCT col), SUM(salary), AVG(salary), MIN(salary), MAX(salary) FROM employees; COUNT() counts every row including NULLs; COUNT(column) skips NULLs in that c
SQL Basics & Query Fundamentals
sql SELECT name AS employeename, salary 12 AS annualsalary FROM employees; SELECT FROM employees WHERE department = 'Engineering' AND salary 80000; SELECT FROM employees WHERE salary BETWEEN 50000
SQL Classic Interview Problems
The recurring problem shapes that show up across DataLemur, LeetCode SQL 50, and real fintech/product interviews (Razorpay, PhonePe, Juspay-style rounds). Each pattern below is worth being able to wri
SQL Constraints & Schema DDL
Category Stands for Commands Purpose ------------ DDL Data Definition Language CREATE, ALTER, DROP, TRUNCATE Defines/changes schema DML Data Manipulation Language INSERT, UPDATE, DELETE M
SQL Indexes & Query Performance
A separate data structure (usually a B-tree) storing column values plus pointers back to the actual table rows — trading write overhead and storage space for read speed. sql CREATE INDEX idxordersuser
SQL JOINs
INNER JOIN LEFT JOIN RIGHT JOIN FULL OUTER JOIN A ∩ B A (+ B if match) B (+ A if match) A ∪ B sql -- INNER — only matched rows in both tables SELECT u.
SQL Pivoting
Transform row data into columns (pivot) or columns into rows (unpivot). Standard SQL has no native PIVOT — CASE WHEN inside an aggregate is the portable answer. Input (long format): one row per (user,
SQL Security & Injection Defense
Every senior backend screen asks about SQL injection defense — a genuinely must-know topic, not trivia. python query = f"SELECT FROM users WHERE id = '{userinput}'" If userinput = "' OR '1'='1": sql
SQL String & Date Functions
sql SELECT LENGTH('hello'); -- 5 SELECT UPPER('hello'), LOWER('HELLO'); SELECT TRIM(' hello '); -- 'hello' SELECT SUBSTRING('hello world', 7, 5); -- 'world' (
SQL Style & Best Practices
Writing a correct query and writing a query that reads as senior-level are different skills — this page is the second one. sql -- Good: uppercase keywords, descriptive lowercase aliases, aligned colum
SQL Subqueries & CTEs
sql -- Scalar — returns a single value SELECT name, salary FROM employees WHERE salary (SELECT AVG(salary) FROM employees); -- Multi-row — use with IN / ANY / ALL SELECT name, salary FROM employees W
SQL Transactions & ACID
sql BEGIN; UPDATE accounts SET balance = balance - 500 WHERE id = 1; UPDATE accounts SET balance = balance + 500 WHERE id = 2; COMMIT; -- or ROLLBACK to undo everything since BEGIN -- Savepoints
SQL UNION & Set Operations
Combine results from multiple SELECT statements — all must have the same column count with compatible types. sql -- UNION — deduplicates (sort/hash under the hood — real cost on large sets) SELECT cit
SQL Views, Procedures & Triggers
Server-side database objects that wrap queries or logic. Common interview territory even where production usage varies by team/philosophy. A stored SELECT — no data of its own, re-runs the underlying
SQL Window Functions
Compute a value per row using rows around it — without collapsing rows the way GROUP BY does. This is the single most-tested "senior-level" SQL topic. sql functionname() OVER ( PARTITION BY col
HTML & CSS Fundamentals
Using tags that convey meaning (<nav, <article, <header, <button) instead of generic <div/<span for everything. Why it matters beyond style: screen readers and other assistive tech rely on semantic ta
JS Closures & Async
A function that retains access to its enclosing scope's variables even after that outer function has returned. javascript function makeCounter() { let count = 0; // private — inaccessibl
JS Core Language & Data Types
8 types: Number, BigInt, String, Boolean, Null, Undefined, Symbol (primitives) + Object (reference). javascript typeof null // "object" — a famous, unfixable-for-compatibility JS bug; null is
JS DOM & Events
Nodes include everything (comments, text, elements) — navigated via childNodes, firstChild, nextSibling. Elements are HTML tags only — navigated via children, firstElementChild, nextElementSibling. In
JS Machine Coding Patterns
The recurring "implement this from scratch" set — expect at least one of these in any JS machine-coding round. Debounce: run only after the trigger has paused for delay ms — good for search-input, res
JS Prototype & OOP
Every object has an internal [[Prototype]] link to another object. Accessing a missing property walks up this chain until found or null is reached. javascript const animal = { breathes: true }; const
React Hooks Deep-Dive
jsx const [count, setCount] = useState(0); setCount(prev = prev + 1); // functional form — required when the new state depends on the old State updates are asynchronous/batched — reading count immed
React Machine-Coding (Frontend System Design)
"Design the frontend for X" rounds — 30-45 min, focused on architecture and data flow, not pixel-level design. 1. Clarify requirements (5 min) — functional scope + non-functional (scale, performance,
React Patterns & State Management
jsx // Controlled — React state IS the source of truth for the value const [val, setVal] = useState(''); <input value={val} onChange={e = setVal(e.target.value)} / // Uncontrolled — the DOM itself own
React Performance & Reconciliation
React maintains a virtual (in-memory) representation of the UI tree; on a state change, it builds a new virtual tree and diffs it against the previous one, applying only the minimal real-DOM mutations
API Design Principles
Tested in system design rounds, backend interviews, and "design this endpoint" questions. Constraint What it means ------ Stateless Server holds no client session; every request carries all conte
API Gateway
A single entry point that sits in front of a microservices backend, so clients talk to one address instead of knowing about (and coupling to) every individual service's location. It's a specialized re
Blob & Object Storage
Storage for large, unstructured binary data (images, videos, file uploads, backups) — deliberately not a database. Flat namespace of key → blob (bucket + object key), not rows/tables. S3, GCS, Azure B
CAP Theorem & Consistency Models
A distributed system, during a network partition, can only guarantee two of three: - Consistency — every read returns the most recent write - Availability — every request gets a (non-error) response -
CDN (Content Delivery Network)
A geographically distributed network of edge servers that cache content physically close to users, cutting network latency by avoiding a round trip to the origin server for every request. It's a rever
Caching & Redis
Caching appears in virtually every system design interview. Redis is the default distributed cache. Master both the concept and the trade-offs. - DB reads are 1–10ms. Cache reads are 0.1ms. - Reduces
Communication Protocols (HTTP Polling, Long Polling, WebSockets, SSE, gRPC)
"How does the client get real-time updates?" is really "what's the trade-off between connection overhead, latency, and infrastructure complexity you're willing to accept?" Every chat/notification/live
Consistent Hashing
Markers: ⭐ MUST KNOW — core answer, asked directly. 🎯 FOCUS — high-value senior-loop follow-up. 💡 GOOD TO KNOW — depth/impressor, recognize + one-liner is enough. - Naive approach: server = hash(key
Core Vocabulary & Quality Pillars
Every HLD interview scores you against these four qualities, implicitly or explicitly. Naming which one you're prioritizing — and why — is the difference between a design that "just happens" and one t
Database Replication & Sharding
Copy the same data onto multiple nodes. Master-slave (primary-replica): writes go to the primary, reads distributed across replicas — increases read throughput and gives a failover target if the prima
LLD Interview Approach
Typically a 1–2 hour session: design a class structure, then implement it (usually in Python or Java). Common at companies with a dedicated machine-coding round (CRED, BrowserStack, Razorpay, Flipkart
Latency vs Throughput
Low Latency High Throughput --------- -------------------------------------------- ------------------------------------------
Load Balancing
Distributes incoming requests across multiple servers — prevents any single instance from being overloaded, enables adding/removing capacity without downtime, and is the mechanism that makes horizonta
Merkle Trees
Two replicas are supposed to hold the same data (see [[Database Replication & Sharding]], [[Distributed Key-Value Store]]) but may have silently drifted apart — a missed write, a dropped hint, a bug.
Message Queues & Kafka
Message queues decouple producers from consumers, enabling async processing and absorbing traffic spikes. Kafka is the dominant distributed event-streaming platform — it shows up in notification, feed
OOD Design Patterns
Five patterns cover the large majority of LLD interview extensibility follow-ups. Recognize which one fits before the interviewer asks — naming it unprompted in the design phase is the signal. Use whe
Proxies (Forward vs Reverse)
Sits in front of clients, hides client identity from the server. Common uses: corporate networks, VPNs, content filtering, and some client-side caching. mermaid flowchart LR Client -- FP[Forward P
SD Interview Framework & Pitfalls
Applies to every HLD problem in this KB — see each problem page for it applied end-to-end. 1. Clarify requirements — functional (what it does, explicitly cut what it doesn't) + non-functional (scale,
SOLID Principles
Principle One line Example
SQL vs NoSQL
Not "which is better" — it's "what does the access pattern actually need." Every HLD problem's data-model section should justify this choice against the specific read/write pattern, not a general pref
Service Discovery & Health Checks
In a horizontally-scaled system, instances come and go constantly — autoscaling, deploys, crashes. Clients and load balancers need to know, at any moment, which instances are actually alive. Each inst
Single Point of Failure
Any component whose failure takes down the whole system. Load balancers, coordinators, and service-discovery nodes are common SPOFs precisely because their job is centralizing routing decisions — the
Design Ad-Click Aggregation (Stream Processing)
Design a system that ingests a massive stream of ad-click events and aggregates them (clicks per ad per minute, for billing and reporting) accurately, at high throughput, in near-real-time. This is th
Design a Unique ID Generator in Distributed Systems
Design a service that generates unique IDs at scale, across multiple servers, with no single point of coordination on the hot path. This looks trivial (AUTOINCREMENT works on one database) until the s
Design a Distributed Job Scheduler
Design a system that schedules and executes jobs (cron-style recurring tasks, or one-off delayed jobs) reliably across a fleet of worker machines. The defining challenge is exactly-once-ish execution
Design a Distributed Key-Value Store
Design a Dynamo/Cassandra-style distributed key-value store: put(key, value) and get(key), horizontally scalable, surviving node failures without downtime. This is the problem that makes CAP theorem c
Design a Distributed Message Queue (Kafka-style)
Design the message queue infrastructure itself — not a system that uses Kafka (that's every other problem in this KB touching [[Message Queues & Kafka]]), but Kafka-the-system: how partitions, replica
Design Dropbox (File Storage & Sync)
Design a file storage and sync service: upload files, sync them across a user's devices, handle edits efficiently. The defining challenge isn't storage (that's [[Blob & Object Storage]] again) — it's
Design Google Docs (Collaborative Editor)
Design a real-time collaborative document editor: multiple users typing in the same document simultaneously, with everyone converging on the same final content, without an explicit merge step. This is
Design a News Feed (Twitter/X Timeline)
Design a social feed: users post short updates, follow other users, and see a reverse-chronological (or ranked) timeline of posts from people they follow. This is one of the most-asked HLD problems be
Design a Notification System
Design a system that sends push, email, and SMS notifications triggered by backend events (order placed, message received, price drop) to potentially millions of users. The class-design version of cha
Design a Payment System
Design a system that processes payments between users/merchants — charge a card, move money, record the result — reliably enough that money is never lost, never duplicated, and always accounted for, e
Design Typeahead / Search Autocomplete
Design the suggestion dropdown that appears as a user types into a search box (Google-style): given a prefix, return the top-K most likely completions, fast enough to update on every keystroke. The de
Design Uber / Ride-Sharing (Geospatial + Real-Time Matching)
Design a ride-sharing system: riders request trips, get matched to a nearby available driver in near-real-time, track the driver's position live, and get dynamic pricing under supply/demand pressure.
Design a Web Crawler
Design a system that systematically downloads web pages, extracts links, and crawls those links recursively, at the scale of the entire web (billions of pages). The defining challenges are not downloa
Design WhatsApp (Chat System)
Design a real-time 1-1 and group messaging system: message delivery whether the recipient is online or not, delivery/read receipts, presence, and media sharing. The defining challenge isn't storage (t
Design YouTube / Netflix (Video Streaming)
Design a video platform: upload, process, and stream video at global scale with adaptive quality. The defining challenge isn't storage (that's [[Blob & Object Storage]]) or even streaming itself — it'
Design a Board Game (Tic-Tac-Toe, generalized)
Tic-Tac-Toe itself is trivial; the interview value is in generalizing win detection so it doesn't hardcode "3 in a row on a 3x3 board" — a candidate who writes 8 explicit if checks for the 8 winning l
Design an Elevator System
Harder than Parking Lot because the core challenge isn't matching (spot to vehicle) but scheduling under a moving state — which elevator should answer which call, and in what order should a single ele
Design an LRU Cache
The single most common LLD warm-up because the "obvious" solution (a dict) doesn't give O(1) eviction, and the correct solution (hash map + doubly linked list) is a specific, well-known composition of
Design a Notification System (LLD)
This is the class-design version: model notification channels (email, SMS, push), user preferences per channel, and the fan-out to multiple channels for one event — as clean, extensible objects. The d
Design a Parking Lot
A classic LLD warm-up because it forces the fundamentals without much domain complexity: multiple entity types (vehicles, spots, tickets), a matching/allocation rule, and an obvious extensibility foll
Design a Rate Limiter (LLD)
The [[Rate Limiter]] HLD page covers the distributed systems version — Redis, atomicity across gateway instances, fail-open/closed at scale. This page is the class-design version asked in a machine-co
Design Splitwise (Expense Sharing & Debt Simplification)
Two distinct sub-problems disguised as one: (1) modeling an expense split (equal, exact, percentage), and (2) debt simplification — given a tangle of who-owes-whom, compute the minimum number of trans
Design a Vending Machine
The canonical State pattern problem. The naive solution — a pile of booleans (hasmoney, itemselected, isdispensing) with if chains checking combinations — allows invalid states to exist in principle (
Interview KB — Master Index
Standalone interview-prep knowledge base — every page here cross-links only to other pages inside this KB, nothing external. One deep page per problem, one small focused page per concept/sub-topic. Al
Design a URL Shortener
--- A URL shortener takes a long URL like https://www.example.com/products/electronics/laptop?ref=campaign2026&utmsource=twitter and produces a short one like https://short.ly/aB3xY9z. Anyone who open
Design a Rate Limiter
A rate limiter caps how many requests a client (user, API key, IP, or service) can make in a given time window, rejecting the rest. Every public API needs one — it's the difference between a bad actor
Content — Master Index
Everything you study lives here — one folder, no more "is this in System Design/ or Interview KB/". One deep page per problem, one small focused page per concept/sub-topic. All content Senior/Staff le
July 2026 — Monthly Tracker
NeetCode 76–150. SD problems weekly. Active interviewing starts W9–W10. Mock cadence doubles. → Current week: [[Coach/projectcurrentweek]] → Full curriculum: [[Coach/projectdsasdcurriculum]] --- - [ ]
Week 06 — Jun 29–Jul 5, 2026 — Backtracking
Sprint goal: DSA + HLD/SD + Redis done by Aug 15. This week: Backtracking (9). Timer on, solo, no peek till timer expires. → Curriculum: [[Coach/projectdsasdcurriculum]] Coach state: [[synthesis/Coac
Redis
Redis is an open-source in-memory data structure store, usable as: - Database - Cache - Message broker - Streaming engine It provides data structures out of the box: - hash, list, set, sorted set, bit
Week 05 — Jun 22–28, 2026 — Tries + Heap (compressed)
SPRINT S1 of 8 (Jun 22 – Aug 15). New plan: finish all DSA + HLD/SD problems + Redis playlist by Aug 15, then apply mid-Aug. This week: Tries (3) + Heap (7) = 10 problems. Timer on, solo, no hints unt
Defining Nonfunctional Requirements
DDIA 2nd edition — Chapter 2 notes. (Complete — only book Summary left, skippable) Sections covered: Functional vs Nonfunctional ✅ · Case Study: Home Timelines ✅ (Representing Users/Posts/Follows ✅ ·
DDIA Interview Map
How to read Designing Data-Intensive Applications as HLD/System-Design interview fuel — not as a textbook to finish. Maps each chapter to the interview lever it unlocks, the design problem to pair it
Trade-Offs in Data Systems Architecture
DDIA 2nd edition — Chapter 1 notes. (Complete — only book Summary left, skippable) Sections covered: Operational vs Analytical ✅ · Characterizing Txn/Analytics ✅ · Data Warehousing ✅ · Systems of Rec
June 2026 — Monthly Tracker
Trees pt 2 → Tries + Heap → Backtracking → Graphs BFS/DFS. SD problems start: URL Shortener, Rate Limiter, Pastebin. First paid mock. Apps ramping. → Current week: [[Coach/projectcurrentweek]] → Full
Week 04 — Jun 1–7, 2026 — Trees pt 2
7 problems (NeetCode Trees Hard + extended medium-hard). Timer on, solo, no hints until timer expires. Carry-over: referral DMs (10 mandatory by Jun 7), STAR reps (3 min). First paid mock this week. S
Week 03 — May 25–31, 2026 — Trees pt 1
13 problems (NeetCode Trees Easy + Medium). Timer on, solo, no hints until timer expires. Carry-over: SD theory (Async + Resiliency + Essentials), Drill Qs rehearsal, STAR reps. First referral DMs go
SD Theory Curriculum
Structured theory foundation before tackling design problems. Track section completion here. Related: [[synthesis/Job Switch Hub]] [[synthesis/Coach Hub]] [[System Design/System Design Basics]] ---
Week 02 — May 18–24, 2026 — Linked List
15 problems (NeetCode 11 + 4 extended). Timer on, solo, no hints until timer expires. Carry-over: STAR drills + pre-screen Q drafts from W1. SD theory: 4 sections (Caching + Async + Resiliency + Essen
Coach Hub
LLM-maintained. Updated after every retro or scorecard. Read by /coach to get current week state without scanning Weekly Tracker/ for the right weekly file. --- currentweek: Week 06 RESTART (Jul 29–Au
Arrays & Hashing
- Need O(1) lookup (does X exist? how many times?) - Reducing O(N²) brute force to O(N) by trading space for time - Grouping elements by a shared property (anagrams, frequencies) - Finding relationshi
Linked Lists
- Problem involves pointer manipulation (reversal, merging, cycle) - O(1) space constraint — no converting to array - Relative ordering of nodes matters, or need to process end-to-beginning Signal phr
Trees
- Hierarchical data, parent-child relationships - Path, depth, LCA, validation problems - DFS → path/property problems, BST operations - BFS → level-by-level, shortest path to leaf, right/left view Si
Heap & Priority Queue
- "Top K", "Kth largest/smallest", "K most frequent" - Need to repeatedly get min or max efficiently - Merging multiple sorted streams - Median in a dynamic stream - Minimize total cost by always comb
Backtracking
- Problem asks for all combinations / permutations / subsets - Constraint satisfaction (N-Queens, Sudoku, Word Search) - Brute force with pruning — explore then undo (backtrack) invalid paths Signal p
Greedy Algorithms
- Problem asks for min/max and locally optimal choice leads to globally optimal result - No need to revisit past choices (contrast: DP considers all options) - Sort first, then scan linearly with a si
Math & Geometry
- Large number operations (overflow, modular arithmetic) - Prime number problems - Grid transformations: rotate, spiral, zero-out - GCD, LCM, factorial digit counting Signal phrases: "count primes", "
30 Company Target List — Job Switch 2026
Goal: 50+ LPA Senior SDE / SDE2 Pune / Bangalore / Remote / US Remote Apply order: Tier 3 first (W3) → Tier 2 (W3–W5) → Tier 1 (W4–W8, referral-first) Rule: First 10 apps = practice. Don't skip Tier
AWS ML Associate Cert — Deferred
Status: Killed from active prep track as of May 11, 2026. Reason: Cert prep competes with DSA + SD window. War stories (AskTGE, Bedrock, RAG) already cover the AI depth needed for interviews. Revi
Pre-May 11 Plan Summary (Archived)
Consolidated summary of the older Job Switch plan that ran Mar 18 → Apr 26, 2026. Replaced by the revised plan stored in Private/Project2026/Coach/ (symlinked to Claude memory). --- - Target: 50+ LPA
Pre-May 11 Weekly Tracker Summary (Archived)
Captures intent + planned content from the 10 weekly tracker files + RAG blog draft archived on May 12, 2026. --- Completed per Weekly Progress Tracker: - Arrays, Two Pointers, Sliding Window, Binary
May 2026 — Monthly Tracker
W1 = validation gate for already-completed patterns. W2–W3 progresses into Linked Lists + Trees. Resume rewrite + LinkedIn rewrite + 30-company list this month. → Current week: [[Coach/projectcurrentw
Week 01 — May 11–17, 2026 — Validation Gate
Test fluency on 5 already-completed patterns (Arrays/Hashing, Two Pointers, Sliding Window, Stack, Binary Search). 15 problems, timed, solo. Decision gate Sun May 17 night → calls W2 direction. → Live
Constraints
Rules enforced by DB engine on column/row data. Violations rejected at write time. Way better than app-level checks — DB never lies. Constraint What it enforces ------------------------------ NOT
DDL, DML, DCL, TCL
SQL statements grouped by purpose. Interview-classic — "is TRUNCATE DDL or DML?" Category Stands for Commands What it does ---------------------------------------------- DDL Data Definition Lan
SQL Security
Privileges + injection prevention. Interview must-know — every senior screen asks about SQLi defense. User input concatenated into a query, attacker breaks out of the literal and runs arbitrary SQL. V
Views, Procedures, Triggers
Server-side database objects that wrap queries or logic. Interview territory; production usage varies by team. Stored SELECT statement, behaves like a virtual table. No data of its own — re-runs under
SQL Aggregates & GROUP BY
sql SELECT COUNT() AS totalrows, -- count all rows including NULLs COUNT(column) AS nonnullcount, -- count non-NULL values only COUNT(DISTINCT col) AS uniquecoun
SQL Basics
sql -- All columns SELECT FROM employees; -- Specific columns SELECT name, salary FROM employees; -- With alias SELECT name AS employeename, salary 12 AS annualsalary FROM employees; -- Computed col
Writing Clean SQL
sql -- ✅ Good: uppercase keywords, lowercase identifiers, aligned columns SELECT u.name, u.email, COUNT(o.id) AS ordercount, SUM(o.total) AS totalspent FROM users u JOIN orders o ON u.id = o.
SQL Indexes & Performance
Separate data structure (usually B-tree) that stores column values + pointers to table rows. Trades write overhead + storage for read speed. sql -- Create index CREATE INDEX idxordersuserid ON orders(
SQL JOINs
INNER JOIN LEFT JOIN RIGHT JOIN FULL OUTER JOIN A ∩ B A (+ B if match) B (+ A if match) A ∪ B [AABB] [AAB ] [ ABB] [AA
SQL Pivoting
Transform row data into columns (pivot) or column data into rows (unpivot). SQL has no native PIVOT in standard SQL — use CASE WHEN. --- Input: long format — one row per (user, metric) userid metric
SQL String & Date Functions
sql -- Length SELECT LENGTH('hello'); -- 5 SELECT CHARLENGTH('hello'); -- 5 (alias) -- Case SELECT UPPER('hello'); -- HELLO SELECT LOWER('HELLO'); -- hello -- Trim
SQL Subqueries & CTEs
sql -- Employees earning above average SELECT name, salary FROM employees WHERE salary (SELECT AVG(salary) FROM employees); -- Salary difference from company average SELECT name, salary, salary - (
SQL Transactions & ACID
sql BEGIN; -- or START TRANSACTION UPDATE accounts SET balance = balance - 500 WHERE id = 1; UPDATE accounts SET balance = balance + 500 WHERE id = 2; COMMIT; -- make changes permanent -- On error
SQL UNION & Set Operations
Combine results from multiple SELECT statements. All SELECTs must have the same number of columns with compatible data types. --- sql -- All cities from customers AND suppliers (deduped) SELECT city F
SQL Window Functions
Compute a value per row using rows around it — without collapsing rows like GROUP BY does. sql functionname() OVER ( PARTITION BY col -- reset window per group (optional) ORDER BY col -- r
Real Interview SD Questions — 10+ Companies
Source: [[raw/Every System Design Question I Was Asked in Real Interviews at 10+ Companies]] Author: Senior Backend Engineer at Canva. 15+ companies, 10+ SD rounds documented. Key insight: "Design Twi
LLM Fundamentals — Transformer Stack to AI Systems
Source: [[raw/20 Most Important AI Concepts Explained in Just 20 Minute]] Full stack: from raw text → tokens → vectors → transformer → LLM → training → inference → systems. --- Layers of connected neu
Senior SD Mindset — L7 Lessons
Source: [[raw/The Day a Google L7 Engineer Tore My System Design to Shreds]] The gap between mid-level and staff-level system design isn't more patterns — it's understanding the physics behind the pat
SQL Topics
Topic Notes --------------------------- ------------------------------------------------------
AskTGE Work Summary
All implementation complete. Individual planning docs deleted. --- 14 issues identified and resolved across AskTGE + multiagent-backend: # Issue Fix --------------- 1 Frontend chunk accumulation
Past Experience Q&A For Interview
4 war stories with deep-dive Q&A. Use for behavioral + technical rounds. Story Lead for Key metric --------------------------- AskTGE AI Platform AI/LLM/backend roles 90% token cost ↓, 50× band
Python Benchmark Test
Scheduled: Saturday Apr 19, 2026 Duration: 2 hours 30 min total (timed per section) Setup: No notes. No IDE autocomplete. Use plain editor or paper. Goal: Know exactly where you stand before interview
Docker & Kubernetes
Conceptual reference only — not tested as a coding round. Know these for verbal questions and SD discussions. --- Containerization — package app + dependencies into an isolated, portable unit. Same co
Frontend System Design
Tested in: Full-stack and senior FE interviews at CRED, Razorpay, Flipkart, Meesho. Format: "Design the frontend for X" — 30-45 min. Focus on architecture, not pixel design. --- 1. Clarify requirement
SQL for Interviews
Tested at: Razorpay, PhonePe, Juspay, Zepto, most fintech/product companies. Round format: 2-3 queries in 30-45 min. Medium complexity expected. --- sql -- Logical execution order (not written order):
Interview Prep Hub
Aggregated technical templates + behavioral stories for interview prep. LLM: update when new patterns added, SD problems completed, or behavioral stories refined. Plan window: May 11 → Nov 11, 2026.
Job Switch Hub
Goal: 50+ LPA offer Plan window: May 11 → Nov 11, 2026 (26 weeks) Current week: see [[Coach/projectcurrentweek]] LLM: update this page when DSA progress changes, SD problems completed, applications
Coach
Single source of truth for plan state — compressed 2026-07-29 from three overlapping files (Coach Hub, Job Switch Hub, Interview Prep Hub) that had the same DSA/SD progress duplicated across two of th
Merge Intervals
Used for problems involving overlapping ranges (time slots, events, schedules). 10-15% of array problems fall here. Identify this pattern when: - Input is a list of [start, end] pairs - Problem asks t
Bit Manipulation
Fast integer operations using binary representation. Small topic, high payoff — problems are easy once you know the tricks. --- python a & b # AND — both bits 1 a b # OR — either bit 1 a ^ b
Prefix Sum
Pre-compute cumulative sums to answer range-sum queries in O(1) instead of O(n). Identify this pattern when: - "Sum of elements between index i and j" - "Subarray sum equals K" - "Count subarrays with
AWS CloudWatch
AWS's observability platform. Collects metrics, logs, traces, and events from all AWS services. Core for production monitoring and the MLA-C01 exam. --- Component What it is Analogy --------------
AWS RDS
Managed relational database service. Handles provisioning, patching, backups, and failover. Supports PostgreSQL, MySQL, MariaDB, Oracle, SQL Server, and Aurora. --- Concept Description ------------
AWS SQS & SNS
SQS = managed message queue (point-to-point). SNS = managed pub/sub (fan-out). Used together for reliable async decoupling. --- Standard Queue FIFO Queue --------------------- Ordering Best-effo
Concurrency Deep Dive
Cross-language synthesis: Go goroutines ↔ Python async/threading ↔ distributed concurrency patterns. Most engineers know one — knowing all three is a rare interview differentiator. --- Single-threaded
TypeScript
Typed superset of JavaScript. Catches errors at compile time. Standard for Next.js, React, Node.js in 2026. Your portfolio (vectorbuilds.dev) is TypeScript + Next.js. bash npx tsc --init # create
Go Context
context.Context is the standard way to carry deadlines, cancellations, and request-scoped values across API boundaries and goroutines. Every production Go service uses it. Pass ctx as the first parame
Go HTTP Server
net/http ships a production-ready HTTP server in the standard library. No framework needed for most services. --- go package main import ( "fmt" "net/http" ) func main() { http.HandleFunc(
Go Testing
Go ships a testing package with everything you need. No external framework required for basic tests. testify is the standard third-party addition. bash go test ./... # run all tests go te
LLM & AI Stack
Cross-domain synthesis: LangChain + MCP + RAG patterns + AWS AI services. Primary moat for targeting AI companies. LLM: update when new AI/ML content ingested or work experience notes added. --- Appli
Python asyncio
Single-threaded concurrency via cooperative multitasking. One thread, one event loop, many coroutines. Best for I/O-bound tasks: HTTP, DB, file reads. --- python import asyncio async def fetch(url: st
FastAPI
Modern async Python web framework. Standard choice for AI/ML APIs and backend services. Built on Starlette (ASGI) + Pydantic. Auto-generates OpenAPI docs. bash pip install fastapi uvicorn[standard] uv
Pydantic
Data validation library using Python type hints. Standard in FastAPI and LangChain. v2 (current) is Rust-backed — 5-50x faster than v1. bash pip install pydantic # v2 by default --- python from pyda
Tech Stack Overview
How to position skills in interviews and on resume. LLM: update when new skills added, certs achieved, or projects shipped. --- Python (Expert) ─────────────── 5 years, production RAG/LLM systems Go (
Wiki Index
Rebuilt 2026-07-28 — vault reorganized into 5 top-level life-area folders (Interview Prep, Learning, Finance, Projects, Life). Private/ was dissolved same day, then partially reinstated to hold Privat
Go Enums
Go has no built-in enum keyword. The idiomatic alternative is a typed constant group combined with iota — a compile-time counter that auto-increments within a const block. The result behaves like an e
Go Generics
Generics (introduced in Go 1.18) let you write functions and types that work across multiple types without duplicating code. The key idea: type parameters — placeholders for concrete types supplied at
Go Proverbs
A collection of wise, pithy design principles from Rob Pike — one of Go's creators. Presented at Gopherfest 2015, they capture the philosophy behind idiomatic Go. Similar in spirit to the Zen of Pytho
Go HTTP Clients
Go's standard library ships a production-ready HTTP client in net/http — no third-party dependency needed. This note covers the full lifecycle: making requests, working with JSON, understanding URLs a
Go Mutexes
A mutex (mutual exclusion lock) protects shared data from concurrent access. While channels communicate data between goroutines, a mutex guards data that multiple goroutines read or write directly. Fr
AWS Lambda
- Serverless compute — run code without provisioning or managing servers - Event-driven — executes in response to triggers (S3, API Gateway, Kinesis, DynamoDB Streams, SNS, SQS, etc.) - FaaS (Function
Go Channels & Goroutines
Go's concurrency model is built on two primitives: goroutines (lightweight threads managed by the Go runtime) and channels (typed, thread-safe pipes for goroutines to communicate through). The philoso
Go Control Flow
Go's control flow for conditionals is intentionally minimal: if/else for branching and switch as a cleaner alternative to long if-else chains. No parentheses around conditions, braces always required.
Go Error Handling
Go handles errors as values, not exceptions. There's no try/catch — instead, functions return an error as the last return value, and callers check it explicitly. This makes error paths visible, forces
Go Functions
Functions are first-class citizens in Go — they can be assigned to variables, passed as arguments, and returned from other functions. Types come after variable names. Go natively supports multiple ret
Go Quiz & Coding Challenges
How to use: Go section by section. For "What's the output?" — reason through it before expanding. For coding challenges — write the solution first, then verify. --- go package main import "fmt" var x
Go Interfaces
An interface defines a set of method signatures. Any type that implements all those methods automatically satisfies the interface — no explicit implements declaration needed. This is called structural
Go Loops
Go has exactly one looping construct: for. It replaces C's for, while, and do-while. No parentheses around the loop header, braces always required. This keeps the language minimal without sacrificing
Go Maps
A map is Go's built-in hash map — an unordered collection of key-value pairs with O(1) average lookup, insert, and delete. Keys must be a comparable type (anything you can use == on). Maps are referen
Go Packages & Modules
Go code is organized into packages (a directory of .go files that share a package declaration) and modules (a collection of related packages defined by a go.mod file). Every file belongs to a package.
Go Pointers
A pointer holds the memory address of a value rather than the value itself. Pointers let you share and mutate data across function boundaries without copying it. Go pointers are simpler than C pointer
Go Slices
A slice is Go's dynamically-sized, flexible view into an array. Unlike arrays (fixed size, part of the type), slices can grow and shrink. They are the standard way to work with ordered collections in
Go Structs
A struct is Go's primary way to group related data. It's equivalent to a class without inheritance — you get data fields and methods attached to the type. Go favours composition over inheritance throu
Go Variables & Types
Go is statically typed — every variable has a type fixed at compile time. The compiler catches type mismatches before the program runs. Types are written after the variable name (opposite to C/Java).
AWS VPC
--- - Virtual Private Cloud — your own isolated private network within AWS - Spans all AZs in a region (regional resource) - You control: IP ranges, subnets, route tables, gateways, security rules - A
AWS ML Associate Exam — Index & Guide
Comprehensive exam notes. Each domain has a dedicated file. --- ------ Exam Code MLA-C01 Duration 170 minutes Questions 65 questions (multiple choice + multiple response) Passing Score 7
Domain 1 — Data Preparation for ML (28%)
Largest domain. Focus on: S3, Glue, Athena, Kinesis, SageMaker Ground Truth, Feature Store, and feature engineering techniques. --- mermaid graph LR Raw[Raw Data] -- S3[S3<br/Data Lake] S3 --
Domain 2 — ML Model Development (26%)
Focus: SageMaker training jobs, built-in algorithms, custom containers, hyperparameter tuning, and SageMaker JumpStart. --- mermaid graph TD Studio[SageMaker Studio<br/Web IDE] -- NB[Notebooks]
Domain 3 — Deployment & Orchestration of ML Workflows (22%)
Focus: SageMaker endpoint types, inference patterns, SageMaker Pipelines, CI/CD for ML, and MLOps best practices. --- mermaid graph TD Inference[Inference Options] -- RT[Real-time Endpoint<br/Low
Domain 4 — Monitoring, Maintenance & Security (24%)
Focus: SageMaker Model Monitor, Clarify, drift detection, retraining triggers, IAM, VPC, encryption, and cost optimisation. --- mermaid graph LR Deploy[Model Deployed] -- DriftD[Data Drift<br/Inpu
ML Fundamentals — AWS ML Associate
Core ML concepts tested across all domains of MLA-C01. --- mermaid graph TD ML[Machine Learning] -- SL[Supervised Learning<br/Labeled data] ML -- UL[Unsupervised Learning<br/No labels] ML
AWS AI Services & Bedrock — AWS ML Associate
Pre-built AI APIs — no ML expertise needed. Use when you don't want to build/train your own model. --- mermaid graph TD AI[AWS AI Services] -- Vision[Computer Vision] AI -- NLP[Natural Languag
April 2026 — Monthly Tracker
Apr 13–26: Break taken. No study. Apr 17: Major plan pivot — AWS cert, Go track, LangChain, Blog all dropped. New focus: 7 interview topics. Apr 27: Restart as W05. --- Week Dates DSA Other Sta
Two Pointers
--- - Sorted array or string — find a pair satisfying a condition - In-place element removal or rearrangement - Comparing elements from both ends simultaneously - Avoid O(n²) brute force on array pair
Stacks
Pre-requisite: [[Stack & Queue]] — covers Stack/Queue data structure, operations, Python implementation --- - Need to track the most recent element seen (last-in, first-out) - Matching/validation — br
Daily Log Archive — Mar 30–Apr 12, 2026
Condensed archive of W03 + W04 daily logs. Individual files deleted. Key outputs preserved below. --- - DSA: Stack pattern overview + LC 20 (Valid Parentheses) + LC 155 (Min Stack) + LC 739 (Daily Tem
Data Engineering Fundamentals
Type Definition Examples -------------------------- Structured Organized in a defined schema DB tables, CSV, Excel spreadsheets Semi-Structured Some structure via tags/hierarchies JSON, XML,
AWS EC2
--- Concept Definition Example --------- Scalability Ability to handle increased load by adding resources — either vertically (bigger instance) or horizontally (more instances) Upgrading from t
AWS S3
Pre-requisite: [[Data Engineering Fundamentals]] — covers Data Types, Data Lake vs Warehouse, ETL, Data Formats --- - Simple Storage Service — object storage service by AWS - Infinitely scalable, high
Trapping Rain Water — Two Pointer Visual
--- idx: 0 1 2 3 4 5 height: 4 2 0 3 2 5 5 █ 4 █ █ 3 █ █ █ 2 █
Python String Functions for DSA
Quick reference for string operations commonly used in LeetCode / interview problems. --- python s = "Hello World" s.lower() # "hello world" s.upper() # "HELLO WORLD" s.swapcase() #
IAM
- Global service — IAM is not region-specific - Root account is created by default — never share it, never use it for daily tasks - Users are people within your organization and can be grouped - Group
React Learning
Main reference: [[React]]
Projects Done 2026
Production work completed this year. Use these as war stories in interviews. --- Completed: Apr 2026 Stack: Python FastAPI, LangGraph, AWS Bedrock (Claude Sonnet), DynamoDB, ECS, SSE Impact: 13-iss
Sliding Window
Answer YES to all 3 → use Sliding Window: 1. Input is an Array or String? 2. Problem asks for a Subarray or Substring? 3. Looking for Longest / Shortest / Max Sum / specific count? --- Is window size
Binary Search
Use Binary Search when: 1. Input is sorted (array, range, search space) 2. Problem asks for a specific value, or min/max that satisfies a condition 3. Brute force is O(N) or O(N²) — binary search brin
Tries (Prefix Trees)
- Problem involves prefix matching, autocomplete, word search - Multiple strings need to be searched efficiently - Brute force would be O(N × M) — Trie brings prefix lookups to O(M) --- python class T
Graphs
- Input is a network, grid, or dependency structure - Problem asks for connectivity, shortest path, cycles, ordering - Keywords: nodes, edges, neighbors, connected components, path --- python graph =
Dynamic Programming
- "Count the number of ways to..." - "Minimum/maximum cost/steps to reach..." - "Can you achieve X?" (often boolean DP) - Overlapping subproblems + optimal substructure = DP Greedy vs DP: If past choi
Big O & Complexity
Big-O Name Speed Example ----------------------------- O(1) Constant Best Array index lookup O(log n) Logarithmic Great Binary search O(n) Linear Good Single loop through array O(n
DSA Topics
Type Notes ------------- Complexity [[Big O & Complexity]] Sorting [[Sorting Algorithms]] Data Structures [[Stack & Queue]] · [[Linked List]] · [[Trees & BST]] · [[Hash Map]] · [[Trie]] Te
Hash Map
Maps keys to values using a hash function. Python's dict is a production-ready hashmap. Operation Average Worst --------------------------- Get O(1) O(n) Set O(1) O(n) Delete O(1) O(n)
Linked List
Linear data structure where elements are linked via references — not stored contiguously in memory. Feature Array Linked List ----------------------------- Access by index O(1) O(n) Insert/De
Sorting Algorithms
Algorithm Time (avg) Time (worst) Space Stable Use When ------------------------------------------------------------ Bubble Sort O(n²) O(n²) O(1) Yes Never (educational only) Insertion S
Stack & Queue
Last In, First Out. All operations O(1). Operation Big O Description ------------------------------- push O(1) Add to top pop O(1) Remove and return top peek O(1) View top without remov
Trees & BST
- Hierarchical structure: root → children → leaves - Each node has at most one parent, any number of children - Binary Tree: each node has at most 2 children (left, right) - BST: left child < parent <
Trie (Prefix Tree)
Tree-like structure for storing strings character by character. Optimised for prefix operations. Operation Time ----------------- Insert O(m) where m = word length Search O(m) Prefix check
ML Feature Store
Design a Feature Store — a centralised repository for storing, sharing, and serving ML features for training and inference. --- Direct relevance: Crest Data ML thresholding engine — KPI features need
RAG & LLM System
Design a Retrieval-Augmented Generation (RAG) system — an LLM-powered Q&A that grounds answers in a private knowledge base. --- Direct relevance: AWS Bedrock LLM chat application at HCLTech. The Flas
AI & ML Topics
Area Notes ------------- LLM Fundamentals [[LLM Fundamentals]] — transformer stack, training, inference, AI systems LangChain [[Langchain]] MCP [[MCP]] --- - [x] Transformer architecture (a
MCP — Model Context Protocol
Model Context Protocol (MCP) is an open standard by Anthropic that defines how applications expose tools, resources, and prompts to LLMs in a unified way. Think of MCP as USB-C for AI — one standard
AWS Topics
Notes will be added here as AWS topics are studied (MLA-C01 exam track, 12-week plan) Resource Type Cost Use --------------------
FrontEnd Topics
Area Notes ------------- JavaScript Core [[JavaScript]] JavaScript DOM [[JavaScript DOM Notes]] JS Interview Patterns [[JavaScript Function Code Examples for Interviews]] JS Interview Ques
Interview Question
Area Topics ------------ -------------------------
JavaScript DOM Notes
Every HTML tag is an object. Nested tags are "children" of the enclosing tag. - Nodes vs. Elements: - Nodes: Include everything (Comments, Text, Elements). Accessed via childNodes, firstChild, nextS
JavaScript Function Code Examples for Interviews
Quick ref: [[Debounce]] · [[Throttle]] · [[Flatten]] · [[Promise Polyfills]] · [[Currying]] · [[Array Polyfills]] · [[Deep Clone]] · [[DOM Functions]] - A debounce function is a higher-order function
JavaScript Interview Questions
Q: What are JavaScript's data types? 8 types — 7 primitives + 1 object type. Primitives: Number, BigInt, String, Boolean, Null, Undefined, Symbol Reference: Object (includes Array, Function, Date,
JavaScript
8 types: Number, BigInt, String, Boolean, Null, Undefined, Symbol, Object javascript typeof "abc" // "string" typeof 42 // "number" typeof null // "object" ← JS bug, null is N
React
- Library (not framework) — only controls the root node you give it - Virtual DOM — React diffs a virtual copy of the DOM and applies minimal real DOM updates - JSX — HTML-like syntax transpiled to Re
Webdriver IO Learning
- Introduction to WebdriverIO - Setting up the Environment - Basic WebdriverIO Test - Q&A - What is WebdriverIO? - WebdriverIO is a custom implementation for selenium's W3C webdriver API. It is writ
Go Basics
go package main import "fmt" func main() { fmt.Println("Hello, world!") } Every Go program starts in package main. Execution begins in func main(). --- Every Go program is made of packages. By conven
Go Topics
Area Notes ----------------------- ------------------------- Basics [[Basics]] Variables & Types [[Variables & Types]]
Decorators
Decorators are one of Python's most powerful features. They allow you to modify or enhance the behavior of functions or methods without permanently modifying their source code. They are heavily used i
Object Oriented Programming
Code that's easy for humans to understand is called "clean code". Any fool can write code that a computer can understand. Good programmers write code that humans can understand. -- Mart
Python Programming
- First-class function: A function that is treated like any other value - Higher-order function: A function that accepts another function as an argument or returns a function - Pure Function: For same
Logging
Video ref: https://www.youtube.com/watch?v=pxuXaaT1u3k Python's built-in logging module is the standard for production logging. Avoid using print() in production — it has no severity levels, no format
Python Interview Questions
Q: What is the difference between is and ==? == checks value equality. is checks identity — whether both variables point to the same object in memory. python a = [1, 2, 3] b = [1, 2, 3] a == b # Tr
Python Topics
Area Notes ------------- Language Core [[Python Programming]] · [[Decorators]] · [[Object Oriented Programming]] Libraries [[Logging]] Interview Prep [[Python Interview Questions]] --- - [x
Anime 2026
Anime Platform Episode Started ----------------------------------- One Piece (One Pace edit) One Pace Wano Arc — ep 27 2026-03-18 Anime Episodes Finished Rating (/10) Notes ------------
Movies 2026
Date Title Genre Platform Rating (/10) Notes --------------------------------------------------- 2026-03-20 Zootopia 2 Animation Hotstar 2026-03-22 Rahu Ketu Prime Video - (Fill at
Shows 2026
Show Platform Season Episode Started ------------------------------------------ Show Platform Seasons Finished Rating (/10) Recommend? -----------------------------------------------
Experiences Log 2026
A running log of memorable moments, events, firsts, and things worth remembering. Date Experience Notes ------------------------- 2026-02-19 Goa Trip — South Goa (5 days) Feb 19–23 2026-03-21
Vacations & Travel 2026
Destination Dates Status With ---------------------------------- 🗓️ Planned Destination Dates Highlights -------------------------------- South Goa, Goa Feb 19–23, 2026 --- - Loca
2026 Goals
"The Switch" — Exit comfort zone. Enter the arena. # Goal Category Target Status ----------------------------------- 1 Switch job to product / AI company Career 50+ LPA by Nov 11, 2026 🔄 I
Health & Fitness 2026
Goal Target Current Status ------------------------------- Month Weight Notes ---------------------- Jan Feb Mar Apr May Jun Jul Aug S
Quick Links
Platform Link ---------------- GitHub https://github.com/vatsal30 LinkedIn https://linkedin.com/in/vatsal30 Portfolio https://vectorbuilds.dev Gmail vatsalds30@gmail.com LeetCode https
Q1 Review 2026 (Jan–Mar)
Goal Target Actual On Track? ---------------------------------
vectorbuilds.dev — Personal Portfolio Project
URL: vectorbuilds.dev GitHub: https://github.com/vatsal30/my-portfolio Local path: /Users/vector/Documents/Github/my-portfolio/ Purpose: Personal developer portfolio — digital workspace + thought lead
W01–W04 Archive — Mar 18–Apr 12, 2026
Condensed record of Weeks 01–04. Individual week files deleted. New plan starts W05 = Apr 27. --- Old multi-track approach (AWS cert + Go + LangChain + Blog + DSA + SD) abandoned. Dropped permanently:
Langchain
Source: DeepLearning.AI — LangChain for LLM App Dev Code: [[L1-Modelpromptparser.py]] Raw OpenAI API LangChain --------------------------
20 Most Important AI Concepts Explained in Just 20 Minute
Glad you’re here again. Nonmembers click here Welcome back to another story. If you’ve ever tried to learn AI, you probably felt this at least once… “What the hell is actually going on?” So many te
Ad-Click Aggregation Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
ASK_TGE_SYSTEM_DESIGN
Team Global Express · AI Centre of Excellence How the four interconnected services that make up the AskTGE platform work together. Last mapped: 2026-06-10 --- AskTGE is TGE's enterprise multi-agent
AskTGE系统架构.relationship
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
CLAUDE
Schema for LLM wiki maintenance. Obsidian is the IDE; Claude is the programmer; this vault is the codebase. Obsidian personal knowledge base ("second brain") backed by Git. Not software project — no b
Crack System Design Interviews with This One Database Cheat Sheet
Six databases. One decision framework. Zero fumbling when the interviewer asks “which database would you use here?” Most system design interviews don’t fail on algorithms. They fail on the moment the
Data Structure & Algorithms
Big-O Name Description
DATAMATE_SCHEMA_SELECTION_PLAN
Add a sidebar dropdown to pick a source-DB schema; DataMate then answers questions grounded in that schema's structure (writes correct SQL, explains tables/columns/relationships). Schema-only reason
Design a Unique ID Generator Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Distributed Job Scheduler Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Distributed Key-Value Store Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Distributed Message Queue Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Drawings_Redis
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Dropbox - File Storage & Sync Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
DSA-Visualizer
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Every System Design Question I Was Asked in Real Interviews at 10+ Companies
(Non-Medium members can READ the full article for FREE: here) I’ve interviewed at more than 15 companies across multiple countries, including Canva, Grab, Foodpanda, and Agoda, as well as companies in
Google Docs Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Karpathy - LLM Intro.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
LLM Frontier Learning Path
log
Append-only. Format: ## [YYYY-MM-DD] action description. LLM appends here as the last action on every write, per CLAUDE.md. Rotated 2026-07-28. Full history from vault inception through 2026-07-28 (5
News Feed - Twitter Feed Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Notification System Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Payment System Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Rate Limiter Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
README
Hands-on companion to [[../RedisRedis notes]]. Goal: understand Redis internals by building a minimal clone. You write the code — this is the list of concepts to go through per stage. Scope disciplin
README
Immutable source layer. LLM reads but never modifies files here. - Web-clipped articles (via Obsidian Web Clipper → markdown) - PDFs converted to markdown - Podcast/video notes (raw transcript or pers
Redis Architecture Deep Dive: What I Learned Building High-Performance Systems
When I first started using Redis, I thought it was just a fast key-value store — a simple cache to put in front of my database. Then I built a real-time leaderboard system handling millions of updates
System Design Notes Arpit Bhayani
## How to Approach System Design? - SD is extremely practical and there is a structured way to tackle the situations. - Take Baby Steps, no matter what! 1. Understand the problem statement - Without
System_design_notes.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
The Day a Google L7 Engineer Tore My System Design to Shreds
If you are not medium member read here for free @ Cloud With Azeem , @ Azeem Teli , #expocomputing I walked into the interview room with the quiet confidence of someone who had “beaten” t
Typeahead - Autocomplete Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Uber - Ride Sharing Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
URL Shortener Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Web Crawler Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
WhatsApp Chat Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu
Wiki Operation Log
Append-only. Each entry format: ## [YYYY-MM-DD] action description Parse last 5 entries: grep "^## \[" log.md tail -5 Actions: init ingest query lint synthesis update --- Go (3 new): Context, H
xoraus/CrackingTheSQLInterview: DBMS Concepts, SQL Queries & Schema Design for your Interviews.
SQL (Structured Query Language) is the standard for managing and manipulating relational data. It includes commands for querying, updating, and defining database structures. This guide is divided into
YouTube - Video Streaming Architecture.excalidraw
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plu