This page is part of the “Cheatsheet of Epicness: JD’s incomplete collection”, continue the read at your own risk.
Here are some books that I have read that I think helped me improve myself both as a software engineer and a person. The list will grow as I recall/revisit old books I read along with new ones. Feel free to suggest me new reads as well.
Technical books
Design Patterns, Elements of Reusable Object-Oriented Software:
Written by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides a.k.a. Gang of Four (or GOF).
This book was a hard read for me the first time I tried because my English was average and experience lacking. I had another try a few months ago and it helped solidify my knowledge of principles and patterns I had a loose understanding of. The book is available on Amazon.
Clean code
After reading that book by Robert C. “Uncle Bob” Martin you will start saying “I see dirty code everywhere”.
This was eye-opening for me and strengthened some of my instincts on what clean code should look like. And it is not necessarily what you think it is. A read worth its while. Go grab it as soon as you can!
Self-improvement
The Art of War
Written by the tactician/philosopher Sun Tzu.
There are countless interpretations of that book applied to multiple domains from finance, to management all the way to the military (obviously). The reason it can apply to so many domains is because it is a book about preparation and adaptation. From my understanding it may be the book about Agile before Agile. It is an heavy read but if you are brave enough you should go for it.
12 Rules for life, an antidote to Chaos
Written by the somewhat controversial Jordan B. Peterson this is a pretty solid read.