Data Engineer Interjú Kérdések, Fordulónként
Szerző: Aaron Cao · Frissítve

A data engineer körök haladó SQL-t, data modellinget, pipeline és ETL tervezést, distributed processinget és behavioral fordulókat foglalnak magukban. A pipeline tervezési forduló dönti el a legtöbb eredményt: azt kérdezi, hogyan kezeled a late datát, a rerunokat és a failure-öket, nem azt, melyik eszközt szereted.
Milyen fordulókból áll egy data engineer interjú?
Lehet, hogy ugyanúgy készülsz, mint egy software engineering interjúra, és azon gondolkodsz, mi a különbség. Ez a szakasz feltérképezi azokat a fordulókat, amelyeket ezek az interjúk újra és újra használnak, hogy az időt arra a két fordulóra fordíthasd, amely valóban elválasztja a jelölteket. A technikai szűrőn ritkán bukik el az ajánlat.
- SQL. Window functionök, deduplication és query performance, általában élőben.
- Data modelling. Táblák tervezése egy leírt üzlethez, és a választott grain megvédése.
- Pipeline és ETL tervezés. Egy nyitott végű system design forduló, amely az adatmozgásra fókuszál.
- Distributed processing. Hogyan hajtja végre valójában egy framework a munkádat, és miért lassú.
- Coding. Python vagy Scala, gyakran könnyebb, mint egy software engineering forduló.
- Behavioral. On call incidensek, elromlott dashboardok, és stakeholderek, akik tegnapra akarták a számot.
A titulusok erősen átfedik az analytics engineeringet és a platform szerepeket, így a keverék változik. A kapcsolódó szerepkör-kérdésbankok az interview questions by role hubon találhatók.
Milyen SQL és data modelling kérdések jönnek elő?
SQL
- Deduplikálj egy táblát úgy, hogy csak a legfrissebb sor maradjon meg key-enként.
- Írj egy query-t, amely visszaadja minden user session-számát 30 perces inaktivitási résszel.
- Számíts running totalt és hónapról hónapra változást egyetlen query-ben.
- Találd meg a sorokat, amelyek a tegnapi snapshotban megvannak, de mára eltűntek.
- Mit csinál a
QUALIFY, és mit írnál nélküle? - Ez a query egymilliárd sort szkennel és húsz percig tart. Hogyan diagnosztizálnád?
- Magyarázd el a partitioning és a clustering közti különbséget, és mikor segít mindegyik.
Data modelling
- Tervezd meg a táblákat egy online piactér rendeléstörténetéhez. Mi a fact table grainje?
- Magyarázz el egy star schemát, és mikor denormalizálnál tovább szándékosan.
- Mi az a slowly changing dimension, és hogyan implementálnád a type two-t?
- Egy stakeholder azt akarja, hogy a historikus reporting az ügyfél jelenlegi régióját tükrözze. Mi törik el?
- Hogyan modelleznél egy event streamet, amely out of order érkezik?
- Mikor választanál wide table-t egy normalizált modell helyett?
A modelling forduló azt jutalmazza, ha elköteleződsz egy grain mellett és megvéded. Azok a jelöltek, akik három lehetséges design-t írnak le választás nélkül, rosszabbul teljesítenek, mint akik egy ésszerű design mellett döntenek, és megnevezik a gyengeségét.
Milyen pipeline és distributed processing kérdések jönnek elő?
Pipeline és ETL tervezés
- Tervezz egy pipeline-t, amely napi tranzakciókat tölt be egy warehouse-ba a reporting számára.
- Az upstream forrás újra elküldi a tegnapi adatot. Mi történik a munkáddal?
- Hogyan teszed idempotenssé a pipeline-t, és miért számít ez a rerunoknál?
- Hogyan végeznél két év történelmi adat backfillt anélkül, hogy megzavarnád a napi loadot?
- A late arriving adat három nappal a partition lezárása után jelenik meg. Mit teszel?
- Hogyan derítenéd ki, hogy egy pipeline sikeres volt, de rossz adatot állított elő?
- Mit monitorozol, és mi ébreszt fel valakit hajnali háromkor?
Distributed processing és streaming
- Mi okoz shuffle-t, és miért drága?
- A munkád lassú, és az egyik task sokkal tovább tart, mint a többi. Mi történik?
- Magyarázd el a data skew-t és két kezelési módját.
- Mikor választanál streaminget egy ütemezett batch job helyett?
- Mit garantál valójában az exactly once processing, és hol nem érvényes?
- Hogyan kezelik a watermarkok az out of order eseteket egy windowed aggregationben?
Figyeld meg, milyen kevés kérdés kéri, hogy nevezz meg egy eszközt. Egy eszköz megnevezése a válasz kezdete, nem a válasz. A folytatás mindig az, hogy miért, és mi törik el.
Hogyan gyakorold ezeket?
Ezeknek a listáknak az olvasása felismerést épít. A design fordulók mást tesztelnek: azt, hogy a fejedben tartasz egy rendszert, miközben valaki egy failure case-szel megszakít. Ez csak abból jön, ha hangosan mondod ki a design-t.
- Rajzolj és mesélj el egy pipeline-t tizenöt perc alatt. Source, landing, transform, serve, plusz hogy minden szakasz hogyan hibázik.
- Támadd meg a saját design-odat. Minden gyakorlás után kérdezd meg, mi történik rerunnál, late adatnál és schema változásnál.
- Legyen kész számod a skálához. Sor naponta, méret, latency budget. A feltételezett skálád elsőként való kimondása pontot ér.
- Írj SQL-t kézzel. Az élő fordulók gyakran egyszerű editort használnak autocomplete és futtatás nélkül.
- Gyakorolj be rendesen egy incidens-történetet. Mi romlott el, hogyan találtad meg, mit változtattál, hogy ne ismétlődhessen meg.
Egy hat éve batch pipeline-okon dolgozó data engineer a framework internals átnézésével készült, majd fennakadt azon, hogy "az upstream forrás újraküldte a tegnapi fájlt", mert ő azt mindig csak kézzel kezelte, sosem magyarázta el. A tudás megvolt; a kimondott válasz nem. A design forduló gyakorlása follow-up kérdésekkel pontosan az, amire a mock interview mód épült.
GYIK
Miben különbözik a data engineer interjú a software engineer interjútól?
Kifejezetten Sparkra van szükségem, vagy elég a koncepció?
Mennyire tesztelik ezek az interjúk a data modellinget?
Mi a leggyakoribb ok, amiért a jelöltek elbuknak a data engineer köröknél?
Hogyan gyakoroljam egyedül a design fordulókat?
Kapcsolódó kérdések
- Milyen kérdéseket tesznek fel egy data scientist interjún?
- Milyen kérdéseket kérdeznek egy data analyst állásinterjún?
- Milyen kérdéseket tesznek fel egy termékmenedzser állásinterjún?
- Milyen kérdéseket kapnak a fejlesztők a Copilotról és az AI kódasszisztensekről az interjún?
- Milyen kérdések hangzanak el a második körös interjún?
- Milyen kérdéseket tesznek fel egy AI-interjún?