So you want to improve as a Software Engineer? There are plenty of blogs and tutorials online, but they often lack the depth of understanding that you can get from a real book. 

girl glasses reading books blur bookstore

So here is a rundown of the top 10 books for Software Engineers. 

Personal Development

The Pragmatic Programmer – Addison Wesley

This book address the important aspects of becoming a programmer, from personal responsibility and career development to architectural techniques to apply to build reusable and competent code. A must for new software developers. Get It Here

Managing Humans: Biting and Humorous Tales of a Software Engineering Manager – Michael Lopp

How better to remember answers to serious topics? Through the use of humorous stories, of course. And this book does that the best. Michael Lopp tells sometimes unbelievable stories from his time in Apple, Pinterest, Slack and others. This book is suited not only to managers or aspiring managers but also to devs wondering what the heck their manager does all day! Get It Here

Cracking the Coding Interview, 6th Edition: 189 Programming Questions and Solutions – Gayle Laakmann McDowell

If you wanted a book on how to pass an interview, it would be ideal if that book was written by a Software Developer, especially if they had previously been on both the hire and recruiter side of the hiring process; even better if that person had worked with Microsoft, Google, Amazon, Apple, IBM and others. Well, good news, that book exists! It’s Cracking The Coding Interview by Gayle. Get It Here

CS Theory

Clean Code – Robert Martin

Clean code is a classic book takes you past being able to understand code, to being able to truly write very good applications and services. Think of it as the difference between being handed a block of iron and told you can make tools with it to a blacksmith teaching you how to work that block of metal into a world class sword.

clean code book amazon

This book focuses on Java but can be adapted to suit most programming languages. It’s highly recommended. Get It Here

Design Patterns: Elements of Reusable Object-Oriented Software – Erich Gamma

A mouthful of a title and the age of the book (obvious by the cover) may initially be off-putting however this classic book is still very relevant in 2019. Due to its age, it actually cuts through all the modern ‘fads’ and gets to the core of Object Oriented design, including the reasons why design patterns are so useful. Get It Here

Technical

Effective Java: Third Edition – Joshua Bloch

One of the long-claimed books on Java programming is now in its third iteration, covering Java up to 9. This is one for those looking to really understand best-practice coding in it’s easy to read ‘item’ form. Each item is a comprehensive and specific description of what to do, not to do and why. Get It Here

Head First Design Patterns – Eric Freeman

Here’s a book that really gives you the technical knowhow to design real world applications using design patterns. While design patterns are one of the most important aspects of software development, they are often missed from CS degrees. Head first have a very unique presentation style that most people love, so it’s definitely worth a read.

As an added bonus, it’s a great book to freshen your knowledge before interviews as design patterns are nearly always brought up. Get It Here

For Younger People

Coding For Dummies – Nikhil Abraham

Despite the offensive name, for dummies books are some of the most popular leaning series. Especially good for new programmers getting to grips with the syntax and jargon, for dummies explains the core of coding in a memorable way. Get It Here

Python Basics – The Coding Club

Wanting to teach software development to a young person and maybe brush up on the basics as you go along? No better book than Python Basics by The Code Club. Get It Here

Reference

Beginning Programming: All-In-One Desk Reference For Dummies – Wallace Wang

Another For Dummies book, this one is perfect for a coder at any stage of their career. Having this book to hand is so helpful when you just need to remember that tree traversing algorithm, methods of sorting, or which loop to use in your application. I’d recommend this not as a cover-to-cover read, but as a go-to when you need to refresh your memory. Get It Here


0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *