Principles of Computer Systems Design
Summary :This lecture introduces foundational design principles of computer systems such as modularity, abstraction, layering, virtualization, hierarchy, concurrency, caching, indexing, replication, and logging to build robust systems.