We keep saying that Node.js is single-threaded and has asynchronous I/O. But it takes a lot of time to really understand what that means.
If you're a beginner with JavaScript, you may want to stick to using synchronous versions of I/O methods that you're used to in other languages. But sticking to your comfort zone in this matter comes at a terrible cost.
Read my article to understand the cost
https://dev.to/gaurang847/nodejs-why-using-sync-versions-of-async-functions-is-bad-586