I’ve been a software developer for some time now. I started with web development in 2004, moved to a full stack position in 2009 and began developing for iOS in 2013.
I began my professional journey by reading three books — one about HTML, one about CSS and one about SQL. The rest came from Google, Stack Overflow and blogs. The internet is amazing — as a young developer I was reading 5 or more articles every day. You can really find quality information that will get you to the level you want — for free.
My general programing knowledge comes mostly from my computer science degree and work experience. Yes. Turns out you learn a lot from just programming and facing different situation while working with different teams.
One thing I’ve always wanted to do is read more software development books, but there‘s an endless list of “Must Read Books For Developers”. The list of lists of “Must Read Books For Developers” isn’t small either…
Every book is great in its own right but there are just too many to read in one lifetime. Maybe two lifetimes even. This could get a little overwhelming and always prevented me from picking up my first book as a professional. Turns out — I’m not the only one.
I decided to do some digging and come up with as many lists as I could (18 lists were found) and make one “ultimate” list by ranking these books by number of appearances.
Reading the books on this list will not make you a great developer, but applying what you‘ve learned while gaining more programming experience — will. Personally, I will try to make it a habit to read at least one book every two months.
The full list contains 139 books and can be found via the link on the bottom of the page. The books featured in this post are the top books from that huge list. Got suggestions for other lists not included in the sources? Leave a comment and I’ll add it.
In this list you will not find a book that will teach you how to be a Java developer, but you may find a book that uses Java as the selected language for examples in order to teach you a general topic. You may find a specific language book that is considered good even for developers of other languages. I also included non-development books as long as they are considered a good read for developers (The Mythical Man-Month is a good example for that).
So — without further ado — I’m proud to present:
The Ultimate Reading List for Developers (in ascending order)
“This classical book is critical reading to really understand what design patterns are and become familiar with the most common design patterns you are likely to encounter in your career.”
“Another classic, which contains a huge collection of programming patterns.” Lieke Boon
“Should be on the short list of everyone who’s involved in the computer industry, developer or not.” Woody Leonhard
“After reading this book, you’ll understand what the code you are writing is actually doing and how a CPU actually executes your code. This is both a fun and fascinating read.” John Sonmez
“I love this book because almost every software developer, at some point in their career, has to support and work with a legacy system.”
“If you are working on a large code base more than 5 years old, this book might be your new bible. Read it and take it to heart.”
“This book was one of the most influential books I’ve ever read. The best way to describe it would be as an Anti-Dilbert Manifesto.”
“If you have any legitimate aspirations to be a “Team Leader” in practice instead of in name only, you need to pick up a copy of this book.”
“It does a very good job, however, of managing to still provide ample context, describing when you’d want to use (or avoid) a particular pattern. I can’t tell you how many times I’ve referenced this book.” Rod Hilton
“provides the reader with a catalog of proven enterprise level patterns and the knowledge to use them.” Ian Joyce
“This has to be the single best book for understanding and using algorithms (which you will be doing a lot of in software development).”
“Gives fast ways to solve complex problems, using the right data structures. Comprehensive and quintessentially useful.”
“If you are going to read one book on programming in your professional career, it should be this one.”
“This is another one of those books that completely changed the way I wrote code. I can neatly divide my programming career into pre-Code Complete, pre-Clean Code and after.” John Sonmez
“A must read book on anyone on how to improve your existing code.”
“This book is essential reading for anyone involved in the construction of software using object oriented languages.”
“This book is a classic, but recently revised and corrected. The amazing thing is how relevant the book still is to software product development. If you are involved in software, this book is a must-read.”
“Arguably the only classic book in our field. If you haven’t read it, shame on you.”
“How groundbreaking is this book? Groundbreaking enough that it launched an entire publishing company. It’s a big deal, if you’ve somehow managed not to read it yet, go do so.” Rod Hilton
“Not only will this book change your coding habits, it will also change your personality as a programmer. It is filled with practical advice on getting the best of both you and your code.” Deepak Karanth
“Do yourself a favor. Make this the first book you read, and the first book you recommend to your fellow developers.”
“This book is one of the most transformative books I’ve ever read. Immediately after reading this book, the way I wrote my code and the way I thought about writing code completely changed.”