process.nextTick() and setImmediate() are two functions of the Timers module
that allow the control of in executing the code in the event loop
but both differ in their execution and are executed at different phases.
setImmediate() takes a callback and adds it to the immediate event queue on the existing cycle of the event loop during the process.
nextTick() takes a callback and not adds it to the immediate event queue but waits till the event loop is completed.