- Thinking in Systems
- Practical Microservices: Build Event-Driven Architectures with Event Sourcing and CQRS
- Thinking and Reasoning: A Very Short Introduction
- What Does It All Mean?: A Very Short Introduction to Philosophy
- Sophie’s world
- Code: The Hidden Language
- Hacker’s Delight
- Domain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F#
- Architecture Patterns with Python: Enabling Test-Driven Development, Domain-Driven Design, and Event-Driven Microservices
- Exercises in Programming Style
- Fundamentals of Software Architecture: An Engineering Approach. A Comprehensive Guide to Patterns, Characteristics, and Best Practices
- Structure and Interpretation of Computer Program
- Go Programming Language
- Permanent Record
- Kafka Streams in Action: Real-time apps and microservices with the Kafka Streams API
- Operating Systems: Three Easy Pieces
- Practical Object-Oriented Design in Ruby
- Effective Python: 59 Specific Ways to Write Better Python
- Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
- The Organized Mind: Thinking Straight in the Age of Information Overload
- Java 9 Modularity: Patterns and Practices for Developing Maintainable Applications
- Superintelligence: Paths, Dangers, Strategies
- Tour of C++
- Performance by Design: Computer Capacity Planning By Example
- Just Enough Software Architecture: A Risk-Driven Approach
- Software Abstractions
- Design It!: From Programmer to Software Architect
- ZooKeeper: Distributed Process Coordination
- Java by Comparison: Become a Java Craftsman in 70 Examples
- Release It!: Design and Deploy Production-Ready Software
- Complexity: A Guided Tour
- Functional Programming, Simplified
- Effective Java