Kevin's Recommended Reading

I'm recommending the following books because they have left an impression on me after reading them. I'm trying not to include any that will be outdated very quickly so this isn't an exhaustive list of books I've read, just the ones I think most professional programmers should read.

Building Evolutionary Architectures: Support Constant Change

Building Evolutionary Architectures: Support Constant Change

By: Neal Ford, Rebecca Parsons, Patrick Kua

Software Architecture for Developers - Technical leadership and the balance with agility

Software Architecture for Developers - Technical leadership and the balance with agility

By: Simon Brown

Software Architecture for Developers - Visualise, document and explore your software architecture

Software Architecture for Developers - Visualise, document and explore your software architecture

By: Simon Brown

Team of Teams: New Rules of Engagement for a Complex World

Team of Teams: New Rules of Engagement for a Complex World

By: General Stanley McChrystal

The Five Dysfunctions of a Team

The Five Dysfunctions of a Team

By: Patrick Lencioni

Punished by Rewards: The Trouble with Gold Stars, Incentive Plans, A's, Praise, and Other Bribes

Punished by Rewards: The Trouble with Gold Stars, Incentive Plans, A's, Praise, and Other Bribes

By: Alphie Kohn

Release It!: Design and Deploy Production-Ready Software

Release It!: Design and Deploy Production-Ready Software

By: Michael T. Nygard

Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation

Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation

By: Jez Humble & David Farley

Building Microservices

Building Microservices

By: Sam Newman

Collaborative Enterprise Architecture

Collaborative Enterprise Architecture

By: Stefan Bente; Uwe Bombosch; Shailendra Langade

Growing Object-Oriented Software, Guided by Tests

Growing Object-Oriented Software, Guided by Tests

By: Steve Freeman

Search: How The Data Explosion Makes us Smarter

Search: How The Data Explosion Makes us Smarter

By: Stefan Weitz

Notes To a Software Team Leader

Notes To a Software Team Leader

By: Roy Osherove

Rework

Rework

By: Jason Fried & David Heinemeier Hansson

The Pragmatic Programmer: From Journeyman to Master

The Pragmatic Programmer: From Journeyman to Master

By: Andrew Hunt; David Thomas

Domain Driven Design Quickly

Domain Driven Design Quickly

By: InfoQ.com (Summary of Eric Evans and Jimmy Nilsson's books)

Head First Design Patterns

Head First Design Patterns

By: Eric Freeman; Elisabeth Robson; Bert Bates; Kathy Sierra

Code Complete

Code Complete

By: Steve McConnell

Don’t Make Me Think, Revisited: A Common Sense Approach to Web Usability

Don’t Make Me Think, Revisited: A Common Sense Approach to Web Usability

By: Steve Krug

Designing with Progressive Enhancement: Building the Web that Works for Everyone

Designing with Progressive Enhancement: Building the Web that Works for Everyone

By: Todd Parker; Patty Toland; Scott Jehl; Maggie Costello Wachs