A collection of (mostly) technical things every software developer should know about
The Patterns of Scalable, Reliable, and Performant Large-Scale Systems
An ultra-simplified explanation to design patterns