Race Condition in einem Schicht-Plan-Backend aufspueren
Übersicht
Worum es bei diesem Projekt geht.
Lies den Go-Code des Buchungs-Endpoints (rund 400 Zeilen) und identifiziere kritische Abschnitte ohne ausreichenden Schutz. Baue einen Stress-Test, der die Race deterministisch ausloest (Hinweis: Go-Race-Detector + parallele goroutines). Schlage einen Fix vor, der zwischen drei Optionen waehlt: Datenbank-Transaktion mit SELECT FOR UPDATE, verteiltes Lock via Redis (Redlock-Algorithmus), oder optimistic concurrency control via Versions-Spalte. Begruende die Wahl mit Latenz- und Durchsatz-Auswirkungen. Liefere Reproduzierer-Skript, Patch, Begruendungs-Memo und ein kurzes Postmortem-Dokument.
Das Briefing
Was Du tust und was Du zeigst.
Welche Race Condition fuehrt im Buchungs-Endpoint zu Doppelbuchungen und welche Synchronisationsprimitive behebt sie ohne den Durchsatz zu halbieren?
Earning criteria — what you'll demonstrate
- Kritische Abschnitte im Quellcode systematisch identifizieren
- Synchronisationsprimitive (Mutex, Semaphor, Datenbank-Lock, verteiltes Lock) gegeneinander abwaegen
- Race Conditions deterministisch reproduzieren statt 'es ist verschwunden' zu akzeptieren
- Trade-offs zwischen Sicherheit, Latenz und Durchsatz fuer Produktionssysteme begruenden
Studienpassung
Wo dies in Dein Studium passt.
Schärft dieselben Fähigkeiten, die Dein Studium von Dir erwartet.
Fähigkeiten
Fähigkeiten, die Du unter Beweis stellst.
Jede taucht auf Deinem verifizierten Zertifikat auf.
Karrieren
Berufe, auf die dies Dich vorbereitet.
Echte Berufsbezeichnungen. Echte Skill-Brücken. Wähle die, die Deinem Werdegang am nächsten kommt.
Karrierewege, die das aufbaut
Kanonische RollenBackend Engineer
Race Conditions in Produktions-Code zu finden und zu beheben ist eine Kern-Erfahrung, die Backend-Engineer-Bewerber:innen von reinen API-Implementier:innen unterscheidet — Interviewer fragen genau diese Geschichten ab.
Dieses Projekt schärft
- concurrency
- race-conditions
- debugging
Software Engineer
Concurrency-Bugs sind die haerteste Kategorie und ihre saubere Behandlung ist ein direkter Senioritaets-Indikator fuer Software-Engineer-Rollen jeder Sprache.
Dieses Projekt schärft
- concurrency
- synchronization
- go-programming
Noch eine Sache