Boost Academy
LearningAssessmentsProfile
Back
  • Live

System Design

8h of live classes·HACK A BOSS·Spanish

Skills you will learn

  • System Design

Schedules

You need an active plan

To access live courses you need an active plan. We're working on making plans available soon — stay tuned.

There are no open calls right now, but don't miss out: save this course and we'll notify you as soon as a call opens.

Description

Learning objectives

Syllabus

Technical requirements

Prerequisites

Schedule details

Resources

No resources are available yet for this schedule

Curso práctico para diseñar sistemas fiables y eficientes a gran escala. El alumno aprende a traducir una necesidad de negocio en requisitos claros, producir una arquitectura de alto nivel con diagramas defendibles, razonar sobre escalabilidad y resiliencia, e integrar servicios externos con criterios de robustez. Los entregables son artefactos de diseño —diagramas, supuestos, riesgos y plan de evolución— independientes del stack de implementación.

Al finalizar el curso, el participante será capaz de:

  • Transformar una necesidad de negocio en requisitos funcionales y no funcionales con alcance definido
  • Diseñar una arquitectura de alto nivel (componentes, límites y flujo de datos) explicando trade-offs
  • Analizar la escalabilidad del sistema: cargas, cuellos de botella, caching, colas y procesamiento asíncrono
  • Diseñar con fiabilidad en mente: timeouts, retries, circuit breakers, idempotencia y degradación controlada
  • Plantear integraciones con servicios externos gestionando contratos, versionado y dependencias
  • Producir entregables revisables por un equipo: diagramas, supuestos, riesgos y un plan de evolución básico
  1. Fundamentos de System Design — requisitos funcionales y no funcionales, descomposición del sistema y diagramas C4 (contexto y contenedores)
  2. Sistemas escalables — estimación de capacidad, escalado horizontal vs vertical, caching, colas y datos a escala
  3. Fiabilidad e integraciones externas — resiliencia, idempotencia, contratos de API, versionado y observabilidad como parte del diseño
  4. Caso integrador — diseño end-to-end completo: componentes, decisiones clave, riesgos, plan de evolución y defensa del diseño
  • Herramienta de diagramas: Miro, Excalidraw, Draw.io o similar
  • Editor de texto o Markdown para documentar decisiones y supuestos

→ AED01 — Algoritmos y Estructuras de Datos (Iniciación, 8 h)

  • Selecciona la estructura de datos apropiada según el problema

  • Interpreta la complejidad temporal y espacial de algoritmos básicos → BPC01 — Buenas prácticas y Clean Code (Intermedio, 8 h)

  • Reduce acoplamiento y aumenta cohesión mediante modularización apropiada

  • Identifica code smells y prioriza acciones de refactorización en código existente

  • Conocimientos básicos de APIs REST/HTTP a nivel conceptual

  • Familiaridad con bases de datos relacionales o NoSQL a nivel de conceptos básicos de consulta

  • Haber trabajado en un proyecto con varios componentes (API + BD + servicios externos) (recomendable)