Course Objectives

Introduction

System Design Course for Junior Engineers

Kay Ashaolu

Welcome!

  • Welcome to this unique course focused on system design tailored for junior engineers.

  • Historically left to senior and more experienced engineers

  • We aim to demystify system design for junior engineers by breaking it down into well-understood building blocks connected to form cohesive systems

What are Building Blocks?

  • Building blocks are the individual components that form a system.

  • Each building block has a specific role within the system.
  • Connecting building blocks creates a cohesive, end-to-end system.

Holistic View of Systems

  • Looks at the system end-to-end holistically.
  • Focuses on how building blocks interact to form a cohesive whole.
  • Assesses whether the system effectively fulfills the requirements of the system in practice.

Beyond Lines of Code

  • Trades off deep code focus for broader system understanding.
  • Helps in seeing the bigger picture of application functionality.
  • Essential for identifying system-wide issues and optimizations.

Course Objectives

  • Introduce a framework for system design centered around building blocks.
  • Help you understand and build componentized, scalable, real-world systems using building blocks.
  • Provide a theory of intuitively understanding the inner workings of these critical building blocks.

Why Is This Course Needed?

  • Overwhelming array of complex technologies and tools.
  • Intimidating for junior engineers to keep up.
  • Traditional learning relies on the apprentice model, which takes time.

Apprentice Model Limitations

  • Relies on working closely with senior engineers, when available.
  • Learning this way can be slow and inconsistent.
  • Other professions have more structured learning paths.

Training Gaps in System Design

  • Computer Science path focuses more on theory than practice.
  • Coding Bootcamp path cover practical skills but lack holistic system design.
  • Self Driven path attempts to gain intuition by isolated practice.

This Course's Solution

  • Provide a simple framework for understanding systems.
  • Develop senior-level intuition without years of experience.
  • Gain holistic and building block understanding early in your career.

Course Goals

  • Empower you to understand applications end-to-end.
  • Learn fundamental building blocks: their workings, strengths, and weaknesses.
  • Build that senior level intuition usually gained through years of experience.

Introduction: Course Objectives

By kayashaolu

Introduction: Course Objectives

  • 2