References — Master Index of Authoritative Sources
“Every architect-level decision is grounded in a paper, a book chapter, or a battle-tested production blog post. This is the index of those references — organized by topic, tiered by authority, with notes on when to consult each.”
Tags: references books papers engineering-blogs moc Liên quan: MOC-System-Design · Roadmap Cập nhật: 2026-05-01
Cách dùng file này
- TIER-1: Phải đọc nếu em muốn hiểu chủ đề ở mức Architect. Đây là canonical sources, được giới engineering công nhận rộng rãi.
- TIER-2: Nice-to-have. Cập nhật, deep, nhưng không phải foundational.
- TIER-3: Practical references — dùng khi gặp vấn đề cụ thể trong production.
Mỗi nguồn có chú thích “khi nào dùng” để em không phải đọc tất cả ngay — chỉ đọc khi liên quan đến tuần em đang học.
1. Books — Sách kinh điển
TIER-1 (Must-read)
| # | Sách | Tác giả | Khi nào dùng | Liên hệ tuần |
|---|---|---|---|---|
| 1 | Designing Data-Intensive Applications (DDIA, 2nd Ed 2025) | Martin Kleppmann & Chris Riccomini | Chapter 5 (Replication), 6 (Partitioning), 7 (Transactions), 8 (Distributed Systems Trouble), 9 (Consistency & Consensus) | T06, T07, T08, T20, Tuan-Bonus-Consensus-Raft-Paxos |
| 2 | Site Reliability Engineering (Google, 2016) | Beyer, Jones, Petoff, Murphy | Khi thiết kế SLO/SLI/error budget; on-call practice | T13, Case-Design-Metrics-Monitoring-Alerting |
| 3 | The Site Reliability Workbook (Google, 2018) | Beyer et al. | Hands-on companion cho SRE Book — concrete examples | T13 |
| 4 | Database Internals (2019) | Alex Petrov | Storage engines (B-tree vs LSM), MVCC, WAL, replication protocols | T07, T20 |
| 5 | Observability Engineering (2022) | Charity Majors, Liz Fong-Jones, George Miranda | Hiểu sao high-cardinality structured events vượt trội metrics+logs+traces cũ | T13 |
| 6 | System Design Interview Vol 1 | Alex Xu | Foundation cho 5 case studies (T16-T20) | All Phase 4 |
| 7 | System Design Interview Vol 2 | Alex Xu | 13 case studies advanced (Proximity, Payment, Stock, S3, etc.) | Bonus case studies |
TIER-2 (Recommended)
| # | Sách | Tác giả | Khi nào dùng |
|---|---|---|---|
| 8 | Understanding Distributed Systems (2nd Ed) | Roberto Vitillo | Bridging theory ↔ practice; ngắn hơn DDIA, dễ tiếp cận |
| 9 | Designing Distributed Systems | Brendan Burns (Microsoft) | Patterns container-era: sidecar, ambassador, scatter-gather |
| 10 | The Staff Engineer’s Path | Tanya Reilly | Technical leadership cho design reviews, RFCs |
| 11 | Building Microservices (2nd Ed) | Sam Newman | Khi học Phase 3 — service decomposition deep dive |
| 12 | Database System Concepts (7th Ed) | Silberschatz, Korth, Sudarshan | Textbook foundational về DB — tham khảo khi cần định nghĩa formal |
| 13 | Streaming Systems | Tyler Akidau, Slava Chernyak, Reuven Lax | Stream processing, watermark, exactly-once — khi học Ad-Click case |
TIER-3 (Specialized)
| # | Sách | Khi nào dùng |
|---|---|---|
| 14 | Use The Index, Luke! (free) — Markus Winand | SQL indexing, B-tree internals (https://use-the-index-luke.com/) |
| 15 | High Performance MySQL (4th Ed) | MySQL/InnoDB performance tuning |
| 16 | Cassandra: The Definitive Guide | Khi deploy Cassandra trong production |
| 17 | Kafka: The Definitive Guide (2nd Ed) | Confluent — Kafka deep dive |
2. Papers — Foundational
Distributed Systems
| # | Paper | Năm | URL | Topic |
|---|---|---|---|---|
| P1 | The Part-Time Parliament (Paxos) — Leslie Lamport | 1998 | https://lamport.azurewebsites.net/pubs/lamport-paxos.pdf | Consensus original |
| P2 | Paxos Made Simple — Leslie Lamport | 2001 | https://lamport.azurewebsites.net/pubs/paxos-simple.pdf | Consensus simplified |
| P3 | In Search of an Understandable Consensus Algorithm (Raft) — Ongaro & Ousterhout | 2014 | https://raft.github.io/raft.pdf | Raft consensus |
| P4 | Raft thesis (full proofs) — Ongaro | 2014 | https://web.stanford.edu/~ouster/cgi-bin/papers/OngaroPhD.pdf | Raft + variants |
| P5 | Time, Clocks, and the Ordering of Events — Lamport | 1978 | https://lamport.azurewebsites.net/pubs/time-clocks.pdf | Lamport timestamps |
| P6 | Impossibility of Distributed Consensus with One Faulty Process — Fischer, Lynch, Paterson | 1985 | https://groups.csail.mit.edu/tds/papers/Lynch/jacm85.pdf | FLP impossibility |
| P7 | Brewer’s Conjecture & Feasibility of Consistent, Available, Partition-tolerant Web Services — Gilbert & Lynch | 2002 | https://users.ece.cmu.edu/~adrian/731-sp04/readings/GL-cap.pdf | CAP theorem proof |
| P8 | Zab: High-performance broadcast for primary-backup systems | 2011 | https://marcoserafini.github.io/papers/zab.pdf | ZooKeeper protocol |
| P9 | Paxos Made Live (Google Chubby) | 2007 | https://research.google/pubs/paxos-made-live-an-engineering-perspective/ | Production Paxos |
Storage Systems
Streaming & Real-Time
| # | Paper | Năm | URL | Topic |
|---|---|---|---|---|
| P19 | Kafka: a Distributed Messaging System for Log Processing | 2011 | https://notes.stephenholiday.com/Kafka.pdf | Kafka original |
| P20 | MillWheel: Fault-Tolerant Stream Processing at Internet Scale (Google) | 2013 | https://research.google/pubs/millwheel-fault-tolerant-stream-processing-at-internet-scale/ | Stream processing |
| P21 | The Dataflow Model (Google) | 2015 | https://research.google/pubs/the-dataflow-model-a-practical-approach-to-balancing-correctness-latency-and-cost-in-massive-scale-unbounded-out-of-order-data-processing/ | Watermark, windowing |
Cluster & Orchestration
| # | Paper | Năm | URL | Topic |
|---|---|---|---|---|
| P22 | Borg: Large-scale cluster management at Google | 2015 | https://research.google/pubs/large-scale-cluster-management-at-google-with-borg/ | K8s ancestor |
| P23 | Chubby Lock Service (Google) | 2006 | https://research.google/pubs/the-chubby-lock-service-for-loosely-coupled-distributed-systems/ | Distributed lock |
| P24 | Mesa: Geo-Replicated, Near Real-Time, Scalable Data Warehousing (Google) | 2014 | https://research.google/pubs/mesa-geo-replicated-near-real-time-scalable-data-warehousing/ | Streaming OLAP |
Curated Lists (start here)
- Distributed Consensus Reading List (Heidi Howard, Cambridge) — https://github.com/heidihoward/distributed-consensus-reading-list
- Dan Creswell’s Reading List — https://dancres.github.io/Pages/
- Papers We Love — https://github.com/papers-we-love/papers-we-love
- The Morning Paper (Adrian Colyer’s archive) — https://blog.acolyer.org/
3. Engineering Blogs — Production wisdom
TIER-1 (Always relevant)
| # | Blog | URL | Strength |
|---|---|---|---|
| EB1 | AWS Builders Library | https://aws.amazon.com/builders-library/ | Timeouts, retries, jitter, leader election, multi-tenant fairness, cell-based architecture |
| EB2 | Marc Brooker’s blog | https://brooker.co.za/blog/ | Formal methods, Lambda/Aurora internals, “Systems Correctness Practices at AWS” (CACM 2025) |
| EB3 | All Things Distributed (Werner Vogels) | https://www.allthingsdistributed.com/ | Eventually consistent, “now go build” |
| EB4 | Netflix Tech Blog | https://netflixtechblog.com/ | Microservices, chaos engineering, streaming infra |
| EB5 | Cloudflare Blog | https://blog.cloudflare.com/ | Edge, DDoS, networking, transparent post-mortems |
| EB6 | Stripe Engineering | https://stripe.com/blog/engineering | Idempotency, online migrations, API versioning |
| EB7 | High Scalability | http://highscalability.com/ | Case studies kinh điển (“Real-life Architectures”) |
| EB8 | Martin Kleppmann’s blog | https://martin.kleppmann.com/ | DDIA author — distributed locks critique, CRDTs |
| EB9 | Charity Majors / charity.wtf | https://charity.wtf/ | Production engineering, observability |
| EB10 | The Pragmatic Engineer (Gergely Orosz) | https://newsletter.pragmaticengineer.com/ | Big Tech engineering culture, real interview reality |
| EB11 | Martin Fowler | https://martinfowler.com/ | Microservices guide, Patterns of Enterprise Application Architecture |
TIER-2 (Topic-specific)
| # | Blog | URL | Strength |
|---|---|---|---|
| EB12 | Discord Engineering | https://discord.com/blog/category/engineering | Real-time messaging, ScyllaDB migration, Elixir/Rust |
| EB13 | Uber Engineering | https://www.uber.com/blog/engineering/ | Geo-spatial, real-time matching, schemaless DB |
| EB14 | Meta Engineering | https://engineering.fb.com/ | TAO, Memcache, scaling social graph |
| EB15 | LinkedIn Engineering | https://www.linkedin.com/blog/engineering | Kafka origin, Voldemort, Espresso |
| EB16 | Slack Engineering | https://slack.engineering/ | Real-time presence, sharded MySQL, Flannel |
| EB17 | Shopify Engineering | https://shopify.engineering/ | Pod architecture, BFCM scaling |
| EB18 | Figma Engineering | https://www.figma.com/blog/engineering/ | Multiplayer CRDT, Rust live-collab |
| EB19 | CockroachDB Blog | https://www.cockroachlabs.com/blog/ | Distributed SQL, HLC, Raft tuning |
| EB20 | Confluent Blog | https://www.confluent.io/blog/ | Kafka/Flink streaming source-of-truth |
| EB21 | Honeycomb Blog | https://www.honeycomb.io/blog | Observability practitioners |
| EB22 | PayPal Tech (Medium) | https://medium.com/paypal-tech | Feature stores, fraud detection |
| EB23 | AWS Architecture Blog | https://aws.amazon.com/blogs/architecture/ | Reference architectures |
| EB24 | Adrian Cockcroft (Medium) | https://medium.com/@adrianco | Cloud-native, Netflix microservices history |
Specific Stripe posts (must-read for Payment)
- Idempotency keys — https://stripe.com/blog/idempotency
- Online migrations at scale — https://stripe.com/blog/online-migrations
- Designing robust and predictable APIs with idempotency — https://stripe.com/blog/idempotency
- Rate limiters at Stripe — https://stripe.com/blog/rate-limiters
- API versioning — https://stripe.com/blog/api-versioning
Specific Cloudflare posts (must-read for Networking)
- How we built Pingora (Rust HTTP proxy) — https://blog.cloudflare.com/how-we-built-pingora-the-proxy-that-connects-cloudflare-to-the-internet
- Optimizing TCP for high-throughput — https://blog.cloudflare.com/
4. Courses — Online programs
TIER-1 (Foundational)
| # | Course | URL | Notes |
|---|---|---|---|
| C1 | MIT 6.5840 (formerly 6.824) Distributed Systems — Robert Morris, Frans Kaashoek | https://pdos.csail.mit.edu/6.824/ | Lab Raft/MapReduce/Shard KV bằng Go; gold standard |
| C2 | CMU 15-445/645 Database Systems — Andy Pavlo | https://15445.courses.cs.cmu.edu/ | Lectures + BusTub project; #1 cho database internals |
| C3 | System Design Primer (donnemartin) | https://github.com/donnemartin/system-design-primer | 280k+ stars; checklist concepts |
TIER-2 (Interview prep / Bootcamp)
| # | Course | URL | Notes |
|---|---|---|---|
| C4 | ByteByteGo | https://bytebytego.com/ | Alex Xu’s premium platform; visual nhưng nông hơn DDIA |
| C5 | Hello Interview — Evan King & Stefan Mai | https://www.hellointerview.com/ | Pattern-based system design framework |
| C6 | Arpit Bhayani’s System Design Masterclass | https://arpitbhayani.me/masterclass/ | Hands-on, deep technical |
| C7 | System Design School | https://systemdesignschool.io/ | Interview-focused practice |
| C8 | Exponent | https://www.tryexponent.com/ | Mock interviews + content |
5. Specialized Resources by Topic
Observability
- OpenTelemetry Docs — https://opentelemetry.io/docs/ — Standard cho traces/metrics/logs
- Brendan Gregg’s Performance — https://www.brendangregg.com/ — USE method, eBPF observability
- Honeycomb’s Observability Engineering (free O’Reilly book) — https://www.honeycomb.io/observability-engineering-oreilly-book
Security
- OWASP Cheat Sheet Series — https://cheatsheetseries.owasp.org/
- NIST SP 800-207 Zero Trust Architecture — https://csrc.nist.gov/pubs/sp/800/207/final
- NIST SP 800-204C — Implementing Distributed Systems Security
- Google BeyondCorp Papers — https://research.google/pubs/?q=beyondcorp
- CIS Kubernetes Benchmark — https://www.cisecurity.org/benchmark/kubernetes
- RFC 9449 — DPoP (OAuth 2.0 Demonstrating Proof of Possession) — https://datatracker.ietf.org/doc/rfc9449/
- OAuth 2.0 Security Best Current Practice (RFC 9700) — https://datatracker.ietf.org/doc/rfc9700/
Streaming
- Apache Flink Docs — https://flink.apache.org/docs/
- Kafka KIP-500 (KRaft) — https://cwiki.apache.org/confluence/display/KAFKA/KIP-500
- The Log essay (Jay Kreps) — bài essay nền tảng đã cite ở P18
Database Internals
- Andy Pavlo CMU Database Talks — https://www.cs.cmu.edu/~pavlo/
- Postgres Internals (Hironobu Suzuki) — https://www.interdb.jp/pg/
- The Internals of PostgreSQL — https://postgrespro.com/community/books
Consensus & Distributed Systems
- Raft Visualization — https://raft.github.io/ — interactive
- The Secret Lives of Data: Raft — http://thesecretlivesofdata.com/raft/
- etcd raft library — https://github.com/etcd-io/raft
- Jepsen analyses (Kyle Kingsbury) — https://jepsen.io/analyses — DB consistency testing in the wild
Payments
- Stripe API docs — https://stripe.com/docs/api
- Adyen Engineering Blog — https://www.adyen.com/blog/topics/engineering
- PCI DSS v4.0 — https://www.pcisecuritystandards.org/
6. Mapping — Mỗi tuần đọc gì?
Phase 1: Fundamentals
| Tuần | TIER-1 sources | TIER-2 sources |
|---|---|---|
| Tuan-01-Scale-From-Zero-To-Millions | DDIA Ch.1 (Reliable, Scalable, Maintainable) | High Scalability case studies |
| Tuan-02-Back-of-the-envelope | Latency Numbers (Jeff Dean) | Marc Brooker on capacity |
| Tuan-03-Networking-DNS-CDN | Cloudflare blog | RFC 9000 (QUIC) |
| Tuan-04-API-Design-REST-gRPC | Stripe API versioning post | Google API Design Guide |
Phase 2: Components
| Tuần | TIER-1 sources | TIER-2 sources |
|---|---|---|
| Tuan-05-Load-Balancer | Brendan Gregg, AWS ALB docs | NGINX upstream module docs |
| Tuan-06-Cache-Strategy | DDIA Ch.5, Memcached/Redis docs | Facebook Memcache paper |
| Tuan-07-Database-Sharding-Replication | DDIA Ch.5+6, Database Internals Part II | Vitess docs (Citus) |
| Tuan-08-Message-Queue | The Log (Kreps), Kafka paper | Confluent blog, KRaft KIP-500 |
| Tuan-09-Rate-Limiter | Stripe rate limiter post | Token bucket algorithm |
| Tuan-10-Consistent-Hashing | Karger 1997, Jump Consistent Hash 2014 | Cassandra/DynamoDB internals |
| Tuan-Bonus-Consensus-Raft-Paxos | Raft paper, DDIA Ch.9, Paxos Made Simple, MIT 6.5840 | etcd/raft, CockroachDB blog |
Phase 3: Architecture + DevOps + Security
| Tuần | TIER-1 sources | TIER-2 sources |
|---|---|---|
| Tuan-11-Microservices-Pattern | Building Microservices (Newman), Martin Fowler | AWS Builders Library (cell-based) |
| Tuan-12-CICD-Pipeline | Accelerate (Forsgren et al.) | GitOps, Argo CD docs |
| Tuan-13-Monitoring-Observability | Google SRE Books, Observability Engineering | Honeycomb blog, Brendan Gregg eBPF |
| Tuan-14-AuthN-AuthZ-Security | OWASP Cheat Sheets, NIST 800-207 (Zero Trust) | RFC 9449 (DPoP), BeyondCorp |
| Tuan-15-Data-Security-Encryption | NIST 800-57, Cloud KMS docs | Vault docs |
Phase 4: Case Studies
| Case | TIER-1 sources |
|---|---|
| Tuan-16-Design-URL-Shortener | Bitly blog, base62 algorithms |
| Tuan-17-Design-Chat-System | Discord eng (real-time), WhatsApp eng |
| Tuan-18-Design-News-Feed | Meta TAO paper, Twitter timelines |
| Tuan-19-Design-Notification-System | Twilio docs, Apple/Google push specs |
| Tuan-20-Design-Key-Value-Store | Dynamo paper, Cassandra paper, DDIA Ch.5+6+9 |
| Case-Design-Payment-System | Stripe blog (idempotency, migrations), PCI DSS v4.0 |
| Case-Design-Stock-Exchange | LMAX Disruptor paper, “Designing for High Performance” (Martin Thompson) |
| Case-Design-S3-Object-Storage | AWS S3 papers, Erasure coding (Reed-Solomon) |
| Case-Design-Distributed-Message-Queue | Kafka paper, KRaft KIP-500, Confluent blog |
| Case-Design-Ad-Click-Event-Aggregation | MillWheel, Dataflow Model, Flink docs |
| Case-Design-Google-Maps | S2 geometry library, Quadtree papers |
| Case-Design-Proximity-Service | Geohash spec, Uber H3 |
| Case-Design-Web-Crawler | Mercator paper (1999) |
| Case-Design-Search-Autocomplete | Trie data structure, Elasticsearch suggest API |
7. Reading Plan — 12-month progression
Tháng 1-3: Foundations
- DDIA Ch.1-4 (data models, encoding, compression) — đọc song song với Phase 1
- System Design Primer — skim toàn bộ
- Latency Numbers — học thuộc
Tháng 4-6: Components & Distributed Systems
- DDIA Ch.5-9 (replication, partitioning, transactions, distributed trouble, consistency) — core của Phase 2
- Raft paper — đọc kỹ khi học Tuan-Bonus-Consensus-Raft-Paxos
- Database Internals Part II — supplement DDIA
Tháng 7-9: Architecture & Operations
- Google SRE Books — đọc song song Phase 3
- Building Microservices (Newman) — supplement T11
- AWS Builders Library — chọn 5-7 articles theo topic
Tháng 10-12: Mastery & Case Studies
- Streaming Systems (Akidau) — khi học Ad-Click case
- Read 1 Stripe + 1 Cloudflare + 1 Discord engineering post mỗi tuần
- Implement mini-Raft theo MIT 6.5840 lab 2A-2D
- 2-3 Jepsen analyses (Cassandra, MongoDB, etcd)
8. Anti-recommendations — Đừng đọc khi mới bắt đầu
| Nguồn | Tại sao chờ |
|---|---|
| Lamport’s original Paxos paper (1989) | Quá khó hiểu cho người mới — dùng Paxos Made Simple thay |
| TLA+ specifications | Học sau khi đã thoải mái với consensus |
| Spanner paper | Hiểu Raft + linearizability trước, rồi quay lại |
| Kafka source code | Đọc Confluent blog trước, code sau |
| Raw research papers (SOSP, OSDI proceedings) | Bắt đầu với “The Morning Paper” summaries |
9. CS Foundations Reading List
Đây là phần đặc biệt cho CS fundamentals — kiến thức nền cần có TRƯỚC hoặc SONG SONG khi học các bonus chapter nâng cao. Đã tạo 5 file Foundations local trong vault tại
06-CS-Foundations/. Đọc mục này khi cần đào sâu hơn 5 file đó.
9.1 Operating Systems (TIER-1)
| Nguồn | Tác giả | Type | Khi nào dùng |
|---|---|---|---|
| Operating Systems: Three Easy Pieces (OSTEP) | Remzi & Andrea Arpaci-Dusseau | Book (free) | Foundation OS — http://pages.cs.wisc.edu/~remzi/OSTEP/ |
| The Linux Programming Interface | Michael Kerrisk | Book | Linux syscalls reference |
| Computer Systems: A Programmer’s Perspective (CSAPP) | Bryant & O’Hallaron | Book | OS + Architecture combined |
| Modern Operating Systems | Tanenbaum | Book | Classic textbook |
| Linux Kernel Source | — | Code | Đọc fs/ext4, mm/, kernel/sched/ |
| MIT 6.S081 | Robert Morris, Frans Kaashoek | Course (free) | Build mini-OS xv6 — https://pdos.csail.mit.edu/6.S081/ |
| Brendan Gregg’s site | — | Online | https://www.brendangregg.com/ |
| bcc / bpftrace examples | iovisor | Tool | eBPF tracing |
Local file: Tuan-Foundations-OS-Essentials
9.2 Computer Architecture (TIER-1)
| Nguồn | Tác giả | Type | Khi nào dùng |
|---|---|---|---|
| Computer Systems: A Programmer’s Perspective (CSAPP) | Bryant & O’Hallaron | Book | Bible cho CS undergrad |
| Computer Architecture: A Quantitative Approach | Hennessy & Patterson | Book | Comprehensive, Turing-Award authors |
| What Every Programmer Should Know About Memory | Ulrich Drepper | Paper (free) | https://people.freebsd.org/~lstewart/articles/cpumemory.pdf |
| Systems Performance (2nd ed) | Brendan Gregg | Book | Production performance engineering |
| Agner Fog’s Optimization Manuals | Agner Fog | Free | https://www.agner.org/optimize/ |
| CMU 15-418 Parallel Computer Architecture | — | Course (free) | http://www.cs.cmu.edu/~418/ |
| MIT 6.172 Performance Engineering | — | Course (free) | https://ocw.mit.edu/courses/6-172-performance-engineering-of-software-systems-fall-2018/ |
| NVIDIA CUDA Programming Guide | NVIDIA | Free | GPU programming |
| LMAX Disruptor | Martin Thompson | Online | Mechanical sympathy in action — https://lmax-exchange.github.io/disruptor/ |
Local file: Tuan-Foundations-Computer-Architecture
9.3 Database Internals (TIER-1)
| Nguồn | Tác giả | Type | Khi nào dùng |
|---|---|---|---|
| Database Internals | Alex Petrov | Book | Most comprehensive — https://www.databass.dev/ |
| DDIA Ch.3 (Storage), Ch.7 (Transactions) | Kleppmann | Book | Theory + practice |
| Use The Index, Luke! | Markus Winand | Free | https://use-the-index-luke.com/ |
| CMU 15-445 Database Systems | Andy Pavlo | Course (free) | https://15445.courses.cs.cmu.edu/ |
| Readings in Database Systems (Red Book) | Hellerstein, Stonebraker | Free | http://www.redbook.io/ |
| The Internals of PostgreSQL | Hironobu Suzuki | Free book | https://www.interdb.jp/pg/ |
| High Performance MySQL (4th ed) | Schwartz et al. | Book | Practical MySQL |
| Designing for high performance (Andy Pavlo talks) | YouTube | Talks | Stay current |
| RocksDB Wiki | Online | LSM internals — https://github.com/facebook/rocksdb/wiki |
Papers cốt lõi:
- O’Neil et al., The LSM-Tree (1996)
- Mohan et al., ARIES (1992)
- Stonebraker, POSTGRES (1986)
- Bayer & McCreight, B-tree (1972)
Local file: Tuan-Foundations-Database-Internals
9.4 Compilers & Programming Languages (TIER-1)
| Nguồn | Tác giả | Type | Khi nào dùng |
|---|---|---|---|
| Crafting Interpreters | Bob Nystrom | Free book | https://craftinginterpreters.com/ |
| Compilers: Principles, Techniques, and Tools (Dragon Book) | Aho et al. | Book | Classic theory |
| Engineering a Compiler | Cooper & Torczon | Book | Modern compiler approach |
| Programming Language Pragmatics | Scott | Book | PL theory broadly |
| The Garbage Collection Handbook | Jones, Hosking, Moss | Book | GC algorithms reference |
| Modern Compiler Implementation in Java | Appel | Book | Hands-on |
| LLVM Tutorial | LLVM team | Free | https://llvm.org/docs/tutorial/ |
| V8 Blog | Online | https://v8.dev/blog/ | |
| WebAssembly Spec | W3C | Free | https://webassembly.org/specs/ |
Source code worth studying:
- LLVM (modular compiler infra)
- V8 source
- Wasmtime (Rust Wasm runtime)
- HotSpot JVM
- Go compiler
Local file: Tuan-Foundations-Compilers-VMs
9.5 Mathematics (TIER-1 cho ML/AI, TIER-2 cho khác)
| Nguồn | Tác giả | Type | Khi nào dùng |
|---|---|---|---|
| Mathematics for Machine Learning | Deisenroth, Faisal, Ong | Free book | https://mml-book.com/ |
| Concrete Mathematics | Knuth, Graham, Patashnik | Book | Discrete math classic |
| All of Statistics | Larry Wasserman | Book | Stats foundation |
| Information Theory, Inference, and Learning Algorithms | David MacKay | Free book | http://www.inference.org.uk/itila/ |
| Probabilistic Programming for Hackers | Davidson-Pilon | Free | https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers |
| Introduction to Probability | Blitzstein (MIT) | Book + course | Statistical foundations |
| 3Blue1Brown | Grant Sanderson | YouTube | Visual intuition — https://www.3blue1brown.com/ |
| Khan Academy Linear Algebra | — | Free course | Refresh basics |
| MIT 18.06 Linear Algebra | Gilbert Strang | Free course | Classic |
Specific topics:
- Birthday paradox: Wiki + Bloom filter math
- Queueing theory: Neil Gunther’s Universal Scalability Law book
- Information theory: Shannon’s original paper (free)
- Galois fields (for erasure coding): Reed-Solomon papers
Local file: Tuan-Foundations-Math-for-Architects
9.6 Networking Deeper (TIER-2)
Vault có T03 cover basics. For deeper:
| Nguồn | Type |
|---|---|
| TCP/IP Illustrated (Stevens, 3 vol) | Book — TCP internals |
| Computer Networking: A Top-Down Approach (Kurose & Ross) | Textbook |
| High Performance Browser Networking (Ilya Grigorik) — free | https://hpbn.co/ |
| BGP (Beijnum) | BGP reference |
| RFC documents | Specifications |
| Cloudflare Blog | Production networking |
9.7 Cryptography (TIER-2)
| Nguồn | Type |
|---|---|
| Cryptography Engineering (Ferguson, Schneier, Kohno) | Book — practical |
| Real-World Cryptography (David Wong) | Modern crypto |
| A Graduate Course in Applied Cryptography (Boneh, Shoup, free) | https://toc.cryptobook.us/ |
| Stanford CS155 / CS255 | Free courses |
9.8 Concurrency Deep (TIER-2)
| Nguồn | Type |
|---|---|
| The Art of Multiprocessor Programming (Herlihy & Shavit) | Lock-free deep |
| Java Concurrency in Practice (Goetz) | Java threading |
| Programming with POSIX Threads (Butenhof) | C threading |
| C++ Concurrency in Action (Williams) | C++ threading |
10. Reading Plan — CS Foundations First
Đề xuất: nếu em muốn đào sâu CS Foundations TRƯỚC khi đào tiếp bonus chapters, theo thứ tự dưới đây.
Đợt 1 (Tháng 1-2): OS + Computer Architecture
- Đọc OSTEP chapters 13-23 (virtual memory) song song Tuan-Foundations-OS-Essentials
- CSAPP Chapter 6 (memory hierarchy) song song Tuan-Foundations-Computer-Architecture
- Output: Hiểu sâu PagedAttention, eBPF, NUMA
Đợt 2 (Tháng 3-4): Database Internals
- Database Internals (Petrov) — read cover-to-cover
- CMU 15-445 lectures (free YouTube)
- Output: Hiểu sâu Postgres, Aurora, ClickHouse internals
Đợt 3 (Tháng 5): Compilers + VMs
- Crafting Interpreters Part 1 (build interpreter)
- Skim V8 blog
- Output: Hiểu sâu Wasm, V8, GC, JIT
Đợt 4 (Tháng 6): Math (ML focus nếu làm AI)
- Mathematics for Machine Learning Ch.1-4
- 3Blue1Brown linear algebra series
- Output: Hiểu sâu vector search, attention, embedding
Đợt 5 (Ongoing): Networking + Crypto + Concurrency
- Đọc theo nhu cầu (project-based)
11. Cập nhật
- 2026-05-01 — Tạo file index ban đầu sau review System Design Mastery vault
- 2026-05-01 (later) — Add CS Foundations reading list (Sections 9-10) + 5 local files trong
06-CS-Foundations/ - Future: Khi đọc thêm 1 nguồn, thêm vào table tương ứng
Liên hệ: MOC-System-Design (map tổng) · Roadmap (lộ trình 20 tuần) · Tuan-Foundations-OS-Essentials · Tuan-Foundations-Computer-Architecture · Tuan-Foundations-Database-Internals · Tuan-Foundations-Compilers-VMs · Tuan-Foundations-Math-for-Architects