3.5 KiB
Junior
Motivation and experience
-
Robert Martin - The clean coder
Uncle Bob shares his recommendations on how to "survive" and be successful in the IT industry. This book isn't just about technical skills. It also presents psychological challenges and struggles with them.
-
Robert Martin - Clean Code: A Handbook of Agile Software Craftsmanship
Nowadays, you might find a lot of criticism about this book. Despite all, we still guess this book can be quite helpful for newbies rather than harmful in short-term distance. This book contains a collection of working tricks which will help you to write well-structured, readable and maintainable code. As with any other knowledge, don't try to place on the "throne" and transform it to cargo-cult. Use this knowledge wisely. Try to collect a set of tricks from the book which are suitable for you and helpful for improving of your code-style.
-
Steve McConnell - Code Complete: A Practical Handbook of Software Construction
Despite the book ages, it might be called a developer's "bible". It systemizes all knowledge of how the IT industry looks like. This book also proposes tons of useful advice: how to grow and become a 1-st class professional.
Computer Science
-
Thomas H. Cormen - Introduction to Algorithms
This book is a perfect continuation after "Grokking algorithms". This book introduces common algorithms of sorting, working with lists, etc., but gives more details. It is written in a friendly way. It will be helpful to prepare yourself for deep diving in algorithms area.
C++
-
Scott Meyers - Effective C++: 55 Specific Ways to Improve Your Programs and Designs
This book is a perfect cookbook of C++ foundations. This book is about C++03 features, but it's still valuable and relevant information. All recommendations described in this book are perfectly suitable for the newest standards.
-
Herb Sutter, Andrei Alexandrescu - C++ Coding Standards: 101 Rules, Guidelines, and Best Practices
This tiny book describes common best practices of code writing around commercial projects. It's an aggregation of experience collected from different companies. This book was also a foundation for the C++ Core Guidelines. You can immediately visit C++ Core Guidelines, but it's still recommended starting with this book first. It will help you to get a first impression of code guidelines spread around projects. When it's done, you can visit the C++ Core Guidelines website and get the latest approved approaches.
Hard skills
-
Eric Freeman, Elisabeth Robson - Head First Design Patterns: A Brain-Friendly Guide
This book is a perfect start to studying design patterns. As another alternative, you can also visit refactoring.guru, but in case of using this book, you will be able to have a lot of practice on-the-fly which help you to better understand ideas of common design patterns.