Reading list for anyone designing practical distributed systems.

Developing a distributed system

Time in a distributed system

Understanding a distributed system

The observability and controllability of a system are mathematical duals - Observability on wikipedia

Scaling a distributed system

People in a distributed system