| # | title | topic | type | difficulty |
|---|---|---|---|---|
| 1 | sleep(ms) — the promise every codebase re-invents | Async & Promises | Coding | Easy |
| 2 | Land three lines in three different queues | Async & Promises | Coding | Medium |
| 3 | Same results, a third of the wall clock | Async & Promises | Coding | Medium |
| 4 | A promise pool with a concurrency limit | Async & Promises | Coding | Hard |
| 5 | Retry with a delay between attempts | Async & Promises | Coding | Medium |
| 6 | A timeout wrapper that races | Async & Promises | Coding | Medium |
| 7 | Promisify an error-first callback API | Async & Promises | Coding | Medium |
| 8 | allSettled: report everything, fail at nothing | Async & Promises | Coding | Medium |
| 9 | First success wins — and AggregateError when none does | Async & Promises | Coding | Hard |
| 10 | A queue that keeps submission order | Async & Promises | Coding | Hard |
| 11 | forEach does not wait, and it will not tell you | Async & Promises | Coding | Medium |
| 12 | Debounce: only the last one survives | Async & Promises | Coding | Medium |
| 13 | Throttle: one call per window, no queue | Async & Promises | Coding | Medium |
| 14 | Cancel a timer that has not fired yet | Async & Promises | Coding | Hard |
| 15 | Batch every call made in the same tick | Async & Promises | Coding | Hard |
| 16 | Poll until it is ready, then stop | Async & Promises | Coding | Medium |