Skip to content

Recommended Reading List

This is a curated list of recommended books for software engineers, categorized by topics. Each book entry includes the author(s), subtitle (if any), Amazon URL, edition, tags, readability level, and target audience.

Engineering

  1. Clean Code

    • Author(s): Robert C. Martin
    • Subtitle: A Handbook of Agile Software Craftsmanship
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): Clean Code, Software Craftsmanship
    • Readability: Easy
    • Target Audience(s): Juniors (1+ years)
  2. Effective Java

    • Author(s): Joshua Bloch
    • Subtitle: N/A
    • Amazon URL: Link
    • Edition: 3
    • Tag(s): Java
    • Readability: Easy
    • Target Audience(s): Juniors (1+ years)
  3. Refactoring (1st Ed.)

    • Author(s): Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts
    • Subtitle: Improving the Design of Existing Code
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): Refactoring, Java
    • Readability: Medium
    • Target Audience(s): Mediors (3+ years)
  4. Refactoring (2nd Ed.)

    • Author(s): Martin Fowler
    • Subtitle: Improving the Design of Existing Code
    • Amazon URL: Link
    • Edition: 2
    • Tag(s): Refactoring, JavaScript
    • Readability: Medium
    • Target Audience(s): Mediors (3+ years)
  5. Get Your Hands Dirty on Clean Architecture

    • Author(s): Tom Hombergs
    • Subtitle: Build 'clean' applications with code examples in Java
    • Amazon URL: Link
    • Edition: 2
    • Tag(s): Hexagonal Architecture
    • Readability: Medium
    • Target Audience(s): Mediors (3+ years)
  6. Enterprise Integration Patterns

    • Author(s): Gregor Hohpe, Bobby Woolf
    • Subtitle: Designing, Building, and Deploying Messaging Solutions
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): Enterprise Integration Patterns, Software Architecture
    • Readability: Medium
    • Target Audience(s): Mediors (3+ years)
  7. Patterns of Enterprise Application Architecture

    • Author(s): Martin Fowler
    • Subtitle: N/A
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): Enterprise Application Patterns, Software Architecture
    • Readability: Medium
    • Target Audience(s): Mediors (3+ years)
  8. Designing Data-Intensive Applications

    • Author(s): Martin Kleppmann
    • Subtitle: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): Distributed Systems, NoSQL, Data, Trade-offs
    • Readability: Hard
    • Target Audience(s): Seniors (5+ years)
  9. Java Concurrency in Practice

    • Author(s): Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea
    • Subtitle: N/A
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): Java, Concurrency, Multi-Threading
    • Readability: Hard
    • Target Audience(s): Seniors (5+ years)
  10. Mythical Man-Month

    • Author(s): Frederick Brooks Jr.
    • Subtitle: Essays on Software Engineering
    • Amazon URL: Link
    • Edition: 2
    • Tag(s): Software Engineering
    • Readability: Hardest
    • Target Audience(s): Seniors (10+ years)

Design Patterns

  1. Head First Design Patterns

    • Author(s): Eric Freeman, Elisabeth Robson
    • Subtitle: Building Extensible and Maintainable Object-Oriented Software
    • Amazon URL: Link
    • Edition: 2
    • Tag(s): Design Patterns, Object-Oriented Paradigm
    • Readability: Easy
    • Target Audience(s): Juniors (1+ years)
  2. Design Patterns

    • Author(s): Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
    • Subtitle: Elements of Reusable Object-Oriented Software
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): Design Patterns, Object-Oriented Paradigm
    • Readability: Hardest
    • Target Audience(s): Seniors (10+ years)

Spring Framework

  1. Spring Microservices in Action

    • Author(s): John Carnell, Illary Huaylupo Sánchez
    • Subtitle: N/A
    • Amazon URL: Link
    • Edition: 2
    • Tag(s): Spring Boot, Microservices, Spring Cloud
    • Readability: Easy
    • Target Audience(s): Juniors (1+ years)
  2. Spring Security in Action

    • Author(s): Laurentiu Spilca
    • Subtitle: N/A
    • Amazon URL: Link
    • Edition: 2 (Releasing April 30, 2024)
    • Tag(s): Spring Security, Spring Boot 3, OAuth 2/OpenID Connect
    • Readability: Medium
    • Target Audience(s): Mediors (3+ years)
  3. Microservices with Spring Boot 3 and Spring Cloud

    • Author(s): Magnus Larsson
    • Subtitle: Build resilient and scalable microservices using Spring Cloud, Istio, and Kubernetes
    • Amazon URL: Link
    • Edition: 2
    • Tag(s): Spring Cloud, Spring Boot 3, Kubernetes
    • Readability: Medium
    • Target Audience(s): Mediors (3+ years)

Domain-Driven Design (DDD)

  1. Domain-Driven Design Distilled

    • Author(s): Vaughn Vernon
    • Subtitle: N/A
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): DDD
    • Readability: Medium
    • Target Audience(s): Mediors (3+ years)
  2. Implementing Domain-Driven Design

    • Author(s): Vaughn Vernon
    • Subtitle: N/A
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): DDD
    • Readability: Hard
    • Target Audience(s): Seniors (5+ years)
  3. Domain-Driven Design

    • Author(s): Eric Evans
    • Subtitle: Tackling Complexity in the Heart of Software
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): DDD
    • Readability: Hard
    • Target Audience(s): Seniors (5+ years)

System Design

  1. System Design Interview (Vol. 1)

    • Author(s): Alex Xu
    • Subtitle: An Insider’s Guide
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): System Design
    • Readability: Medium
    • Target Audience(s): Mediors (3+ years)
  2. System Design Interview (Vol. 2)

    • Author(s): Alex Xu, Sahn Lam
    • Subtitle: An Insider’s Guide
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): System Design
    • Readability: Medium
    • Target Audience(s): Mediors (3+ years)

CI/CD

  1. Continuous Integration

    • Author(s): Paul M. Duvall, Steve Matyas, Andrew Glover
    • Subtitle: Improving Software Quality and Reducing Risk
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): CI, Continuous Integration
    • Readability: Medium
    • Target Audience(s): Mediors (3+ years)
  2. Continuous Delivery

    • Author(s): Jez Humble, David Farley
    • Subtitle: Reliable Software Releases through Build, Test, and Deployment Automation
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): CD, Continuous Delivery
    • Readability: Medium
    • Target Audience(s): Mediors (3+ years)

Microservices

  1. Building Microservices

    • Author(s): Sam Newman
    • Subtitle: Designing Fine-Grained Systems
    • Amazon URL: Link
    • Edition: 2
    • Tag(s): Microservices
    • Readability: Hard
    • Target Audience(s): Seniors (5+ years)
  2. Microservices Patterns

    • Author(s): Chris Richardson
    • Subtitle: With examples in Java
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): Microservices Patterns, Microservices, DDD
    • Readability: Hard
    • Target Audience(s): Seniors (5+ years)

Computer Sciences

  1. Algorithms

    • Author(s): Robert Sedgewick, Kevin Wayne
    • Subtitle: N/A
    • Amazon URL: Link
    • Edition: 4
    • Tag(s): Computer Sciences
    • Readability: Hardest
    • Target Audience(s): Seniors (10+ years)
  2. Introduction to Algorithms

    • Author(s): Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
    • Subtitle: N/A
    • Amazon URL: Link
    • Edition: 4
    • Tag(s): Computer Sciences
    • Readability: Hardest
    • Target Audience(s): Seniors (10+ years)
  3. The Algorithm Design Manual

    • Author(s): Steven S. Skiena
    • Subtitle: N/A
    • Amazon URL: Link
    • Edition: 3
    • Tag(s): Computer Sciences
    • Readability: Hardest
    • Target Audience(s): Seniors (10+ years)
  4. Art of Computer Programming

    • Author(s): Donald Knuth
    • Subtitle: Volumes 1–4B
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): Computer Sciences
    • Readability: Extreme
    • Target Audience(s): Seniors (15+ years)

DevOps

  1. Accelerate: Science of Lean Software and DevOps
    • Author(s): Nicole Forsgren, Jez Humble, Gene Kim
    • Subtitle: Building and Scaling High Performing Technology Organizations
    • Amazon URL: Link
    • Edition: 1
    • Tag(s): DevOps, Lean Software
    • Readability: Hard
    • Target Audience(s): Seniors (5+ years)

Additional Suggestions

These are some book suggestions that are must-read books for software engineers:

For more suggestions, you can read the article: "What are the must-read books for software engineers?"