The Missing README - Chris Riccomini & Dmitriy Ryaboy

The Missing README

By Chris Riccomini & Dmitriy Ryaboy

  • Release Date: 2021-08-04
  • Genre: Software

Description

Key concepts and best practices for new software engineers — stuff critical to your workplace success that you weren’t taught in school.

For new software engineers, knowing how to program is only half the battle. You’ll quickly find that many of the skills and processes key to your success are not taught in any school or bootcamp. The Missing README fills in that gap—a distillation of workplace lessons, best practices, and engineering fundamentals that the authors have taught rookie developers at top companies for more than a decade.
 
Early chapters explain what to expect when you begin your career at a company. The book’s middle section expands your technical education, teaching you how to work with existing codebases, address and prevent technical debt, write production-grade software, manage dependencies, test effectively, do code reviews, safely deploy software, design evolvable architectures, and handle incidents when you’re on-call. Additional chapters cover planning and interpersonal skills such as Agile planning, working effectively with your manager, and growing to senior levels and beyond.
 
You’ll learn:
How to use the legacy code change algorithm, and leave code cleaner than you found itHow to write operable code with logging, metrics, configuration, and defensive programmingHow to write deterministic tests, submit code reviews, and give feedback on other people’s codeThe technical design process, including experiments, problem definition, documentation, and collaborationWhat to do when you are on-call, and how to navigate production incidentsArchitectural techniques that make code change easierAgile development practices like sprint planning, stand-ups, and retrospectives 
This is the book your tech lead wishes every new engineer would read before they start. By the end, you’ll know what it takes to transition into the workplace–from CS classes or bootcamps to professional software engineering.