Courses Frontend Masters

Backend System Design

Develop system-thinking skills to design complex backend distributed systems. Learn to handle scaling, data storage, reliability, performance, security, and asynchronous workflows, and understand the tradeoffs behind each architecture decision so you can approach complex system design with confidence.

Intermediate Level 7h 17m 4.90 🌐 EN

What you'll learn

  • Develop system-thinking skills for complex backend design challenges
  • Understand scaling, data storage, reliability, and performance tradeoffs
  • Learn to design distributed systems with caches, load balancers, and replicas
  • Define functional and non-functional requirements for real-world systems
  • Model data, choose protocols, and design APIs and endpoints
  • Implement security, authentication, authorization, and HTTPS termination
  • Use asynchronous workflows with queues, workers, and message brokers
  • Practice system design via exercises like URL shorteners and video upload services

Skills you'll gain

  • Recognize and model systems and their components in diagrams
  • Define and translate business, functional, and non-functional requirements
  • Design distributed systems using clients, servers, databases, caches, and load balancers
  • Apply CAP theorem and reason about consistency, availability, and tradeoffs
  • Choose and model relational vs non-relational databases and apply sharding and replication
  • Design caching layers, invalidation strategies, and scaling approaches
  • Implement secure architectures with HTTPS termination and auth strategies
  • Design asynchronous workflows with queues, workers, and message brokers for tasks like video processing

Prerequisites

  • Basic understanding of web applications and HTTP
  • Familiarity with databases and CRUD-style applications
  • General programming experience building backend or fullstack apps

Who this course is for

  • Backend and fullstack engineers preparing for system design interviews
  • Developers aiming to grow into senior or staff-level backend roles
  • Engineers who want to design scalable, reliable distributed systems
Pricing varies
Go to Course

You'll be redirected to Frontend Masters

Provider

Frontend Masters

Related Courses

Python Bootcamp

Python Bootcamp covers fundamentals of Python programming, including control structures, advanced data types, functions, modules, packages, multithreading, exception handling, file handling, GUI design, and database connectivity, preparing learners for future work in data science and machine learning.

SYBGEN Inc.

Systems Engineering

This course introduces Systems Engineering principles across the lifecycle of complex systems, covering system design, architecture, requirements analysis, modeling, verification, lifecycle models (Waterfall, V-Model, Spiral, Agile), SysML, risk management, trade-off analysis, and a Smart Home Security System project.

Udacity

IT Systems Design and Analysis

Prepare to design, analyze, and evaluate IT systems using data flow diagrams, ERDs, UML, and feasibility analysis. Learn to assess existing systems, identify inefficiencies, compare solution alternatives, and deliver a digital transformation strategy through a hands-on final project.

Coursera ⭐ 4.70

Hands On FullStack Development Course with Infrastructure Management Product implementation

A 180-day, project-first full-stack infrastructure course where you build and operate production-grade services with CI/CD, testing, observability, and operational playbooks, aimed at taking you from toy projects to real-world deployment experience.

System Design Roadmap ⭐ 4.80

Learn Typescript

Hands-on introduction to TypeScript fundamentals and their application in real projects. Learn core typing concepts, advanced TypeScript features, and how to use TypeScript with React and Express while building safer, more maintainable JavaScript applications.

Coursera ⭐ 4.50

AI Engineering Course

Designed to help software engineers transition to AI engineering, with detailed breakdowns of vector databases, indexing, large language models, attention, and core optimizations so you can understand how LLMs work and use them to build real-world applications.

InterviewReady ⭐ 4.73