Was in einem Python-Vorstellungsgespräch gefragt wird, wie man auf Fragen zu GIL, asyncio und Typisierung antwortet und wie man ein Gespräch mit einem KI-Trainer probt.
Ein Python-Vorstellungsgespräch prüft nicht eine Liste von Bibliotheken, sondern das Verständnis dafür, wie die Sprache unter der Haube aufgebaut ist. Ein Kandidat, der die Syntax kennt, aber nicht erklären kann, warum sein Code bei hunderttausend Datensätzen langsam wird, verliert gegen jemanden, der das Ausführungsmodell versteht.
| Phase | Was geprüft wird |
|---|---|
| Screening | Erfahrung, Stack, Gehaltserwartungen |
| Sprachtheorie | GIL, Speicher, Typisierung, Iteratoren |
| Live-Coding | wie Sie schreiben und laut denken |
| Architektur / Systeme | wie Sie Service, Datenbank, Warteschlangen entwerfen |
Der Global Interpreter Lock verhindert, dass mehrere Threads gleichzeitig Bytecode ausführen. Daraus folgt praktisch: Threads sind für I/O nützlich, für CPU-Last braucht man Prozesse oder die Auslagerung in einen separaten Dienst. Eine Antwort ohne diese Schlussfolgerung gilt als oberflächlich.
Erwartet werden keine Definitionen, sondern die Wahl des passenden Werkzeugs für die Aufgabe: Tausende gleichzeitige Netzwerkanfragen — asyncio; schwere Berechnungen — multiprocessing; blockierende Bibliotheken — ein Thread-Pool. Die Fähigkeit, die Wahl zu erklären, ist das Wichtigste.
Typannotationen haben keinen Einfluss auf die Laufzeit, fangen aber Fehler bei der Prüfung ab. Häufig wird nach `Optional`, `Union`, `Protocol` und Generics gefragt: wozu sie dienen und wie Sie sie im Projekt einsetzen.
Klassiker: ein veränderliches Standardargument (`def f(x, y=[])`), Kopieren per Referenz gegenüber `deepcopy`, Hashbarkeit von Dictionary-Schlüsseln. Hier wird geprüft, ob Sie solche Fehler schon in echtem Code gefunden haben.
Der Unterschied zwischen einer Liste und einem Generator, Lazy Evaluation, `yield`, wofür `itertools` benötigt wird. Üblicherweise wird eine Aufgabe gestellt: eine große Datei verarbeiten, ohne sie in den Speicher zu laden.
Je nach Ihrem Stack: Django ORM versus rohes SQL, N+1-Abfragen, Transaktionen, Indizes. Für FastAPI — Abhängigkeiten, Pydantic-Validierung, asynchrone Endpunkte.
pytest, Fixtures, Mocks, Coverage. Docker, Migrationen, CI. Es wird geprüft, ob Sie Code bis zur Produktion bringen und nicht nur bis „läuft lokal“.
Die Struktur funktioniert: These → Begründung → Beispiel → Einschränkung.
„Für diese Aufgabe würde ich asyncio nehmen. Der Grund ist, dass die Last netzwerkbedingt und nicht rechenbedingt ist, und Threads würden hier nur zusätzliche Wechsel hinzufügen. Im letzten Projekt haben wir so Blockierungen beim Aufruf einer externen API beseitigt. Einschränkung: Wenn intern eine synchrone Bibliothek vorhanden ist, blockiert sie die Ereignisschleife – dann muss man sie in einen Executor auslagern.“
Der letzte Satz ist das, was einen Praktiker ausmacht: Er weiß, wo seine Lösung scheitert.
Eine Woche lang täglich 30–40 Minuten, sofern Sie Praxis haben: die sieben oben genannten Themen durcharbeiten, die Antworten laut durchsprechen und einmal einen vollständigen Dialog durchspielen. Wenn ein Thema (zum Beispiel asyncio) für Sie unklar ist, arbeiten Sie es zuerst auf, sonst rettet die Struktur der Antwort Sie nicht.
Ja, aber in unterschiedlichen Anteilen. Produktteams stellen häufiger praktische Aufgaben (eine Abfrage optimieren, eine Pipeline analysieren), große Tech-Unternehmen eher klassische Aufgaben zu Arrays, Strings und Hash-Tabellen. Das Format sollte man beim Recruiter erfragen.
Sagen Sie es direkt und zeigen Sie den Gedankengang: womit es vergleichbar ist, wie Sie es prüfen würden. Interviewer unterscheiden fast immer «ich weiß es nicht, aber ich denke» von Erfindung, und Letzteres ist ein direktes Minus.
Nein. Gefragt wird meist zum Stack, der in der Stellenanzeige angegeben ist. Aber das Verständnis der Prinzipien (Routing, Abhängigkeiten, Arbeit mit der DB) lässt sich zwischen Frameworks übertragen, und das wird höher geschätzt als die Kenntnis einer konkreten API.
Mit einer Spanne, nicht mit einer einzelnen Zahl, und mit Bezug auf den Markt. Eine ausführliche Analyse finden Sie im Artikel Gehaltsverhandlungen.
Beschreiben Sie die Situation in einem Satz – „Vorstellungsgespräch Python-Entwickler, FastAPI, vier Jahre Erfahrung“ – und führen Sie das Gespräch im Trainer. Der Trainer stellt Fragen zu Ihrer Rolle und bespricht die Antworten nach dem Gespräch.
Gehen Sie die sieben Themen durch und markieren Sie die, bei denen die Antwort nicht stimmig ist. Führen Sie dann den vollständigen Dialog durch: öffnen Sie HintMeTalk AI, Modus „Trainer“, beschreiben Sie die Stelle in einem Satz. Nach der Auswertung zeigt sich, welche Antworten schwach sind — normalerweise sind es zwei bis drei von zehn.
Die allgemeine Vorbereitung auf jedes Vorstellungsgespräch — im Artikel Vorbereitung auf das Vorstellungsgespräch. Das Frontend-Vorstellungsgespräch wird gesondert behandelt.
Trainiere diese Fähigkeit in HintMeTalk AI
App öffnen