A beautifully illustrated, beginner-friendly introduction to algorithms. Great first book before diving into more formal texts.
The definitive algorithms textbook. Dense but comprehensive — best used as a reference alongside lighter introductions.
The classic interview prep book. Covers data structures, algorithms, and behavioral questions with 189 practice problems.
A problem-driven approach to interview prep with 300 problems and detailed solutions. More advanced than CTCI.
Timeless advice on the craft of software development. Covers everything from code quality to career growth.
Practical guide to writing readable, maintainable code. The examples are in Java but the principles are universal.
A concise, opinionated take on software complexity and how to fight it. Excellent complement to Clean Code.
Deep dive into the architecture of modern data systems — replication, partitioning, consistency, and beyond. Essential for backend engineers.
Step-by-step framework for tackling system design questions with real-world examples like designing a chat system or news feed.
The authoritative introduction to Go by one of the original Unix pioneers. Thorough and well-structured.
A practical, modern guide to Go for developers coming from other languages. Covers idioms, tooling, and best practices.