Designing Data-Intensive Applications - Study Notes

A structured approach to studying Martin Kleppmann’s “Designing Data-Intensive Applications” with chapter-wise notes, Q&A, and modern trend analysis.

📚 Structure

DDIA-Notes/
├── README.md                    # This file
├── obsidian-setup-guide.md     # How to use with Obsidian
├── workflow-guide.md           # Study workflow and agent usage
├── key-concepts.md             # Quick reference
├── modern-trends.md            # 2017 → 2026 updates
│
├── chapters/                    # Chapter-wise detailed notes
│   ├── ch01-reliable-scalable-maintainable.md
│   ├── ch01-cheatsheet.md      # Quick review (5 min)
│   └── ... (more chapters)
│
├── flashcards/                  # Spaced repetition flashcards
│   ├── ch01-flashcards.md      # 35 cards for Chapter 1
│   └── ... (more chapters)
│
└── qna/                         # Interview Q&A
    └── session-notes.md         # 10+ detailed Q&A pairs

🎯 How to Use

For Study & Learning

  1. Chapter Notes: Comprehensive notes with examples and modern context

    • Start with ch01-reliable-scalable-maintainable.md
    • Each chapter has detailed explanations and case studies
  2. Flashcards (⭐ Recommended with Obsidian):

    • 35+ cards per chapter for spaced repetition
    • Compatible with Obsidian’s Spaced Repetition plugin
    • Review daily for retention
  3. Cheat Sheets: Quick 5-minute review format

    • One-line summaries, quick facts, decision trees
    • Perfect for pre-interview refresher
  4. Q&A Sessions: Interview-focused questions and answers

    • Conceptual understanding questions
    • Technical interview scenarios with frameworks
    • Advanced topics and trade-offs

For Interview Prep

  1. Quick Review Path (1-2 hours):

    • Read all cheat sheets (chapters/)
    • Review key-concepts.md
    • Skim modern-trends.md
  2. Deep Review Path (1 week):

    • Study chapter notes thoroughly
    • Practice flashcards daily
    • Answer all Q&A questions
    • Research modern implementations
  3. Modern Context:

    • Understand 2017 → 2026 evolution
    • Know current technologies (Kubernetes, serverless, etc.)
    • Be ready to discuss trade-offs with modern tools

See obsidian-setup-guide.md for:

  • Plugin recommendations (Spaced Repetition, Dataview)
  • Flashcard review workflow
  • Study session templates
  • Graph view and linking notes
  • Mobile study tips

📖 Book Information

  • Title: Designing Data-Intensive Applications
  • Author: Martin Kleppmann
  • Published: March 2017
  • Focus: Principles and trade-offs in building reliable, scalable, and maintainable data systems

🚀 Study Approach

  • Read chapter → Take notes → Identify Q&A → Research modern changes
  • Use Claude Code agents for research and validation
  • Keep notes concise but comprehensive
  • Link related concepts across chapters