My favourite resources

My favourite resources

The main goal of this page is to be a kind of virtual library. From time to time, friends ask me for advice on books and resources that I liked and that I use all the time. This is for me a way to share what I really like. I’ll try to keep this list short (I already know I will fail eventually)

Software Engineering

📚 Books

  • Clean Code & Clean Architecture - These are two books that each software engineer must read. You will find a lot of practical information on how to design good software. Probably Clean Architecture is my favorite engineering book.
  • Refactoring: Improving the Design of Existing Code - This book from Martin Flower helps you understand how refactoring really works. Although there are hundreds of refactoring techniques explained, I found a lot of value in the process explanation. - Do you know what’s the best? In the new version, examples are made in JS -
  • Designing Data-Intensive Applications - Do you want to know how databases really work? This is the best book you can read. You will learn different types of databases, how to choose the correct DB for your use case, and, really important, all the constraints that you have.
  • Modern Software Engineering - What is “Software Engineering”? How to learn better? How to manage complexity? What are the best tools to support Engineering in Software? These are just a couple of questions answered in this book. Nothing to say, it is just awesome (I think I took thousands of notes from it).
  • Solutions Architect’s Handbook - This book is about Solution Architecture and Cloud Computing. If you want to understand what is the role of a Solution Architect you have to read this book. It contains a lot of patterns, use cases, and tools. Definitely a must-have if you want to understand better how the cloud works.
  • The Manager’s Path - If you, like me, want to understand what become a manager means, this book can open your eyes. The fist chapters are also useful if you are an Individual Contributor. You will learn how your manager thinks and how to create a better relationship with her. The last chapters are about higher levels and could be read as a career path progression framework. I really appreciated the tone of the author.
  • How to Become an Effective Engineering Manager - The Software Engineer is a difficult job. We work with complex problems and a lot of trade-offs. Although working with computers is hard, working with humans is even harder. If you want to take the Manager’s path and you want to become an Engineering Manager this book should be your bible! Each chapter is readable independently and could be used as a perfect manual. The approach is pragmatic and there are real-life examples, processes and tools that an Engineering Manager needs to implement to be successful.
  • A philosophy of software design - In this book you can find a lot of useful and practical advice on how to improve the design and the quality of your code. I found really useful the naming section. Personally I find naming things really hard and this chapter helped a lot. There are also chapters about performance, software trends and a lot more. Definitely a must-have!

▶️ YouTube Channels

Differently from Books, I think YouTube channels are really personal. Here you can find channels that I think are really interesting:

🔗 Links

  • - If you want to improve your skills based on a specific technology or based on a role, you can reference a great path using these roadmaps.

Entrepreneurship and Management

📚 Books

  • Running Lean - “Iterate from a plan A to a plan that works”. Do you have an idea for a startup? You will learn what is Lean Canvas, how experimentation works, how to create an MVP, and how to validate your solution!
  • Principles - Ray Dalio is the creator of one of the biggest hedge funds in history. From Ray, you can learn a lot of things about the Economy (How the economic machine works) and about Entrepreneurship. In this book, Dalio explains his life principles divided into categories. You can read it from cover to cover or use it as a guide.
  • No Rules Rules: Netflix and the Culture of Reinvention - Talent density, trust, transparency, removing the blockers, feedback cycle. This is the Netflix culture. You will learn a lot from Reed Hastings and who knows, maybe you can bring a little of the Netflix culture into your company!
  • The Personal MBA - In my opinion, this is not a book. This is a 450 pages tutorial on Business. You can find all the basics you need from Finance, Sales, Marketing, Customer Success, and a lot of other domains. If inside this list you want to pick a single book to study, The Personal MBA is my personal advice.
  • Sergio Marchionne - Sergio Marchionne was an Italian Manager and Entrepreneur. He led FIAT when it was failing. In Sergio’s story, you can learn about his personality, his values, and his principles. This is mainly a biography but you can still learn a lot from it.
  • Inspired - This book doesn’t need presentations. If you want to learn how to create a product in the tech industry, this is the first book you need to read. Is also really useful if you want to become a product manager. Related to this, you can also consider “Cracking the PM Career” and “Cracking the PM Interview

Personal Finance

📚 Books

🔗 Online resources

▶️ Videos

Wisdom, Learning, Critical Thinking and Psychology

Probably you think that a software engineer should be focused just on… Software! Indeed I’m focused on the most complex object in the universe, our brain! I love to study how our brain works and how to improve myself. This is why in this section you will find a lot of books

📚 Books

  • Learning how to learn - I didn’t read the book, but I followed the related course on Coursera. Here you can find also my notes on this topic ()
  • Limitless - This book by Jim Kwik is a piece of art. A couple of concepts that you can find in this book are SMART goals, brain foods, habit loops, morning routines, finding flow, levels of competence, and thinking hats. Probably this is a book that needs to be read at least once per year!
  • Emotional Intelligence - In this book, you can understand what “Emotional Intelligence” means. What are the different steps to understanding our emotions and other people's emotions? If you want to improve your social skills, this book is for you!
  • Noise - Noise, by Daniel Kahneman is one of my favorite books! Do you think you can control everything? Please, read this book a couple of times. Our world is full of multiple kinds of noise. Knowing that will give us a sense of “peace of mind” and will help us to distinguish signal from noise.
  • Design your life - There are two types of problems: engineering problems and design problems. How we live our life is a design problem. This book comes from the Stanford course. Here you can find my personal notes about it (notes in Italian)
  • The Culture Map - The first time I started working in a German company one of my mentors said to me “Don’t tell jokes, German people don’t understand irony”. If you (like me) are working in a multicultural environment, reading this book is one of the best choices of your life. You will understand how different cultures think and act. A lot of “strange behaviors” are perfectly normal! They are just not part of our culture
  • Super Thinking - In this book you will find a lot of really useful mental models. What is a mental model? Is a tool that helps us during the decision-making process. Some mental models are bounded to a specific domain, but many tools apply to multiple contexts. Related to this, the Farnam Street blog is a beautiful resource!
  • Influence, The Psychology of Persuasion - Are you looking for a Persuasion mental models? You will find some basic (but evergreen) mechanisms that tricks our brain. I really suggest this book. If you work with other people you can learn how to better convey your messages.


📚 Books

  • How to avoid a climate disaster - This book from Bill Gates helps us understanding climate change and all the implications on our life. With the “Green Premium” concept we can understand how far we are from a 0 emission society. In the book, Gates also divides the emissions by sector and countries. If you like numbers and statistics, this is probably the book for you.
  • The Theory of Everything - Universe is something crazy. We live in the universe but we know so little about it. If you want to learn something about universe, The Theory of Everything is one of the first books that I advice. This is not a scientific essay, it is more like a story. A set of lessons that we can learn.