Charles Couillard edited this page Sep 7, 2017 · 25 revisions

Product Specification & Design

  • Impact Mapping G. Adzic
  • User Story Mapping J. Patton
  • Event Storming A. Brandolini

Project & Team Management

  • The Mythical Man Month F. Brooks
  • Peopleware T. Demarco & T. Lister
  • Scrum & XP From the Trenches H. Kniberg (freely available online)
  • The Art of Agile Development: Pragmatic Guide to Agile Software Development Shane Warden & James Shore
  • Extreme Programming Explained: Embrace Change Kent Beck & Cynthia Andres
  • Lean Software Development: An Agile Toolkit Agile Toolkit Mary Poppendieck, Tom Poppendieck
  • Team Geek: A Software Developer's Guide to Working Well with Others Brian W. Fitzpatrick, Ben Collins-Sussman

Computer Science basics

  • Structure and Interpretation of Computer Programs Hal Abelson's & Jerry Sussman's (freely available online)

Domain Driven Design

  • Domain-Driven Design: Tackling Complexity in the Heart of Software Eric Evans
  • Domain-Driven Design Distilled Vaughn Vernon
  • Implementing Domain-Driven Design Vaughn Vernon
  • Domain Driven Design Quickly InfoQ (freely available online)
  • Patterns, Principles, and Practices of Domain-Driven Design Scott Millett

Code design

  • Clean Code Robert Cecil Martin
  • Code Complete 2 Steve McConnell


  • Test Driven Development: By Example Kent Beck


  • Working Effectively with Legacy Code Michael C. Feathers
  • Refactoring Martin Fowler & Kent Beck

Career / professionalism

  • The Pragmatic Programmer Andy Hunt & Dave Thomas
  • The Clean Coder: A Code of Conduct for Professional Programmers Robert Cecil Martin
  • The Software Craftsman: Professionalism, Pragmatism, Pride Sandro Mancuso
  • The Zen Programmer Christian Grobmeier



  • RESTful Web Services Leonard Richardson & Sam Ruby


  • CQRS Documents Greg Young (freely available online)



  • JavaScript Allongé, the "Six" Edition Reg “raganwald” Braithwaite (freely available online)


  • The Well-Grounded Rubyist David A. Black


  • Effective Java Joshua Bloch
  • Core Java for the Impatient Cay S. Horstmann


  • Clojure for the Brave and True Daniel Higginbotham


  • SQL Performance Explained: Everything Developers Need to Know about SQL Markus Winand



  • Mastering Bitcoin: Unlocking Digital Cryptocurrencies Andreas M. Antonopoulos
  • The Internet of Money Andreas M. Antonopoulos
  • Bitcoin. La monnaie acéphale (FR) Jacques Favier / Adli Takkal Bataille
Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.