This series explores the most influential papers in software systems — but it’s not just a reading list.

It’s a deliberate path. We start with how we think about complexity, abstraction, and programming, and build toward how we coordinate machines across space and time.

These aren’t just papers. They’re pivots in the history of computing — and they’ve shaped how real systems are built today.

Each post is my own take: what the paper says, why it mattered, and how it still echoes in modern systems. I’ll update this page as new writeups go live.


Start Here: Philosophy & Thinking Models

Fundamental Concepts in Systems

  • End-to-End Arguments in System Design (coming soon)
  • The Design Philosophy of the DARPA Internet Protocols (coming soon)
  • The Datacenter as a Computer (coming soon)
  • Exokernel (coming soon)
  • Microkernels and Mach (coming soon)

Storage, File Systems and Caching

  • RAID (coming soon)
  • Fast File System for Unix (coming soon)
  • Google File System (GFS) (coming soon)
  • BigTable (coming soon)
  • Scaling Memcache (coming soon)
  • Chubby (coming soon)
  • Consistent Hashing (coming soon)
  • Snowflake Architecture (coming soon)
  • Temporal: Cadence at Uber (coming soon)

Distributed Systems and Scalability

  • MapReduce (coming soon)
  • TAO (coming soon)
  • Kafka (coming soon)
  • Amazon Dynamo (coming soon)
  • DynamoDB (coming soon)
  • Megastore (coming soon)
  • F1 (coming soon)
  • Google Spanner (coming soon)
  • Borg (coming soon)

Consensus, Time and Ordering

  • Time, Clocks, and the Ordering of Events (coming soon)
  • FLP Impossibility (coming soon)
  • Paxos (coming soon)
  • Raft (coming soon)
  • TLA+ (coming soon)

Want to go deeper or suggest a paper I missed? Connect on LinkedIn.

This is a living series. I’ll keep it growing — one paper at a time.