Synchronous / Asynchronous
Synchronous / Asynchronous = waiting for the answer or not
An exchange is synchronous when the sender waits for the response before continuing, and asynchronous when it carries on and handles the response later, whenever it arrives. The distinction applies both to code and to ways of working.
In programming: a synchronous call blocks the program until the result comes back. An asynchronous call starts the task (network request, file read, API call) and lets the program continue. This is essential to keep an interface smooth or let a server handle many requests in parallel. JavaScript and Node.js rely heavily on this model, and message queues such as Kafka make it possible to decouple services.
In organizations: a meeting or a call is synchronous, an email or a ticket is asynchronous. A messaging tool such as Slack is in principle asynchronous, even if it feels real-time. Remote teams rely heavily on asynchronous writing.
Why it matters when hiring
On the technical side, mastery of asynchronous code is a good differentiator for back-end and JavaScript developers: ask how they handle an error in a chain of asynchronous calls, or a job that must be retried. On the organizational side, a remote asynchronous team needs candidates who are comfortable in writing: have them write something during the process.
