4 Must-Read Books for Everyone in Tech and Why
Find out which books you should be reading as a tech professional. Discover why these books are essential for building your knowledge, skills, and mindset as a developer.
Over the past year, I re-discovered the pleasure of reading after a long time. As a software developer, I spent most of the last five years learning from my computer, forgetting how it feels to leaf through pages of a well-written book.
Thanks to suggestions from some smart people I met through the last year, I moved back to the old paper books to grow not only as a software engineer but also as a professional in the real world.
Over other technical books, I read to sharpen my coding skills, those that most helped me to open my mind to a wider vision could be these four — one more technical than the others, but all with a great influence on the reader's mindset. I hope you’ll read them one day; they’ve been of great help to me.
Refactoring is an absolute masterpiece that every developer should read. When it was recommended to me by another developer, I thought it could be interesting to get a new perspective on some of the patterns I usually apply, but I never imagined the content of this book could have meant so much to the approach I now have while coding.
Fowler wants to deeply explain how our code can quickly get messy when dealing with many dependencies, data structures, and language limits, providing great solutions to transform the code into a more readable version.
The book is more of a catalog of refactors that you can consult whenever you think your code could get a better and more solid shape. Here is the Table of contents to give an idea of the topics approached throughout the book:
- A real-world refactoring example
- Principles of refactoring and why we should do it
- Bad smells in code
- The importance of tests and how to build them
- A first set of refactors (Extract function, Encapsulate Variable, Introducing Parameter Object, etc…)
- Refactor encapsulation
- Moving features around
- Organizing data
- Simplify conditional logic
- Refactor APIs
- Refactor inheritance
More than one person recommended this book to me, but in the beginning, I was not attracted by a novel, especially when my main focus was to grow my coding skills. How wrong I was.
The Phoenix Project gave me a better picture of how big companies (should) work, but it also helped me to change my perspective on what matters to make a team successful out of the code we write.
If you’ll decide to go for it, you won’t just see how difficult it can be to manage huge teams that depend on each other; you’ll also learn how to maximize the workflow of your company with the philosophy of The Three Ways.
Readers will not only learn how to improve their IT organizations, but they’ll also never view IT the same way again.
Nobody recommended this book to me, but my curiosity brought me to give it a try, and it was well worth it!
In this book, I found a good description of how a professional developer should behave. It goes through many areas affecting each developer’s daily routines, starting from a definition of professionalism to giving useful pieces of advice on how to get consistent results from working on a project.
I recommend it to get a bigger picture and learn some useful guidelines on how to grow professionally in your career. Here is the topic list, for a quick view of the content:
- What is professionalism?
- When and how to say yes/no
- Approach the coding time
- TDD. What it is and what is not
- Acceptance testing and testing strategies
- Practice and time management
- Accurate task estimations
- How to handle the pressure
- Collaboration/teamwork on projects
- Mentoring, apprenticeship, and craftsmanship
Last but not least, Never Split the Difference has been a revelation to me. It’s not closely concerned with how IT professionals work or any tech topic, but it taught me to handle compromises and situations that require refinement to achieve a successful result.
It’s a series of real-life experiences the author had in his career as a former FBI agent — experiences that helped him to learn how to negotiate in any possible scenario and get the most out of it.
Reading this book, you won’t just learn how to speak properly using the right language techniques, but you’ll deeply understand also how to apply some principles to mitigate issues in your life.
Even if it’s farthest from my area of competence, it’s the book I enjoyed the most, and I’d love to recommend it to anyone interested in taking the next step in your communication skills.
All the books I listed here helped me to grow in different areas of IT. If you know any other book that has been of inspiration for you, please share them with a PM on X.com — I’ll be happy to add them to my reading list!