P
prepair.app
Interview starten →
EnglishУкраїнськаРусскийDeutsch
🗄️

Junior Data EngineerData-Engineer-Interviewfragen

Junior · keine Erfahrung / unter 1 Jahr

Interviews für Data Engineers drehen sich stark um SQL und darum, ob deine Pipelines es überleben, zweimal, verspätet oder in falscher Reihenfolge zu laufen. Rechne außerdem mit Modellierungsfragen, auf die es keine einzig richtige Antwort gibt. Hier sind die häufigsten Fragen, jeweils mit einer Musterantwort. Junior: Grundlagentheorie, Definitionen und einfache Praxisfälle.

Probier es aus — kein Konto nötig
Deine Frage wird vorbereitet…

Themen zur Vorbereitung

Advanced SQL
Datenmodellierung und Warehousing
ETL vs. ELT und Orchestrierung
Spark und verteilte Verarbeitung
Streaming und Kafka
Datenqualität

7 Fragen auf Junior-Niveau mit Antworten

1

Was ist der Unterschied zwischen strukturierten, semi-strukturierten und unstrukturierten Daten?

Antwort

Strukturierte Daten haben ein festes Schema und leben in Zeilen und Spalten — eine Datenbanktabelle, eine CSV. Semi-strukturierte Daten tragen ihr Schema mit sich und können von Zeile zu Zeile variieren — JSON, XML, Avro. Unstrukturierte Daten haben gar kein Schema: Text, Bilder, Audio. Diese Unterscheidung entscheidet, wo sie gespeichert werden können und wie man sie abfragt, weshalb eine Pipeline semi-strukturierten Input meist erst in etwas Spaltenorientiertes umwandelt, bevor jemand ihn analysiert.

2

Was ist der Unterschied zwischen GROUP BY und PARTITION BY?

Antwort

GROUP BY fasst Zeilen zusammen — du bekommst eine Zeile pro Gruppe und verlierst die Detailebene. PARTITION BY, zusammen mit einer Window Function verwendet, behält jede Zeile und berechnet das Aggregat daneben. Willst du also jede Bestellung plus die Gesamtsumme des Kunden, liefert PARTITION BY beides in einem Durchgang; GROUP BY zwingt dich zu einem Join zurück auf die Detaildaten.

3

Was ist eine Window Function, und wie unterscheidet sie sich von einer Aggregatfunktion?

Antwort

Eine Aggregatfunktion liefert einen Wert pro Gruppe; eine Window Function liefert einen Wert für jede Zeile, berechnet über ein Fenster verwandter Zeilen. Die gängigen sind ROW_NUMBER, RANK, LAG und eine laufende SUM. ROW_NUMBER() OVER (PARTITION BY customer_id ORDER BY created_at DESC) nummeriert die Bestellungen jedes Kunden vom neuesten an — so holst du die aktuellste Zeile pro Gruppe ohne Self-Join.

4

Was ist der Unterschied zwischen WHERE und HAVING?

Antwort

WHERE filtert Zeilen vor der Gruppierung, HAVING filtert Gruppen danach. Eine Bedingung auf eine rohe Spalte gehört also in WHERE, eine Bedingung auf ein Aggregat in HAVING. Einen einfachen Spaltenfilter in HAVING zu setzen funktioniert zwar noch, zwingt die Engine aber, Zeilen zu gruppieren, die sie danach wieder verwirft — auf einer großen Tabelle sind das echte Kosten.

5

Was ist ein Index, und wann hilft er nicht?

Antwort

Eine separate Struktur, die es der Engine erlaubt, Zeilen zu finden, ohne die Tabelle zu scannen. Er hilft nicht, wenn die Abfrage einen Großteil der Tabelle zurückgibt, weil ein sequenzieller Scan billiger ist als das Springen durch den Index; er hilft nicht, wenn der Filter der Abfrage nicht zu den führenden Spalten eines zusammengesetzten Index passt; und er kostet bei jedem Write, weil der Index gepflegt werden muss.

6

Was ist der Unterschied zwischen einem Data Lake und einem Data Warehouse?

Antwort

Ein Lake speichert Rohdaten in ihrer Originalform und wendet das Schema erst beim Lesen an; ein Warehouse speichert modellierte, bereinigte Daten mit einem beim Schreiben angewendeten Schema. Der Lake ist günstiger und behält alles, auch Dinge, für deren Nutzung noch niemand eine Entscheidung getroffen hat. Das Warehouse ist das, was Analysten abfragen. Die meisten Unternehmen haben beides, wobei das Warehouse aus dem Lake gespeist wird.

7

Was ist der Unterschied zwischen einer Faktentabelle und einer Dimensionstabelle?

Antwort

Eine Faktentabelle enthält die messbaren Events — einen Verkauf, einen Klick — mit numerischen Kennzahlen und Fremdschlüsseln. Dimensionstabellen enthalten den beschreibenden Kontext, auf den diese Schlüssel zeigen: Kunde, Produkt, Datum. Facts wachsen ständig und sind schmal; Dimensionen sind breit und ändern sich langsam. Das zu verwechseln ist der häufigste Modellierungsfehler, und er zeigt sich in Abfragen, die niemand schreiben kann.

🦎

Antworten lesen reicht nicht

Im echten Interview sprichst du unter Druck. Cam stellt genau diese Fragen, bewertet jede Antwort und zeigt dir genau, was du verbessern musst.

Junior Data Engineer-Interview üben →
Kostenlos · 3 Interviews im Monat

Weitere Level — Data Engineer

Middle Data EngineerSenior Data EngineerAlle Data Engineer-Fragen

Weitere Spezialisierungen

🔍Junior QA Manual🤖Junior QA AutomationJunior Java Backend🐍Junior Python Backend🐘Junior PHP-Backend🦫Junior Go-Backend🟢Junior Node.js-Backend💎Junior Ruby on Rails🔷Junior C++🟨Junior JavaScript