LEVEL 11 · BACKEND ENGINEERING

Course Core

Software design and architecture

Give code a shape that survives growth: design principles, SOLID and design patterns solving real problems, layered and clean architecture, architecture styles, and a small framework you build yourself so no framework is magic.

0 of 12 lessons done

Start lesson 1 →

When you finish, you can

  • Spot high coupling and low cohesion, and refactor it
  • Apply SOLID, DRY, KISS and YAGNI with judgement
  • Use factory, builder, adapter, decorator, proxy, strategy, observer, command and chain of responsibility where they solve a problem
  • Structure a backend in layers with ports and adapters
  • Compare monoliths, modular monoliths, microservices and event-driven systems
  • Build and explain the parts of a backend framework

You build: A miniature TypeScript framework with a container, router, middleware and validation

Course checkpoint

Prove you can move on. The checkpoint picks 20 questions at random from every lesson in this course. Get 16 right to pass. Your result is saved in this browser only.