Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Udacity

Software Architecture Patterns

via Udacity

Overview

Design systems that scale beyond a single codebase. Learn how to think like a software architect by exploring proven architectural patterns, cloud-native design, and real-world system tradeoffs. Model applications using monolithic and event-driven architectures, diagram complex systems, and understand the foundations of microservices and serverless computing. Design data pipelines and storage strategies, reason about machine learning system architecture, and make informed choices around caching, CDNs, IoT, and blockchain systems. By the end, you’ll be equipped to move from "working code" to well-designed, resilient architectures fit for modern software systems.

Syllabus

  • Introduction to Software Architecture Patterns
    • Define what software architecture is and why it matters. Explore foundational patterns, including MVC, layered, and event-driven architectures, to build intuition for structuring real-world systems.
  • Communicating Software Architecture
    • Turn architectural ideas into clear diagrams. Learn when to use sequence, event flow, and system diagrams—and how to create them with Mermaid and D2.
  • Microservices and Modular Design Patterns
    • Design modular systems with microservices. Explore when to split systems apart, how services communicate, and the tradeoffs around resilience, consistency, and performance.
  • Cloud-Native Architectural Patterns
    • Don't treat the cloud as an afterthought. Design cloud-native systems using 12-factor principles, stateless services, scalable architectures, and cost-efficient patterns.
  • Data and AI Architecture Patterns
    • Design data, machine learning, and AI systems by choosing the right storage, pipelines, and architectures—covering batch vs. streaming data, model serving, orchestration, and observability.
  • Distributed Architecture Patterns
    • Explore distributed system patterns through CDNs, IoT networks, and blockchain architectures, learning how specialized constraints shape real-world architectural decisions.
  • Real-Time Financial Fraud Detection - Solution Design
    • Design a real-time, cloud-native fraud detection architecture for a bank, balancing low latency, high throughput, compliance, observability, and elastic scaling using modern architectural patterns.

Taught by

Liam Stevens

Reviews

Start your review of Software Architecture Patterns

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.