Track · Language & JVM

Java

Java from the inside out: what the JVM does with your threads, why the core classes are designed the way they are, and how to structure object-oriented code that survives an interview and a production incident.

Guides
4
Sub-topics
3
Diagrams
36

Sub-topic

Concurrency & multithreading

Threads, monitors, the Java Memory Model and java.util.concurrent.

Open sub-topic
  • Java

    Java Concurrency & Multithreading

    End-to-end, internals-first: JVM memory architecture, CPU cache visibility, all six thread states, synchronized and volatile, wait/notify, thread pools, the full java.util.concurrent toolkit, ThreadLocal, CompletableFuture, the Java Memory Model, common bugs, and a full interview Q&A.

    ~50 min readBeginner → Advanced
  • JavaNew

    Why wait() and notify() Must Be Called Inside synchronized

    The lost-wakeup race that forces the rule, what the monitor’s entry set and wait set really do, why wait() must live in a while loop, notify vs notifyAll — and how Lock/Condition inherits the same contract.

    ~32 min readIntermediate

Sub-topic

Core Java internals

Why the core language and library classes are designed the way they are.

Open sub-topic
  • JavaNew

    Why Strings Are Immutable in Java

    Inside java.lang.String: the final byte[], compact strings and the cached hash — and the five reasons immutability was chosen: the string pool, hash-based collections, security, thread safety and class loading.

    ~31 min readBeginner → Intermediate

Sub-topic

Design & LLD

Object-oriented design, patterns and machine-coding rounds.

Open sub-topic
  • Java

    The Java LLD Rulebook

    A complete, step-by-step guide on how to tackle Low-Level Design and machine coding interview rounds. Learn how to confidently apply Object-Oriented Design principles, leverage common design patterns, and structure scalable Java applications from scratch.

    12-step playbookInterview prep

Explore other tracks