The Essential Reading List
This article has the goal of giving you a list of all the books you will need to excel in your path to mastering software engineering. Unlike most book lists, this guide is not so random, though they may appear to be. The first few books are aimed to teach you how computers work. In order to be a good software developer, you must have an understanding of this topic.
The second portion of books will aim at specific areas of technology, such as web development, security, and more. Finally, we’ll cover the interview process, providing a book (that you’ve probably already heard about) that will make the process much smoother for you.
Code: The Hidden Language of Computer Hardware and Software
Code is an expressive book of how computers work. It begins by taking you through encoding information, such as Morse code and Braille, to the basics of electricity to boolean algebra, switches and gates, machine language, and so much more. After reading this book, you will come to appreciate how computers work, and understand quite a bit about the process, too.
Whether you’re new to programming, or a senior-level developer, this book is worth the read.
Buy the book here.
The C Programming Language
After your deep dive into the world of code with the previous book, you might want to actually write some yourself. We personally recommend starting with C, as you will come to understand how general computer programs are built and how they work. Harvard’s CS50: Introduction to Computer Science course starts off with C for a reason.
Buy the book here.
Eloquent JavaScript: A Modern Introduction to Programming
You’re on a website named JavaScript Today, it would be funny if we didn’t recommend a JavaScript book. There are quite a few that come to mind, but we thought Eloquent JavaScript would be the single best book you could read to learn the language. It was actually the first JavaScript book we read!
There’s also the You Don’t Know JavaScript series by @getify, which are available to read for free on GitHub (read them here).
Buy the book here.
Automate the Boring Stuff with Python
Learning Python in the current year would be a great investment of your time. Automate the Boring Stuff with Python makes learning the language extremely fun and practical, which keeps you from getting bored.
This book is also available online for free, here.
Buy the book here
The Web Application Hacker’s Handbook
You’re able to build fully-functional web applications, but how confident are you in the security of these sites? Are you ready to accept payments from customers, and store user passwords in a database, securely? The Web Application Hacker’s Handbook is considered the holy grail of web security books available to date. It will show you ways in which attackers could exploit your applications, enabling you to defend against them.
Buy the book here.
Cracking the Coding Interview
This book is necessary for those who are starting to feel good about their development skills, and are ready to start applying to jobs. The book covers quite a bit of topics you must be prepared for as you make your way through the interview process. Not only does it cover major technical aspects of the interview, but it also mentions behavioral questions, and gives you a rundown of negotiation tactics.
It’s quite absurd to think that tech interviews have paved the way for interview books, and even courses, creating an entire market, but it’s where we’re at, unfortunately. This book is a must-read if you’re going to be jumping into the field.
Buy the book here.
A Programmer’s Guide to Computer Science: A virtual degree for the self-taught developer
This book is a must-have for the self-taught developer. Sure, you know how to write code, but there’s a good possibility you feel like you’re missing something. Chances are, you’re missing knowledge that you could gain by reading this book. It’s a short read, it won’t take you too long to read it, so there’s no reason not to own it.
Buy the book here, or read our interview with the author.
Bonus Books
Clean Code: A Handbook of Agile Software Craftsmanship
The Complete Software Developer’s Career Guide
Structure and Interpretation of Computer Programs
That’s it!
We wanted to keep this list small, with books that are truly worth your time. There are many, many more out there, and we’re sorry if we didn’t include your book. We may be happy to add it in the future, but only if we read it first!
Hopefully this list meets your expectations.
Disclaimer: this post contains affiliate links. However, we only recommend books that we have personally read (which is why this article isn’t a massive list of random books). We may receive a small commission if you purchase any of the books from this list (at no additional cost to you).
Related Posts
Finding Free and Discounted Programming Books
As an avid reader, I’m always looking for places to find my next book. If they’re free, even better. Although it’s not always so easy finding them, there are plenty available online.
Read moreGetting Started with Google Cloud
In this article, we’re going to be taking a first look at Google Cloud, a leading player in the world of cloud computing, offers services and tools designed to drive innovation and ease operations.
Read moreThe Great JavaScript Debate: To Semicolon or Not?
Since I’ve started learning this language, JavaScript has undergone some heavy changes. Most notably, it seems to be the norm to not use semicolons anymore.
Read more