The Pragmatic Programmer
A collection of hard-won wisdom about writing software professionally. Some advice feels dated, but the core ideas — DRY, orthogonality, tracer bullets — remain genuinely useful mental models. Good for engineers transitioning from “I can code” to “I can ship.”