Why System Design Feels Impossible for Junior Engineers

This is the free v1 video series. The current Course I rebuilds the same framework with hands-on labs, an AI-graded assessment, and a 3-part design challenge. See Course I →

Summary

Most junior engineers can write code. Few can confidently sketch how a real system fits together. The skill that separates the two is called system design, and it is the kind of thing engineers usually only pick up after years of on-the-job exposure to messy production systems. The result is a wide and unnecessary gap between what bootcamps and CS programs teach and what teams actually expect.

This first lesson lays out the case for closing that gap intentionally. Kay introduces himself as a UC Berkeley lecturer and engineering manager with 15+ years of industry experience, and explains why he built this course: junior engineers already have the hardest skill (the ability to write code), but they are stuck because no one has taught them the lens that turns code into architecture. The rest of the course is the framework that lens is built on.

By the end of the seven lessons, you will be able to look at any application — Instagram, Netflix, Uber, Stripe — and see the same handful of building blocks underneath, instead of an impenetrable wall of "real engineering."

Key takeaways

You already have the hardest skill in software, which is the ability to write code. What is missing is the lens to see how the code fits together.