Halt den Code in Versionskontrolle statt in einem lokalen Notebook oder einem ad hoc geöffneten Query-Tab, parametrisier Datumsangaben statt sie hart zu verdrahten, und halt fest, aus welchen Quelltabellen und aus welchem Snapshot oder Lauf die Zahlen stammen. Dokumentier die Definitionen und alle manuellen Ausschlüsse direkt im Code. Wenn die zugrunde liegenden Tabellen veränderlich sind, speicher das aggregierte Ergebnis neben dem Code, damit die veröffentlichten Zahlen überprüfbar bleiben.
Warum Interviewer das fragen
Reproduzierbarkeit ist das, was einen Analysten, dessen Arbeit man vertrauen und auf der man aufbauen kann, von einem trennt, dessen Zahlen sich still auflösen, sobald jemand nachfragt. Der Interviewer will Versionskontrolle, parametrisierte Inputs und ein klares Bewusstsein dafür, dass sich Quelldaten verändern, dieselbe Query Monate später also legitim andere Zahlen liefern kann, wenn du den Stand von damals nicht festgehalten hast.
So baust du deine Antwort auf
- Leg die Query oder das Notebook in Versionskontrolle, nicht auf einen Laptop.
- Parametrisier Datumsangaben und Filter, statt sie hart zu verdrahten.
- Halt Quelltabellen, Laufdatum und alle manuellen Ausschlüsse fest.
- Speicher das aggregierte Ergebnis, denn Quellen verändern sich über die Zeit.
- Schreib Definitionen dorthin, wo die nächste Person sie findet.
Beispielantwort
Die Hauptsache ist, dass der Code irgendwo anders lebt als auf meiner Maschine, also in einem Repository statt in einem namenlosen Notebook oder einem Query-Tab, den ich bis Freitag schließe. Datumsangaben werden parametrisiert, denn ein hart verdrahteter Zeitraum heißt, dass die nächste Person das still über ein anderes Fenster laufen lässt und ohne Warnung eine andere Antwort bekommt. Ich halte fest, welche Tabellen ich benutzt habe und wann ich es laufen ließ, und vor allem jede manuelle Entscheidung, wenn ich also Testaccounts oder eine auffällige Woche ausgeschlossen habe, steht das in der Datei und nicht in meinem Gedächtnis. Das subtile Problem ist, dass sich Quelltabellen verändern. Jemand lässt meine Query im März neu laufen und bekommt andere Zahlen, nicht weil ich falsch lag, sondern weil eine Type-1-Dimension überschrieben wurde oder verspätete Daten angekommen sind. Für alles Veröffentlichte speichere ich deshalb das aggregierte Ergebnis neben dem Code. So kann ich, wenn jemand sechs Monate später eine Zahl hinterfragt, zeigen, wie die Daten damals aussahen und was sich seitdem geändert hat.
Steht dieses Vorstellungsgespräch bald an? GhostPilot hört bei deinem Live-Call mit, erkennt die Frage in dem Moment, in dem sie gestellt wird, und bringt dir eine strukturierte Antwort in Echtzeit auf den Bildschirm. Probier es im nächsten Mock aus, oder hol dir einen $29 Session Pass, kein Abo, für den Ernstfall.
So funktioniert esNachfragen, mit denen du rechnen solltest
- Wie gehst du mit einer Quelltabelle um, die täglich überschrieben wird?
- Was würdest du in ein README für eine Analyse aufnehmen?
- Wie versionierst du Notebooks so, dass sie reviewbar sind?
Weitere Fragen für Data Analyst
Dein Interviewer stellt seine eigene Version davon. Kopier deine echte Stellenbeschreibung in den kostenlosen Question Predictor und bekomm die 20 Fragen, die diese Rolle am wahrscheinlichsten stellt, samt dem, worauf jede wirklich abzielt.
Meine Fragen vorhersagen