Software Engineering Books
Tips and Techniques of Software Development
Test Driven Development
Write unit tests first, make them pass, then refactor. This book takes you through examples via test driven development.
Continuous Integration
Automate your software tests and integration and enjoy constant feedback. This book explains why CI is good and shows you how to do it.
Version Control with Git
Version control is a key part to software development. Git is a popular distributed version control system.
Pragmatic Programmer
Advice on the craft of programming. Tips range from tools to good practices. Highly recommended.
Code Complete
Advice on software development covering a huge breadth of subjects. Topics include OO, clean code, agile methods, and more.
The Elements of Scrum
Falling under project management, Scrum is an iterative framework for product development.