Callbacks are necessary because they allow you to queue up multiple I/O processes without having to wait for them to finish. Because these tasks run asynchronously, the app can get done more things at once (if the hardware can handle it). In Node.js, callbacks are used as a function called when a task is finished, and behaves similarly as a notification about the completion of the given task.
What Does Require Do
When a module is loaded using the require() function, the module’s code is executed and the exports object of the module is returned. The require() function can be used to load local files as well as modules installed from npm.