Sie haben den system-design-primer komplett gelesen, können aber keine Architektur unter Zeitdruck erklären?
Die schnellste Lösung: Lernen Sie nicht nach README-Reihenfolge, sondern nach Ziel. In der ersten Woche üben Sie Anforderungen und Hochskalierung, danach vertiefen Sie nur die Komponenten, die zu Ihrem Interview, Ihrem Projekt oder Ihrem AI-Service passen.
Diese Anleitung richtet sich an drei Gruppen:
- Entwickler, die ein System-Design-Interview vorbereiten und eine belastbare Antwortstruktur brauchen.
- Backend- und Full-Stack-Entwickler, die verstreute Architekturkenntnisse anhand realer Projektprobleme ordnen möchten.
- Teams, die RAG- oder AI-Agent-Services bauen und klassische System-Design-Konzepte auf hohe Latenz, fehleranfällige Modellaufrufe und ungleichmäßige Last übertragen müssen.
Der system-design-primer auf GitHub ist dafür eine starke Wissenssammlung. Er ist jedoch keine vollständige Lernmethode und keine offizielle Architekturvorgabe für ein bestimmtes AI-Framework. Ihre Lernreihenfolge muss deshalb vom erwarteten Ergebnis ausgehen.
system-design-primer 2026: Die richtige Route hängt vom Ziel ab
Der wichtigste Unterschied liegt nicht zwischen Junior und Senior, sondern zwischen den Aufgaben, die Sie am Ende lösen müssen.
Für ein Interview zählt, ob Sie in einer begrenzten Zeit strukturiert denken und Ihre Entscheidungen erklären. Für die Berufspraxis zählt, ob Sie ein bestehendes System verbessern können, ohne neue Risiken zu verstecken. Für eine AI-Systemarchitektur zählt zusätzlich, dass Modellaufrufe langsam ausfallen, Kosten verursachen und häufig nicht deterministisch reagieren.
Der Repository-Inhalt deckt unter anderem Skalierung, Latenz und Durchsatz, Verfügbarkeit und Konsistenz, DNS, Load Balancing, Datenbanken, Caching, asynchrone Verarbeitung und System-Design-Fragen ab. Die Maintainer empfehlen selbst, zunächst breit zu lernen und anschließend je nach Zeit, Erfahrung und Ziel in ausgewählten Bereichen tiefer zu werden. Die Lern- und Interviewhinweise im Repository sind daher eher ein Rahmen als ein verbindlicher Kursplan.
Route A: Für Interviews – erst Ausdruck, dann Tiefe
Wenn Sie in den nächsten Wochen ein System-Design-Interview haben, beginnen Sie nicht mit Datenbankdetails oder einer langen Liste von Cloud-Diensten. Sie brauchen zuerst eine wiederholbare Gesprächsstruktur.
Lernen Sie in dieser Reihenfolge:
- Anforderungen, Nutzergruppen und Nutzungsmuster klären.
- Funktionale und nichtfunktionale Anforderungen trennen.
- Datenvolumen, Request-Muster und erwartete Latenz schätzen.
- Eine grobe Architektur mit den wichtigsten Komponenten zeichnen.
- Einen kritischen Pfad auswählen und vertiefen.
- Engpässe, Ausfälle und Skalierungsoptionen diskutieren.
- Entscheidungen mit Alternativen und Nachteilen begründen.
Diese Reihenfolge entspricht den zentralen Interview-Schritten des Projekts: Anforderungen und Annahmen sammeln, ein High-Level-Design erstellen und danach ausgewählte Bereiche vertiefen. Die offizielle Anleitung zur Interviewstruktur beschreibt außerdem, dass das Gespräch offen ist und von Ihnen geführt werden sollte.
Was Sie zuerst üben sollten
Nehmen Sie eine Aufgabe aus dem Repository, zum Beispiel einen URL-Kürzer, eine Timeline, einen Webcrawler oder ein Benachrichtigungssystem. Lesen Sie die Lösung nicht sofort.
Bearbeiten Sie die Aufgabe zunächst in drei Durchläufen:
- Durchlauf 1: zehn Minuten für Anforderungen und Annahmen.
- Durchlauf 2: zehn bis fünfzehn Minuten für die Komponenten und Datenflüsse.
- Durchlauf 3: zehn Minuten für einen Engpass und einen Ausfallfall.
Die Zeitangaben sind keine offiziellen Vorgaben des Projekts, sondern ein praktikables Trainingsformat. Entscheidend ist, dass Sie jede Übung mit einer Aufzeichnung oder einem schriftlichen Protokoll beenden.
Prüfen Sie anschließend nicht, ob Ihre Zeichnung identisch mit dem Beispiel ist. Prüfen Sie stattdessen:
- Haben Sie die wichtigsten Anforderungen erkannt?
- Ist klar, welche Daten wo gespeichert werden?
- Können Sie erklären, warum Sie synchron oder asynchron arbeiten?
- Haben Sie einen realistischen Engpass benannt?
- Haben Sie eine Alternative mit einem konkreten Nachteil verglichen?
Erfahrung: Eine fremde Architektur auswendig zu zeichnen hilft nur so lange, bis der Interviewer eine Anforderung verändert. Trainieren Sie deshalb dieselbe Aufgabe mit mindestens einer zusätzlichen Einschränkung, etwa strengeren Latenzzielen oder regionaler Datenhaltung.
Route B: Für Berufspraxis – vom Fehlerbild zum Kapitel
Wenn Sie bereits an einem Produkt arbeiten, ist ein vollständiger Durchlauf des system-design-primer meist ineffizient. Ihre Anwendung hat schon ein konkretes Problem: zu hohe Latenz, überlastete Datenbank, ungleichmäßige Last, fehlerhafte Hintergrundjobs oder zu komplexe Deployments.
Beginnen Sie mit dem Fehlerbild und wählen Sie danach die passenden Themen.
- Hohe Latenz: Latenz und Durchsatz, Caching, Datenbankindizes, Reverse Proxy und asynchrone Verarbeitung.
- Hohe Datenbanklast: Cache-Strategien, Replikation, Partitionierung, Denormalisierung und Schreib-/Leseverteilung.
- Lastspitzen: Load Balancing, horizontale Skalierung, Warteschlangen, Backpressure und Rate Limiting.
- Fehlgeschlagene Hintergrundaufgaben: Message Queues, Wiederholungen, Dead-Letter-Verarbeitung und Idempotenz.
- Unklare Ausfälle: Health Checks, Failover, Replikation, Monitoring und Wiederherstellungsziele.
- Zu viele Services: Service Discovery, Kommunikationsmuster, zentrale Konfiguration und zusätzliche Betriebsrisiken.
Die Stärke des Projekts liegt gerade in den Trade-offs. Ein Cache kann Datenbankzugriffe reduzieren, erzeugt aber Fragen zur Gültigkeit und Invalidierung. Eine Queue entkoppelt Produzenten und Konsumenten, führt aber zu Verzögerungen, Wiederholungen und möglicher Duplikatverarbeitung. Ein Microservice kann organisatorisch sinnvoll sein, erhöht jedoch den Betriebsaufwand. Diese Zusammenhänge werden im Abschnitt zu Skalierbarkeit, Caching und Anwendungsschichten anhand mehrerer Muster erläutert.
Ihre Lernregel für reale Systeme
Jede Lerneinheit muss ein Dokument für Ihr bestehendes System erzeugen. Schreiben Sie nicht „Caching verbessert die Performance“, sondern:
- Welche Anfragen sind häufig?
- Was ist die Quelle der Wahrheit?
- Wie lange darf ein Eintrag veraltet sein?
- Was passiert bei einem Cache-Ausfall?
- Wie messen Sie Cache-Hit-Rate und Fehlerrate?
- Welche Daten dürfen aus Datenschutzgründen nicht in den Cache?
Ein nützliches Ergebnis ist eine einseitige Entscheidungsnotiz:
Problem: Welche messbare Störung liegt vor?
Annahme: Welche Ursache vermuten Sie?
Optionen: Welche zwei oder drei Lösungen sind möglich?
Entscheidung: Welche Lösung wählen Sie und warum?
Risiko: Was kann dadurch schlechter werden?
Validierung: Welcher Test soll die Entscheidung bestätigen?
Damit lernen Sie System Design nicht als Sammlung von Definitionen, sondern als Begründung von Architekturentscheidungen.
Route C: Für AI-Systemarchitektur – klassische Bausteine neu gewichten
Für RAG-Pipelines und AI-Agent-Services sollten Sie den system-design-primer nicht als vollständige Beschreibung moderner AI-Systeme lesen. Das Repository behandelt allgemeine System-Design-Prinzipien. Es ist keine offizielle Spezifikation für Agenten, Embedding-Pipelines oder ein bestimmtes LLM-Framework.
Die Grundlage bleibt trotzdem relevant. Priorisieren Sie diese Themen:
- Asynchronität und Warteschlangen: Dokumentverarbeitung, Embeddings und lange Agent-Aufgaben sollten nicht zwangsläufig im synchronen Web-Request laufen.
- Caching: Wiederholte Retrieval-Anfragen, Konfigurationen, Sitzungsdaten und bereits berechnete Zwischenergebnisse können unterschiedliche Cache-Regeln benötigen.
- Speicher: Vektordatenbank, Dokumentenspeicher, Metadatenbank und Objektablage haben nicht dieselben Anforderungen.
- Load Balancing: Web-Requests, Ingestion-Jobs und Modellaufrufe sollten nicht blind über denselben Lastpfad verteilt werden.
- Rate Limiting: Begrenzen Sie Nutzer, Mandanten und interne Worker getrennt. Sonst kann ein einzelner Agent die gesamte Kapazität verbrauchen.
- Fehlerbehandlung: Modellanbieter, Embedding-Dienst, Retrieval-Schicht und externe APIs müssen als ausfallfähige Abhängigkeiten behandelt werden.
- Beobachtbarkeit: Messen Sie nicht nur HTTP-Latenz, sondern auch Queue-Wartezeit, Retrieval-Dauer, Modelllaufzeit, Tokenverbrauch, Fehlerraten und Wiederholungen.
Das ist der entscheidende Perspektivwechsel: Bei einem klassischen Webdienst ist die Anwendung häufig die zentrale Verarbeitungseinheit. Bei einem AI-Service besteht ein einzelner Nutzerauftrag oft aus mehreren langsamen und fehleranfälligen Schritten.
Was sich bei RAG und Agenten gegenüber klassischen Webdiensten ändert
Ein RAG-Auftrag kann beispielsweise Dokumente laden, Text segmentieren, Embeddings erzeugen, Treffer suchen, Kontext zusammenstellen und anschließend ein Modell aufrufen. Jeder Schritt kann eigene Warteschlangen, Timeouts und Wiederholungsregeln benötigen.
Bei einem Agenten kommen Werkzeugaufrufe hinzu. Der Agent kann externe APIs, Datenbanken oder interne Services nacheinander ansprechen. Ein Timeout von zehn Sekunden in jedem Einzelschritt bedeutet nicht automatisch, dass der gesamte Auftrag nach zehn Sekunden beendet werden kann. Sie benötigen ein Gesamtbudget und Teilbudgets.
Die Lernreihenfolge sollte deshalb so aussehen:
- Zuerst Request-Lebenszyklus und synchrone Grenzen verstehen.
- Danach Queue, Worker und Wiederholungslogik entwerfen.
- Anschließend Speicher- und Cache-Rollen trennen.
- Dann Limits, Authentifizierung und Mandantentrennung ergänzen.
- Zum Schluss Fehlerbilder und Beobachtbarkeit testen.
Für die technische Umsetzung können Sie die Dokumentation zu Amazon SQS und asynchroner Nachrichtenverarbeitung, die Redis-Dokumentation zu Caching-Grundlagen, sowie die Kubernetes-Dokumentation zu Liveness- und Readiness-Probes als ergänzende Primärquellen verwenden. Diese Quellen ersetzen den system-design-primer nicht. Sie übersetzen allgemeine Muster in konkrete Betriebsmechanismen.
Achtung: Ein schneller Prototyp mit direktem Modellaufruf ist nicht automatisch eine belastbare Produktionsarchitektur. Testen Sie mindestens Timeout, Wiederholung, doppelte Zustellung, leere Retrieval-Ergebnisse und die Rückkehr eines ausgefallenen Workers.
Interviewlernen und Architekturarbeit im direkten Vergleich
Die beiden Lernziele überschneiden sich, verlangen aber unterschiedliche Nachweise.
Beim Interview müssen Sie innerhalb kurzer Zeit eine plausible Lösung entwickeln. Unvollständigkeit ist erlaubt, wenn Sie Annahmen offenlegen und die nächsten Vertiefungen sinnvoll priorisieren.
Bei einem realen System müssen Sie dagegen beweisen, dass eine Änderung sicher ausgerollt, gemessen und zurückgenommen werden kann. Eine theoretisch elegante Architektur kann ungeeignet sein, wenn das Team sie nicht betreiben kann oder die Migration zu riskant ist.
Nutzen Sie diese Entscheidungsbedingungen:
- Wenn Sie in absehbarer Zeit ein Interview führen, wählen Sie die Interviewroute mit wiederholten Aufgaben und Zeitlimit. Sonst wechseln Sie zur Projektroute.
- Wenn Sie ein konkretes Produktionsproblem mit Messwerten haben, wählen Sie die kapitelbasierte Route vom Fehlerbild. Sonst beginnen Sie mit Skalierbarkeit, Datenbanken, Caching und Asynchronität.
- Wenn Ihr AI-Service bereits Modell- oder Retrieval-Aufrufe enthält, wählen Sie zuerst Queue, Limits, Timeouts und Beobachtbarkeit. Sonst bauen Sie zunächst einen kleinen synchronen Prototyp und dokumentieren seine Grenzen.
- Wenn Sie keine prüfbare Abgabe erzeugen können, haben Sie wahrscheinlich zu breit gelesen. Kehren Sie zu einem einzelnen Szenario und einem klaren Ergebnis zurück.
- Wenn eine Lösung nur mit „mehr Servern“ begründet wird, prüfen Sie zuerst Datenbankzugriffe, Cache-Verhalten, Queue-Rückstau und externe Abhängigkeiten.
Diese Regeln helfen auch Teams bei Architektur-Reviews. Verwenden Sie ein gemeinsames Format aus Anforderungen, Einschränkungen, Lösung, Risiken und Validierungsmetriken. Lassen Sie zwei Personen dieselbe Aufgabe getrennt entwerfen. Vergleichen Sie danach ihre Annahmen und Trade-offs.
Der Repository-Vorschlag ist eine Referenz, nicht die einzig richtige Antwort. Auch in einer Interviewlösung müssen Sie erklären, warum eine andere Architektur unter den gegebenen Randbedingungen schlechter passt.
Erster Schritt: Ein Lernprogramm für die kommende Woche
Sie können noch heute mit einem kleinen, aber vollständigen Zyklus beginnen.
Tag 1: Ziel und Ausgangslage festlegen
Schreiben Sie auf, welches Ergebnis Sie benötigen:
- Interviewantwort unter Zeitdruck.
- Verbesserungsvorschlag für ein bestehendes System.
- Ausführbarer Prototyp für einen RAG- oder Agent-Service.
Notieren Sie außerdem Ihre aktuelle Schwäche. Beispiele sind Datenbankdesign, asynchrone Verarbeitung oder das Erklären von Verfügbarkeitsrisiken.
Tag 2: Breite Grundlagen auswählen
Lesen Sie nur die Abschnitte, die Ihr Ziel vorbereiten. Für Interviews gehören Skalierbarkeit, Latenz, Durchsatz, Caching, Load Balancing und Datenbanken zur ersten Auswahl. Für AI-Services ergänzen Sie Asynchronität, Rate Limiting und Fehlerbehandlung.
Erstellen Sie pro Thema eine Notiz mit drei Punkten:
- Wofür ist das Muster geeignet?
- Welches Problem löst es nicht?
- Welche neue Komplexität bringt es?
Tag 3: Eine Aufgabe ohne Lösung bearbeiten
Wählen Sie eine Aufgabe aus der Sammlung der System-Design-Fragen und Beispiellösungen. Zeichnen Sie zunächst nur die erste Version. Vermeiden Sie Produktnamen, solange Sie die Rolle der Komponente nicht erklären können.
Tag 4: Einen Engpass vertiefen
Nehmen Sie nur einen kritischen Pfad. Fragen Sie:
- Was passiert bei zehnfacher Last?
- Welche Komponente wird zuerst knapp?
- Kann die Arbeit asynchron werden?
- Welche Daten dürfen veraltet sein?
- Was passiert bei einem Ausfall?
Tag 5: Eine Alternative formulieren
Entwerfen Sie eine zweite Lösung. Sie muss nicht besser sein. Sie soll zeigen, dass Sie einen Trade-off verstehen. Vergleichen Sie beispielsweise synchrone Verarbeitung mit Queue und Worker oder eine zentrale Datenbank mit getrennten Speicherrollen.
Tag 6: Ihre Lösung testen
Für die Interviewroute nehmen Sie eine fünf- bis zehnminütige Erklärung auf. Für die Arbeitsroute schreiben Sie eine Entscheidungsnotiz. Für die AI-Route starten Sie einen kleinen Prototyp und simulieren mindestens einen Timeout sowie eine doppelte Aufgabe.
Tag 7: Lücke statt neues Kapitel
Bewerten Sie nur das Ergebnis. Wenn Sie die Architektur zeichnen konnten, aber keine Ausfälle erklären konnten, lernen Sie nicht das nächste Kapitel. Lesen Sie gezielt Failover, Replikation, Idempotenz oder Beobachtbarkeit nach.
So erkennen Sie, ob Sie System Design wirklich beherrschen
Lesen allein ist kein ausreichender Nachweis. Sie haben ein Thema erst dann verstanden, wenn Sie es in einer neuen Situation anwenden und seine Nachteile benennen können.
Verwenden Sie diese Checkliste:
- [ ] Sie können Anforderungen von Implementierungsdetails trennen.
- [ ] Sie nennen Annahmen ausdrücklich und ändern sie kontrolliert.
- [ ] Sie unterscheiden Latenz, Durchsatz, Verfügbarkeit und Konsistenz.
- [ ] Sie können den Datenfluss vom Eingang bis zur Antwort erklären.
- [ ] Sie benennen mindestens einen Engpass.
- [ ] Sie beschreiben Verhalten bei Timeout, Überlastung und Ausfall.
- [ ] Sie können erklären, welche Datenquelle maßgeblich ist.
- [ ] Sie unterscheiden Cache-Miss, veraltete Daten und Cache-Ausfall.
- [ ] Sie erklären, warum ein Queue-Job wiederholt oder doppelt ausgeführt werden kann.
- [ ] Sie definieren mindestens eine Metrik, mit der Ihre Entscheidung überprüft wird.
- [ ] Sie können eine einfachere Alternative mit ihren Grenzen nennen.
- [ ] Sie haben Ihre Lösung in einem anderen Szenario erneut angewendet.
Die drei wichtigsten Abschlussprodukte unterscheiden sich:
- Interviewroute: ein Zeitprotokoll mit Annahmen, Architektur, Engpass und Selbstbewertung.
- Berufsroute: ein realer Verbesserungsvorschlag mit Risiken, Migration und Messplan.
- AI-Route: ein ausführbarer Prototyp mit Queue oder klarer synchroner Grenze, Timeout, Wiederholung und Fehlerprüfung.
Wenn eines dieser Produkte fehlt, lesen Sie nicht automatisch mehr. Identifizieren Sie die fehlende Fähigkeit und wählen Sie das nächste Kapitel danach aus.
Für AI-Entwickler kann es außerdem sinnvoll sein, die Architekturarbeit mit einem passenden Leitfaden für AI-Entwicklungsumgebungen oder einem AI-Coding-Workflow mit Regeln und Skills zu verbinden. Die Lernaufgabe bleibt dabei dieselbe: eine Entscheidung treffen, sie ausführen und anschließend mit einem Test überprüfen.
Wenn Sie bisher nur lokal lesen, entstehen außerdem blinde Stellen bei Netzwerkzugriff, reproduzierbaren Deployments, Lasttests und Fehlern zwischen mehreren Services. Eine lokale Umgebung ist für Grundlagen oft ausreichend, aber für realistische AI-Systeme nicht immer der einfachste Langzeitweg: Hardware ist gebunden, Teamzugriff fehlt und reproduzierbare Testzustände müssen selbst gepflegt werden.
Für ein kurzfristiges Übungsprojekt kann eine gemietete Mac-Umgebung von Hashvps deshalb sinnvoller sein als der Kauf zusätzlicher Hardware. Sie erhalten einen getrennten Entwicklungsort für Prototypen, Remote-Zugriff und Abnahmetests, ohne Ihre lokale Maschine dauerhaft umzubauen. Für dauerhaft hohe Last, spezielle physische Schnittstellen oder langfristig planbare Nutzung sollten Sie dagegen die Gesamtkosten mit einem eigenen Gerät oder einer geeigneten Serverumgebung vergleichen. Entscheidend ist, dass die Umgebung zu Ihrem Lernprodukt passt: Interviewtraining braucht Wiederholbarkeit, ein AI-Prototyp braucht kontrollierbare Fehler, und ein reales Teamprojekt braucht nachvollziehbare Zugriffs- und Betriebsregeln.
Wie Sie jetzt mit System Design weitermachen
Wählen Sie zunächst den Lernweg, der zu Ihrem aktuellen Ziel passt, und bearbeiten Sie die Themen in dieser Reihenfolge statt den gesamten Stoff linear zu lesen.
Nehmen Sie anschließend ein konkretes System aus Ihrem Arbeitsalltag und skizzieren Sie Anforderungen, Datenflüsse, Skalierungsgrenzen sowie mögliche Ausfälle.