Phase 1: Foundations (W1–W4)

Exit criteria (you pass the phase when you can...)

  • Explain how HashMap, ConcurrentHashMap, and GC work, and when to use virtual threads vs platform threads
  • Write idiomatic, concurrent Go (worker pools, context cancellation, no goroutine leaks)
  • Solve easy/medium array, string, stack, binary-search, and linked-list problems in < 20 min
  • Explain what happens when you type a URL in a browser, down to TCP/TLS/HTTP
  • Explain B-tree vs LSM, MVCC, and the four isolation levels with their anomalies
  • Finish an LLD machine-coding round (Parking Lot) in 90 min with clean OOP + tests
  • Ship Orbit v0 - Building Blocks and beat the 1BRC boss fight in Java and Go

🔥 This phase’s work

TrackWhere
🎯 Weekly assignments, labs, cognitive tasks, open questionsAssignments - Phase 1 (A1–A4)
⚙️ InternalsJVM Internals · Go Runtime Internals · Linux & OS Internals · Network Stack Internals
🧩 Design patternsGoF Patterns (Java & Go) · Concurrency Patterns
⚫ Boss fight1 Billion Row Challenge in Java + Go (< 10 s each)
🧠 Daily/weekly drillsCognitive Drills · self-grade with Grading Rubric

Why this phase matters

Everything later (Spring, Kafka, K8s, AI) is an abstraction over these foundations. Senior engineers debug by reasoning from first principles, and that reasoning needs this layer.

Tracks

Reading for this phase

  • Effective Java (Bloch): items on objects, generics, lambdas, concurrency
  • Java Concurrency in Practice (Goetz) ch. 1–5, 16 (still the best source on the JMM)
  • Learning Go 2e (Bodner) + Concurrency in Go (Cox-Buday)
  • Operating Systems: Three Easy Pieces (free): virtualization + concurrency sections
  • Head First Design Patterns 2e

Hands-on deliverables

  • kv-store-java: in-memory KV with TTL, LRU eviction, thread-safe, benchmarked with JMH
  • crawler-go: concurrent crawler with worker pool, rate limit, context cancellation
  • lld-solutions: repo with Parking Lot, Splitwise, Elevator, Snake & Ladder (Java, tests)
  • Build your own Redis (Go), first stages: TCP server, RESP protocol, GET/SET/EXPIRE

Retro

  • What stuck:
  • What didn’t:
  • Skill Matrix delta: