Sponsor: Interested in learning more about Distributed Systems Design? Enter for a chance to win a 5 day Advanced Distributed Systems Design course led by Udi Dahan founder of Particular Software, and creator of NServiceBus.
Domain-Driven Design: Tackling Complexity in the Heart of Software
by Eric Evans
Extreme Programming Explained: Embrace Change
by Kent Beck
Kanban: Successful Evolutionary Change for Your Technology Business
by David J Anderson
The Lean Startup
by Eric Ries
Patterns of Enterprise Application Architecture
by Martin Fowler
Object-Oriented Analysis and Design with Applications
by Grady Booch, Robert A. Maksimchuk, Michael W. Engel, Bobbi J. Young, Jim Conallen, Kelli A. Houston
Refactoring: Improving the Design of Existing Code
by Martin Fowler, Kent Beck, John Brant and William Opdyk
Working Effectively with Legacy Code
by Michael Feathers