General Description
A small book consisting of approximately 8-10 unnumbered chapters, each covering 2-3 small topics. The book contains no images, code, diagrams, flowcharts, or any other type of material besides text. The book is quite easy and quick to read.
Brief Overview
The first chapter, titled "Introduction", shares the author's story of becoming a developer, highlighting mistakes and lessons that formed the basis of professional experience. It describes that knowledge of a programming language alone is insufficient and that a complex set of competencies is needed, including methodologies and tools. The problem of a vicious cycle is addressed, where companies don't hire inexperienced professionals, yet experience cannot be gained without working. The main goal of the chapter is to get the reader to approach career development systematically.
The chapter titled "Project and Tasks" shows how to organize a work project: structuring tasks and participant roles, with important attention paid to documentation.
The next chapter covers software design. Here, the importance of architecture, choosing design patterns and tools is described. Attention is focused on making choices based on project requirements. The main point is to understand not just syntax, but the approaches and paradigms underlying the chosen language.
The following chapter is about version control. This one covers Git, but not only Git.
The chapter titled "Code Quality" addresses and discusses coding standards, code review, and refactoring.
The next chapter covers software testing and the importance of tests for product reliability.
One of the final chapters is dedicated to software integration and delivery. CI/CD and DevOps are explained.
The book concludes with software development methodologies. Agile, including XP and Scrum, is discussed. As with all books, there is a conclusion in the form of the book's main thesis statements.
Opinion
Probably the main and primary audience for this book consists of people who are just about to enter IT or have done so very recently. It's sort of a superficial roadmap of the main areas worth studying further, as well as the main skills it would be good for a developer to possess. Experienced programmers will not find this book informative.