10 Books Every Junior Developer Needs To Read

The Manchester Codes Reading List

This is our complete list of books you absolutely must read during your coding career. Whether you’re a new or experienced developer, there is always space to gain new knowledge & pick up good practices. Let us know what you think, & drop us a comment if you have any more recommendations.

  1. POODR by Sandi Metz

Practical Object-Oriented Design in Ruby is about writing maintainable, well-crafted code. While we teach our students JavaScript, the learnings from this book are relevant in any language and and can help students and junior devs on their journey to excellent, objected-oriented software craftsmanship.

2. Refactoring by Martin P. Fowler

Refactoring is the art of restructuring existing code in order to make it more readable, maintainable and extensible, and is is an extremely important skill in software engineering. A well factored codebase gives you greater confidence to make changes and introduce new features with reduced risk of error, and, it allows others to easily take on and adapt your code. This book is the bible of refactoring. There are also some excellent JavaScript examples to try in the Refactoring Workbook by Bill Wake.

3. Apprenticeship Patterns by Dave Hoover & Ade Oshineye

This book is not strictly about writing code, its about knowing how to learn and creating your own opportunities to develop into a great software engineer. The lessons in the book stem from the authors’ own experiences & obstacles from being novice developers, and provide valuable information to excel in your career, and stay motivated & enthusiastic in your craft. We spoke to Dave Hoover, who gave some words of encouragement to our students here at Manchester Codes:

Dave Hoover, Co-Author of Apprenticeship Patterns

4. You Don’t Know JS: Up & Going by Kyle Simpson

We ask all our students to read this book (the first of a series of 6) as an introduction into programming & the basic concepts of JavaScript. If you are about to embark on your coding adventure, or even as an experienced developer, the series aims to provide a complete in-depth understanding of JavaScript, including scope, object prototypes, types, asynchronous JavaScript and ES6. The bonus is it’s FREE to read on GitHub.

5. Javascript the Good Parts by Douglas Crockford

If you choose to read just one book on JavaScript make it this one. Douglas Crockford breaks JavaScript language down to its fundamentals. It calls out all the good parts of JavaScript and advises the reader on what parts of the language to avoid.

The language used in the book is simple and straightforward making it accessible for developers of all experience levels. Complex JavaScript concepts such as closures, scope and prototypal inheritance are explained in a crisp manner.

Last but not the least, it includes a detailed section on regex pattern matching which might help demystify the magic of regex.

6. Domain-Driven Design by Eric Evans

Any programmer who starts to feel comfortable putting blocks of code together will soon realise the complexity is not about writing code, but writing code that is maintainable and extensible. Eric Evans coined the term “Ubiquitous Language” which means adopting a common knowledge among the main actors involved in the project. This helps to reduce confusion while tackling complexity. The book can be wordy at times but is full of insights. Every developer should read it at least once throughout their career.

7. Design Patterns : Elements of Reusable Object-Oriented Software by Erich Gamma

In your career as a software developer, you will notice two things: firstly, that a single solution can be applied to a range of similar problems; secondly, that a single problem can have more than one solution. This book is a catalogue of high-level, reusable solutions that can be applied to common programming problems, as well as advice on the contexts in which they are more or less appropriate. Familiarity with the patterns described will save you hours over the course of a career.

8. Clean Code: A Handbook of Agile Software Craftsmanship (Robert C. Martin)

In a similar vein to Refactoring, this book is less focused on what your code does, and more on how it is written. Full of code samples, it challenges the reader to identify the good and bad parts of each snippet, and covers techniques to eliminate the code smells, and write cleaner code, leaving it easier to work with in the future.

9. The Imposter’s Handbook by Rob Conery

Our graduates are proof that you don’t need a degree in computer science to work as a software engineer. But for a self-taught programmer, computer science can be a scary thing — until now. This book — written by a self-taught programmer with 20+ years of experience who was fed up of CS conversations going over his head — is aimed at self-taught developers, covering a handful of core concepts that every developer would benefit from being familiar with.

10. The Nature Of Software Development by Ron Jeffries

Work as a developer in any project team, and you are likely to come across the same issues — things that are done in a certain way because ‘that’s the way we do it’, and projects end up over-planned, over-promised, and under-delivered. This book imagines some common issues software product teams might face, and invites the reader to consider why things are done the way they are, and what might happen if processes were simplified, if your product was always ready to ship, and every decision was aimed at continuously and iteratively adding value to the product.

Manchester Codes is the only part-time coding bootcamp to teach full-stack development in the North of England, UK. We exist to help decrease the digital skills gap and lack of diversity within the tech industry.