What do you need to know to move from developer to senior engineer? Undergraduate curricula and bootcamps may teach the fundamentals of algorithms and writing code, but they rarely cover topics vital to your success as a software engineer. With this practical book, you'll learn the skills you need to succeed and thrive.
Authors Nathaniel Schutta and Jakub Pilimon guide your journey with pointers to deep dives into specific topic areas. To understand the skills that really matter as a software engineer, this is the guide you'll want to read the first week at your first job. It also serves as a handy reminder when you move to a new organization or to a new position in your current organization.
With this book, you'll
Understand what software engineering is—and why communication and other soft skills matter
Learn the basics of software architecture and architecture drivers
Use common and proven techniques to read and refactor code bases
Implement an effective test suite including TDD
Design APIs including REST, sync, and async
Learn how to efficiently deploy software
Know how to evaluate and choose the right solution for the problem
Author(s): Nathaniel Schutta and Jakub Pilimon
Publisher: O'Reilly Media, Inc.
Year: 2023
Language: English
Pages: 702
Preface
Who This Book Is For
What You Will Learn
1. Reading Code
Working With Existing Code
Cognitive Biases
Learning New Languages
Approaching a New Codebase
Software Archeology
Practice Makes Perfect
Wrapping Up
Additional Resources
2. Writing Code
Don’t Reinvent the Wheel
What is Good Code?
Less is More
Write Code to be Read
The Problem With Code Comments
Tests as Documentation
Avoid Clever Code
Code Reviews
It is Hard to be Criticized
Avoid the Checkbox Code Review
Fostering Trust
Apply the Golden Rule to Software
Wrapping Up
Additional Resources