The document discusses test driven development (TDD) and how to apply it when building REST APIs with Node.js. It defines TDD as a process of writing unit tests before code, then writing minimal code to pass tests and refactoring. Benefits include improved quality and reduced bugs, while limitations include initial overhead. Common pitfalls involve not running tests frequently enough, tests that are too large or trivial, and partial team adoption. The document demonstrates building a REST API with Node.js using TDD with Express, Mongoose, Passport and tools like Mocha, Assert and Gulp.