Concurrency / Async-Await
Also written as Multithreading, Parallelism, Async
Techniques for a program to handle multiple tasks that overlap in time — either genuinely in parallel (multithreading) or by not blocking while waiting on slow operations like network calls (async/await).
Think of it like
Like a single waiter taking a new table's order while the kitchen is still cooking the last table's food, instead of standing idle and staring at the stove until it's done.
Junior or senior?
Junior sounds like
Can define a race condition or deadlock but hasn't debugged a real one.
Senior sounds like
Can walk through a real one they tracked down.
Ask them
“Tell me about a race condition or deadlock you've had to debug. How did you track down the actual cause?”