System Design
This is the "big picture" view of software components coming together to form a production system. In this thread you will learn how the front end, back end, database (persistence), and other production/cloud components are orchestrated to create a functioning system.
Understanding how systems of components interact allows you to build applications that are fast, secure, and capable of handling many users. In the industry, system design knowledge is essential for architecting modern platforms and is a major focus of high-level engineering interviews.
System design concerns will pick-up as we get deeper into the course.
Readings
Lessons
| Topic |
|---|
| LS05 Designing with Layers and Composition |
| LS10 HTTP API Design |
| LS11 Dependency Injection Lab |
| LS12 API Design Lab Day |
| LS13 API Implementation Lab Day |
| LS14 Testing with Dependency Injection |
Tasks
| Topic |
|---|
| TK06 API Design (Part 1) |
| TK06 API and Service-layer Implementation (Part 2) |