π Books Library (prioritized)
Legend: β must-read Β· π read selectively Β· π reference Β· Status: [ ] to read, [/] reading, [x] done
Mindset & craft
- β A Philosophy of Software Design 2e: John Ousterhout
- β The Pragmatic Programmer (20th anniversary): Thomas & Hunt
- β The Missing README: Riccomini & Ryaboy (perfect for 0β2 YOE)
- π Software Engineering at Google: Winters, Manshreck, Wright (free online)
- π Refactoring 2e: Martin Fowler
- π Clean Architecture: Robert C. Martin
- π Accelerate: Forsgren, Humble, Kim
- π The Staff Engineerβs Path: Tanya Reilly (for later career thinking)
Languages
- β Effective Java 3e: Joshua Bloch
- β Java Concurrency in Practice: Brian Goetz
- π Modern Java in Action: Urma, Fusco, Mycroft
- β Learning Go 2e: Jon Bodner
- β Concurrency in Go: Katherine Cox-Buday
- β 100 Go Mistakes and How to Avoid Them: Teiva Harsanyi
- β Letβs Go / Letβs Go Further: Alex Edwards
DSA
- π Grokking Algorithms 2e: Bhargava
- π Beyond Cracking the Coding Interview: McDowell, Mroczek, et al.
- π The Algorithm Design Manual: Skiena Β· CLRS
CS foundations
- β Operating Systems: Three Easy Pieces (free)
- β High Performance Browser Networking: Grigorik (free)
- π Database Internals: Alex Petrov
- π Systems Performance 2e: Brendan Gregg
- π Computer Systems: A Programmerβs Perspective
Spring / backend
- π Spring Start Here / Spring in Action 6e
- β Spring Security in Action 2e: SpilcΔ
- π High-Performance Java Persistence: Vlad Mihalcea
- π The Art of PostgreSQL: Dimitri Fontaine Β· PostgreSQL 14 Internals (free)
System design & architecture
- ββ Designing Data-Intensive Applications: Kleppmann (2nd ed. w/ Riccomini if available)
- β Understanding Distributed Systems: Roberto Vitillo
- β System Design Interview Vol 1 & 2: Alex Xu (Vol 2 with Sahn Lam)
- β Fundamentals of Software Architecture 2e: Richards & Ford
- π Software Architecture: The Hard Parts: Ford, Richards, Sadalage, Dehghani
- β Microservices Patterns: Chris Richardson
- π Building Microservices 2e / Monolith to Microservices: Sam Newman
- π Learning Domain-Driven Design: Vlad Khononov
- β Release It! 2e: Michael Nygard
- π Web Scalability for Startup Engineers: Artur Ejsmont
- π Enterprise Integration Patterns: Hohpe & Woolf
Data & streaming
- β Kafka: The Definitive Guide 2e
- π Fundamentals of Data Engineering: Reis & Housley
- π Streaming Systems: Akidau et al. Β· The DynamoDB Book: Alex DeBrie
Infra, cloud, ops
- β Kubernetes Up & Running 3e
- π Kubernetes in Action: Marko LukΕ‘a
- π Docker Deep Dive: Nigel Poulton
- β Terraform: Up & Running 3e: Brikman
- β Site Reliability Engineering + The SRE Workbook (free)
- β Observability Engineering: Majors, Fong-Jones, Miranda
Security
- π API Security in Action: Neil Madden
- π OAuth 2 in Action: Richer & Sanso
AI engineering
- ββ AI Engineering: Chip Huyen
- β Hands-On Large Language Models: Alammar & Grootendorst
- π Build a Large Language Model (From Scratch): Sebastian Raschka
- π Designing Machine Learning Systems: Chip Huyen
Reading order for the 24 weeks
W1β4: Effective Java Β· Learning Go Β· OSTEP (parts) β W5β9: Letβs Go Further Β· Spring Security in Action Β· Use the Index, Luke β W10β14: DDIA Β· Understanding Distributed Systems Β· SDI Vol 1 & 2 Β· Microservices Patterns β W15β18: K8s Up & Running Β· SRE Workbook (SLO chapters) Β· Release It! β W19β22: AI Engineering β Always on your nightstand: A Philosophy of Software Design, The Missing README