Node.js is a server-side JavaScript platform for building scalable network applications. It uses non-blocking I/O and event-driven architecture, which makes it very efficient for data-intensive real-time applications that run across distributed devices. Some key features of Node.js include CommonJS modules, child processes, HTTP servers, TCP servers, DNS lookups, file watching and a package management system. Popular applications built with Node.js include web frameworks, real-time applications, crawlers and streaming.