Software System Design

Johns Hopkins · EN.601.425 · Fall 2023

Modern software systems design, with an emphasis on designing large-scale systems, weighing common design trade-offs, and tackling system design challenges: non-functional requirements, databases and scaling, API design, distributed systems concepts, architecture patterns, and case studies such as a URL shortener.