← Interview Preparation

Concurrency & Multithreading Roadmap

Concurrency, multithreading, and parallel programming for senior interviews — the concepts and patterns behind mutexes, semaphores, deadlocks, and the classic coordination problems FAANG-level loops still ask about.

How to use this roadmap

  • Go through topics top to bottom — later topics (thread pools, async models, parallel patterns) assume you're comfortable with locks, semaphores, and deadlocks from the earlier ones.
  • The theory here is deliberately language-agnostic — these are operating-system and computer-science fundamentals, not one language's API. Reference implementations in Go, Java, Kotlin, Python, and JavaScript exist purely to ground each concept in real code. Go is the default — it is the primary language on this track.
  • Where a pattern genuinely can't be expressed in one of those five languages (e.g. a language with no OS-level threads), that's called out explicitly rather than forced.
  • This is an independent track in the interview prep collection: its own progress, its own “come back later” list, and no interview countdown.

Your Progress

0%
0 / 19Problems solved
0h / 29hTime invested
34Subtopics across 12 topics
Solved by difficulty
0/31
0/42
0/83
0/44
0/05
Progress by topic
Concurrency Foundations
0/3
Race Conditions & Critical Sections
0/2
Locks & Mutual Exclusion
0/4
Semaphores & Classic Synchronization Problems
0/7
Condition Variables & Monitors
0/4
Deadlock, Livelock & Starvation
0/4
Memory Models & Atomics
0/3
Coordination Primitives
0/4
Thread Pools & Executors
0/3
Async & Event-Driven Concurrency
0/5
Parallel Algorithm Patterns
0/5
Classic Concurrency Interview Patterns
0/9

Next Problem

Loading…

0Come Back Later

The Roadmap

  1. 1

    What a thread actually is, and why concurrency is hard in the first place.

    1. 1.1Processes, Threads & Coroutines!!2/530m
    2. 1.2Concurrency vs. Parallelism!!1/525m
    3. 1.3Scheduling & Context Switching!2/530m
  2. 2

    Why unsynchronized shared state breaks, precisely.

    1. 2.1Data Races & Shared Mutable State!!2/51h 10m
    2. 2.2The Critical Section Problem & Atomicity!!2/51h 15m
  3. 3

    The first real tool for fixing races — and its costs.

    1. 3.1Mutexes & Reentrant Locks!!2/545m
    2. 3.2Spinlocks vs. Blocking Locks~3/535m
    3. 3.3Lock Granularity & Contention!4/540m
  4. 4

    The canonical textbook problems interviewers keep coming back to.

    1. 4.1Counting Semaphores vs. Mutexes!3/51h 5m
    2. 4.2Producer-Consumer / Bounded Buffer!!!3/51h 15m
    3. 4.3Dining Philosophers!4/51h 20m
    4. 4.4Readers-Writers Problem~4/545m
  5. 5

    Waiting for a condition without busy-spinning.

    1. 5.1Wait/Notify & the Monitor Pattern!!3/550m
    2. 5.2Guarded Blocks & Spurious Wakeups!!4/51h
  6. 6

    When synchronization itself becomes the bug.

    1. 6.1The Four Necessary Conditions & Detection!3/555m
    2. 6.2Prevention & Avoidance (Lock Ordering, Banker's Algorithm)~4/535m
    3. 6.3Livelock & Starvation!3/525m
  7. 7

    Why 'it works on my machine' is scariest here — visibility and reordering.

    1. 7.1Happens-Before, Visibility & Reordering!!4/545m
    2. 7.2volatile / Atomic Variables!3/540m
    3. 7.3Compare-and-Swap & the ABA Problem~5/550m
  8. 8

    Higher-level building blocks for multi-thread choreography.

    1. 8.1Latches & Barriers~3/525m
    2. 8.2Futures, Promises & Task-Based Concurrency!!!3/51h
  9. 9

    Stop creating threads by hand — manage them as a resource.

    1. 9.1Thread Pool Design & Sizing!!3/51h 15m
    2. 9.2Work Queues, Backpressure & Rejection Policies!4/540m
  10. 10

    Concurrency without OS threads: event loops and coroutines.

    1. 10.1Event Loops & the Single-Threaded Model!!3/550m
    2. 10.2async/await & Structured Concurrency!4/550m
    3. 10.3Threads vs. Async: Choosing the Right Model!!3/51h
  11. 11

    Using many cores to make one computation faster, not just many things happen at once.

    1. 11.1Fork-Join & Divide-and-Conquer Parallelism!3/51h 10m
    2. 11.2Map-Reduce & Data Parallelism!4/555m
    3. 11.3Work Stealing~5/540m
  12. 12

    The capstone: named patterns interviewers actually ask you to implement.

    1. 12.1Ordered & Alternating Execution (Print-in-Order, Odd-Even)!!!3/52h 5m
    2. 12.2Multi-Party Rendezvous (H2O, Barbershop-Style Problems)!!!4/51h 5m
    3. 12.3Concurrent Rate Limiters & Bounded Resource Pools!!4/540m
    4. 12.4A Glimpse Beyond One Machine (Distributed Locks & Idempotency)~2/520m