11 Books Every Software Developer Should Read


If you want to be a good software developer, you have to constantly learn. One of the best ways to learn is to read good books.

Here is a list of some of the best books new software developers can learn. I have selected books with lasting advice that will remain relevant for many years to come.

This book helps you write a developer resume that fairly represents you, leverages your strengths, and increases your chances of getting hired. A practical guide has been written by the people responsible for selecting CVs: engineering managers and technical recruiters working in technology companies. Free for unemployed developers.

Cracking the Coding Interview gives you the interview prep you need to land the best software developer jobs. This is a deeply technical book that focuses on the software engineering skills you need to succeed in your interview. The book is over 500 pages and includes 189 programming interview questions and answers, plus other tips.


This book contains the main things that every junior developer should know at the start of their career in technology. It’s a quick and easy read.

The author spent two years mentoring a young developer just starting his career. After having countless conversations together, he decided to collect all the advice he had given and publish it in this eBook.


Find out what you need to succeed as a developer beyond code. The lessons in this book will boost your career by sharing the lessons and mistakes of real developers.

Wouldn’t it be nice to learn from other people’s career mistakes? “Soft” skills are essential to success but are acquired haphazardly on the job or, worse, never learned. Understanding these skills and how to improve them will make you a more effective team member and a more attractive recruit.

This book will teach you the key skills you need, including how to ask questions, how and when to use common tools, and how to interact with other team members. Each will be presented in context and from multiple angles, so you can quickly integrate and apply them to your own career.


Soft Skills: The Software Developer’s Life Handbook is a one-stop guide, offering techniques and practices for a more satisfying life as a professional software developer. In it, developer and life coach John Sonmez covers a wide range of important “soft” topics, from career and productivity to personal finance and investing, fitness and relationships, everything from a developer-centric point of view.

For most software developers, coding is the most fun part. The most difficult aspects are dealing with customers, peers and managers, staying productive, achieving financial security, staying fit and finding true love. This book is here to help you.


You can learn the most popular frameworks, use the best programming languages, and work at the biggest tech companies, but if you cultivate bad habits, it will be difficult for you to become a top developer.

This book does not offer a straight path or a predefined formula for success. This book is the result of a quest – a quest to discover what habits can be cultivated to become a better software engineer.


Software development projects can be fun, productive, and even daring. Yet they can consistently add value to a business and stay in check.

Extreme Programming (XP) was designed and developed to meet the specific needs of software development conducted by small teams facing vague and changing requirements. This new, lightweight methodology challenges many conventional principles, including the long-held assumption that the cost of changing software necessarily increases dramatically over time. XP recognizes that projects must work to achieve this cost reduction and exploit the savings once they have been realized.


Even bad code can work. But if the code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and valuable resources are wasted due to poorly written code. But it doesn’t have to be that way.

In Clean Code, the author has teamed up with colleagues to distill their agile best practice of on-the-fly code cleanup into a book that will instill in you the values ​​of a software craftsman and make you a better programmer, but only if you work at it.


The pragmatic programmer traverses the increasing specialization and technicalities of modern software development to examine the core process – taking a requirement and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse.


Refactoring is a controlled technique for improving the design of an existing codebase. Its essence is to apply a series of small behavior-preserving transformations, each of which is “too small to be worth doing”. However, the cumulative effect of each of these transformations is quite significant. By doing them in small steps, you reduce the risk of introducing errors. You also prevent the system from crashing while you refactor, allowing you to gradually refactor a system over a long period of time.

This book describes the refactoring process and spends most of its time explaining how to do the various refactorings – the behavior-preserving transformations.


This book guides you from the desire for value to the specific activities that help good Agile projects deliver better software faster and at lower cost. Using simple sketches and a few words, the author invites you to follow his journey of learning and understanding from half a century of software development and his engagement with Agile methods since their very beginning. .

The book describes the development of software, starting from our natural desire to obtain something of value. Each subject is described with an image and a few paragraphs. You are invited to reflect on each topic; to assimilate it. You will think about how each step in the process leads to the next. You’ll begin to see why Agile methods demand what they do, and you’ll learn why a cursory implementation of Agile can only lead to limited improvement.


Final Thoughts

Reading good books is one of the best ways to learn and grow as a software developer. It complements your daily learning at work.

If you found this article helpful and want to learn more about how to become a better software engineer, subscribe to The New Developer.

Have you read any of the books on my list? What did you think?

This post originally appeared at https://thenewdeveloper.substack.com/p/books-for-new-software-developers.


Comments are closed.