Sefism is free for learners. We are here to help you grow, one step at a time.Join for free
Sefism.

Roadmap · Specialise

System design

Opens with credits

For engineers who can build a service and want to reason about how systems behave at scale, under failure and across teams. By the end you can take a vague product requirement to a defensible architecture and explain every trade-off in it.

Curated by Tauseef Fayyaz7 stages, 66 topics~13 months at a few hours a week

By the end, you will be able to

  • Estimate traffic and storage for a product and turn the numbers into decisions about caching, databases and partitioning
  • Choose a database, replication setup, shard key and cache for a workload, and say what goes stale and why that is acceptable
  • Explain what a distributed system does under partitions, slow replicas and retries, using quorums, consensus and idempotency
  • Specify timeouts, retries, circuit breakers, SLOs and tracing for a service so it degrades gracefully and failures are visible
  • Design a feed, chat app or ride-hailing service end to end in 45 minutes: requirements, estimates, diagram, bottlenecks and trade-offs

The path

7 stages, in the order to learn them. Open one to start.

  1. 1Core concepts and building blocksThe vocabulary every design conversation uses and the components that sit in front of every system. Each concept here is a trade-off you will reach for in every later stage.10 topics · ~7 weeks
  2. 2Data storage, partitioning and replicationWhere data lives and how it is modelled, indexed, split and copied across machines. Most scaling problems end up here, so give this stage the most care.10 topics · ~2 months
  3. Networking, APIs and messagingHow a request finds a server and how components talk to each other: DNS, protocols, API styles, real-time connections, and queues for work that can wait.9 topics · ~6 weeksOpens with credits
  4. Distributed systems fundamentalsWhat changes when data lives on many machines that fail independently: consistency models, quorums, consensus and the hashing that lets a cluster grow. This stage makes the boxes on a diagram honest.9 topics · ~2 monthsOpens with credits
  5. Architecture and resilience patternsHow to split a system into services and keep it standing when parts of it fail. Every pattern here solves one problem and creates another, so learn both sides.10 topics · ~2 monthsOpens with credits
  6. Performance, observability and safe releasesMake a system fast at the tail, see inside it in production and change it without an outage. This is what separates a diagram from a system someone is on call for.9 topics · ~7 weeksOpens with credits
  7. Designing real systems end to endPut every stage together on complete problems with one repeatable framework. Produce designs against the clock rather than reading them, then compare your choices with how real companies built theirs.9 topics · ~3 monthsOpens with credits
Keep reading

5 more stages, 46 more topics, free with an account.

You have seen the open stages of the System design roadmap. Every topic it covers is listed above, and an account opens the rest: what each topic means, a question to check yourself, the courses, the practice and Tauseef's advice for every stage. Early access is open: sign up and your account is active shortly after.

Everything here is free to learn from. A few things, like adding a roadmap, keeping a cheat sheet or asking Tauseef a question, use credits. You get 15 when you join, your first roadmap is free, and if you are learning seriously and run out, you can ask for more. Credits only make sure the platform goes to people who are actually learning.

Picked from the other libraries by shared topics.

Work with me

Stuck on something specific?

Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.

  • 1:1 Mentorship
  • Fresh Graduate Mentorship
  • Career Guidance

Brand deals, promos and partnerships: tauseeffayyaz@gmail.com