MongoDB Interview Question

Asynchronous programming - some generic theoretical questions about multithreading - implement a lock - some followup questions about the solution