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