The Missing README teaches you the software engineering skills that your manager wants you to know, but are rarely taught in school.
Leave code cleaner than you found it with the legacy code change algorithm.
Learn to write operable code with logging, metrics, configuration, and defensive programming
The Missing README will show you how to write effective tests that run deterministically.
Understand standard management practices and how to work with your manager.
Submit code reviews and give constructive feedback on other people’s code.
Learn the design process, including experimentation, problem definition, documentation, and collaboration
Change production software without breaking production or your teammates' code.
Get familiar with sprint planning, stand-ups, and retrospectives
The Missing README isn't just for new engineers.
Bootcampers starting their first engineering job.
Engineers looking to brush up on their skills.
Students and new college graduates entering the workforce
Chapters explain what to expect when you begin your career, expand on your technical education, and cover planning and interpersonal skills.
A tour of the book and the beginning of your career.
Skills to learn on the job and what to expect from yourself.
Working with legacy code and how to prevent technical debt.
Use metrics, logging, configuration, and write tools to make your software easy to run.
Versioning strategies, transitive dependencies, and how to avoid dependency hell.
Testing philosophies and how to write safe, fast, predictable tests.
Learn to make code reviews helpful instead of a nuisance.
Continuous integration and deployment strategies including blue/green deploys, dark launches, and more.
How to go enter your team's on-call cycle and deal with production incidents.
The technical design process, including experiments, problem definition, documentation, and collaboration.
Build evolvable software using architectural best practices like YAGNI and by learning to maintain compatibility.
Learn to participate in Agile development practices like sprint planning, stand-ups, and retrospectives.
Build a healthy relationship with your manaager and learn to work with common management practices like 1:1s.
Position yourself to grow into senior or staff and staff roles, and learn to navigate the promotion process.