Sollicitatievragen voor Data Engineers, per Ronde

Door Aaron Cao · Bijgewerkt op

Sollicitatievragen voor Data Engineers, per Ronde
Sollicitatierondes voor data engineers omvatten geavanceerde SQL, datamodellering, pipeline- en ETL-ontwerp, gedistribueerde verwerking en gedragsgerichte rondes. De pipeline-ontwerpronde bepaalt de meeste uitkomsten: er wordt gevraagd hoe je omgaat met te late data, reruns en storingen, niet welke tool je verkiest.

Sollicitatierondes voor data engineers omvatten geavanceerde SQL, datamodellering, pipeline- en ETL-ontwerp, gedistribueerde verwerking en gedragsgerichte rondes. De pipeline-ontwerpronde bepaalt de meeste uitkomsten: er wordt gevraagd hoe je omgaat met te late data, reruns en storingen, niet welke tool je verkiest.

Welke rondes bevat een sollicitatieproces voor data engineers?

Misschien bereid je je op dezelfde manier voor als voor een software engineering-traject en vraag je je af wat het verschil is. Deze sectie brengt de rondes in kaart die deze sollicitaties hergebruiken, zodat je je tijd kunt besteden aan de twee rondes die kandidaten echt onderscheiden. De technische filter is zelden waar aanbiedingen verloren gaan.

  • SQL. Window functions, deduplicatie en queryprestaties, meestal live.
  • Datamodellering. Tabellen ontwerpen voor een beschreven bedrijf, en de grain die je koos verdedigen.
  • Pipeline- en ETL-ontwerp. Een open systeemontwerpronde gericht op databeweging.
  • Gedistribueerde verwerking. Hoe een framework je taak daadwerkelijk uitvoert, en waarom het traag is.
  • Coderen. Python of Scala, vaak lichter dan een software engineering-ronde.
  • Gedragsgericht. On-call incidenten, kapotte dashboards, en stakeholders die het cijfer gisteren wilden.

Functietitels overlappen sterk met analytics engineering en platformrollen, dus de mix verschuift. Gerelateerde vragenbanken per functie staan in de sollicitatievragen per functie-hub.

Welke SQL- en datamodelleervragen komen aan bod?

SQL

  • Dedupliceer een tabel zodat alleen de meest recente rij per sleutel overblijft.
  • Schrijf een query die het aantal sessies per gebruiker teruggeeft met een inactiviteitsgat van 30 minuten.
  • Bereken een lopend totaal en een maand-op-maand verandering in één query.
  • Vind rijen die in de snapshot van gisteren staan maar in die van vandaag ontbreken.
  • Wat doet QUALIFY, en wat zou je zonder schrijven?
  • Deze query scant een miljard rijen en duurt twintig minuten. Hoe diagnosticeer je dit?
  • Leg het verschil uit tussen partitioning en clustering, en wanneer elk helpt.

Datamodellering

  • Ontwerp de tabellen voor de bestelgeschiedenis van een online marktplaats. Wat is de grain van je fact table?
  • Leg een star schema uit, en wanneer je bewust verder zou denormaliseren.
  • Wat is een slowly changing dimension, en hoe implementeer je type twee?
  • Een stakeholder wil dat historische rapportage de huidige regio van een klant weerspiegelt. Wat breekt er?
  • Hoe zou je een event stream modelleren die niet in volgorde binnenkomt?
  • Wanneer kies je een brede tabel boven een genormaliseerd model?

De modelleerronde beloont het kiezen van een grain en die verdedigen. Kandidaten die drie mogelijke ontwerpen beschrijven zonder te kiezen scoren slechter dan kandidaten die een redelijk ontwerp kiezen en de zwakte ervan benoemen.

Welke pipeline- en gedistribueerde-verwerkingsvragen komen aan bod?

Pipeline- en ETL-ontwerp

  • Ontwerp een pipeline die dagelijkse transacties in een warehouse laadt voor rapportage.
  • De upstream bron stuurt de data van gisteren opnieuw. Wat gebeurt er met je taak?
  • Hoe maak je een pipeline idempotent, en waarom is dat belangrijk voor reruns?
  • Hoe zou je twee jaar geschiedenis backfillen zonder de dagelijkse load te verstoren?
  • Te laat aankomende data duikt drie dagen na sluiting van de partitie op. Wat doe je?
  • Hoe detecteer je dat een pipeline is geslaagd maar verkeerde data heeft geproduceerd?
  • Wat monitor je, en wat piept iemand wakker om drie uur 's nachts?

Gedistribueerde verwerking en streaming

  • Wat veroorzaakt een shuffle, en waarom is die duur?
  • Je taak is traag en één taak duurt veel langer dan de rest. Wat gebeurt er?
  • Leg data skew uit en twee manieren om ermee om te gaan.
  • Wanneer kies je streaming boven een geplande batchtaak?
  • Wat garandeert exactly-once processing eigenlijk, en waar geldt het niet?
  • Hoe gaan watermarks om met out-of-order events in een windowed aggregatie?

Let op hoe weinig van deze vragen je vragen een tool te noemen. Een naam noemen is het begin van het antwoord, niet het antwoord zelf. De vervolgvraag is altijd waarom, en wat er breekt.

Hoe oefen je hiervoor het beste?

Deze lijsten lezen bouwt herkenning op. De ontwerprondes testen iets anders: een systeem in je hoofd vasthouden terwijl iemand je onderbreekt met een faalscenario. Dat komt alleen van ontwerpen hardop uitspreken.

  • Teken en vertel een pipeline in vijftien minuten. Bron, landing, transform, serve, plus hoe elke fase faalt.
  • Val je eigen ontwerp aan. Vraag na elke oefensessie wat er gebeurt bij een rerun, bij late data, en bij een schemawijziging.
  • Houd een getal voor schaal klaar. Rijen per dag, omvang, latentiebudget. Je aangenomen schaal eerst noemen wordt beoordeeld.
  • Schrijf SQL met de hand. Live rondes gebruiken vaak een gewone editor zonder autocomplete en zonder uitvoering.
  • Oefen één incidentverhaal goed. Wat brak er, hoe vond je het, wat veranderde je zodat het niet kon terugkomen.

Een data engineer met zes jaar ervaring op batchpipelines bereidde zich voor door framework-internals te herzien, en liep vast op "de upstream bron stuurde het bestand van gisteren opnieuw" omdat ze dit alleen ooit handmatig had afgehandeld, nooit had uitgelegd. De kennis was er; het gesproken antwoord niet. De ontwerpronde oefenen met vervolgvragen is precies waarvoor de mock interview-modus is gebouwd.

FAQ

Hoe verschilt een sollicitatiegesprek voor data engineer van een voor software engineer?

De coderonde is meestal lichter en de ontwerpronde is gericht op databeweging in plaats van services. Vragen draaien om correctheid onder reruns, late data en schemawijzigingen, wat zelden voorkomt in een algemene software-ontwerpronde.

Heb ik specifiek Spark nodig, of is het concept genoeg?

Concepten dragen het grootste deel van de ronde: shuffles, skew, partitioning, en waarom een taak traag is. Als de vacaturetekst een framework noemt, verwacht dan minstens één vraag over het uitvoeringsmodel ervan, dus kun je uitleggen wat er gebeurt als je taak draait.

Hoeveel datamodellering testen deze sollicitaties?

Meer dan de meeste kandidaten verwachten. Star schema's, fact table grain, en slowly changing dimensions komen regelmatig aan bod, en interviewers dringen aan op de gevolgen van je keuze in plaats van een leerboekdefinitie te vragen.

Wat is de meest voorkomende reden dat kandidaten falen in data engineer-trajecten?

Een pipeline ontwerpen die alleen op het happy path werkt. Interviewers introduceren bewust reruns, dubbele leveringen en te laat binnenkomende data, en een ontwerp zonder antwoord daarop is meestal de faalmodus.

Hoe oefen ik ontwerprondes alleen?

Kies een beschreven bedrijf, ontwerp de pipeline hardop met een timer, en ondervraag daarna je eigen ontwerp met faalscenario's. Een AI mock interviewer kan de ronde ook leiden en je onderbreken met vervolgvragen, wat dichter bij de echte druk komt.

Gerelateerde vragen

← Meer over Sollicitatievragen per functie & onderwerp