It is used in most cases to build BackEnd services, or better known as APIs (Application Programming Interfaces), these are the services that give power to web applications running inside a browser or to a mobile application running inside a mobile device.
These applications are simply those that the user sees and interacts with, they are just a surface, so they need to be connected to some kind of service in a cloud or on the server, to save data, send emails and other tasks.
NodeJs is ideal for building BackEnd services with a large amount of data and that need to be updated in real time, which serve as a source of power for the applications.
Node is easy to use, especially for people new to this field. It is especially used to develop agile prototypes. It is also used to build fast and scalable services, used for companies like PayPal, Uber, Walmart.
In PayPal a special case occurred, they rebuilt one of their Java-based applications using Node, discovering that the latter developed twice as fast and with fewer developers involved, 33% fewer lines of code and 40% fewer files. They even doubled the number of requests served per second.
Also, since you can use JavaScrpit on the Frontend and the Backend, your source code will be clean and more consistent, so you would use the same tools and practices to develop the application.
And, one of the most important reasons to use Node is that it has one of the largest communities of open source libraries. So, for whatever features you want to add to your application, there is sure to be a free library that you can use, so you don't have to build them from scratch.