Otázky z pohovoru na Data Engineera podle kola

Autor: Aaron Cao · Aktualizováno

Otázky z pohovoru na Data Engineera podle kola
Kola pohovorů na data engineera zahrnují pokročilé SQL, data modelling, návrh pipeline a ETL, distributed processing a behaviorální kola. O výsledku většinou rozhoduje kolo návrhu pipeline: ptá se, jak řešíte late data, reruns a failures, ne jaký nástroj preferujete.

Kola pohovorů na data engineera zahrnují pokročilé SQL, data modelling, návrh pipeline a ETL, distributed processing a behaviorální kola. O výsledku většinou rozhoduje kolo návrhu pipeline: ptá se, jak řešíte late data, reruns a failures, ne jaký nástroj preferujete.

Jaká kola obsahuje pohovor na data engineera?

Možná se připravujete stejně jako na pohovor na software engineeringu a přemýšlíte, v čem je rozdíl. Tato sekce mapuje kola, která se v těchto pohovorech opakují, abyste mohli čas věnovat dvěma kolům, která kandidáty skutečně odliší. Technický filtr zřídka rozhoduje o ztrátě nabídky.

  • SQL. Window functions, deduplication a výkon dotazů, obvykle naživo.
  • Data modelling. Návrh tabulek pro popsaný byznys a obhajoba zvoleného grain.
  • Návrh pipeline a ETL. Otevřené kolo system designu zaměřené na pohyb dat.
  • Distributed processing. Jak framework skutečně provádí vaši úlohu a proč je pomalá.
  • Coding. Python nebo Scala, často lehčí než kolo software engineeringu.
  • Behaviorální. On call incidenty, rozbité dashboardy a stakeholdeři, kteří chtěli číslo už včera.

Tituly se výrazně překrývají s analytics engineeringem a platform rolemi, takže se mix mění. Související banky otázek podle role najdete v hubu interview questions by role.

Jaké otázky na SQL a data modelling se objevují?

SQL

  • Odstraňte duplicity v tabulce tak, aby zůstal jen nejnovější řádek pro každý key.
  • Napište dotaz, který vrátí počet sessions každého uživatele s 30minutovou mezerou nečinnosti.
  • Spočítejte running total a meziměsíční změnu v jednom dotazu.
  • Najděte řádky, které jsou ve včerejším snapshotu, ale dnes chybí.
  • Co dělá QUALIFY a co byste napsali bez něj?
  • Tento dotaz projde miliardu řádků a trvá dvacet minut. Jak byste to diagnostikovali?
  • Vysvětlete rozdíl mezi partitioning a clustering a kdy každý pomáhá.

Data modelling

  • Navrhněte tabulky pro historii objednávek online tržiště. Jaký je grain vaší fact table?
  • Vysvětlete star schema a kdy byste záměrně dál denormalizovali.
  • Co je slowly changing dimension a jak implementujete type two?
  • Stakeholder chce, aby historický reporting odrážel aktuální region zákazníka. Co se rozbije?
  • Jak byste modelovali event stream, který přichází out of order?
  • Kdy byste zvolili wide table místo normalizovaného modelu?

Kolo modelling odměňuje rozhodnutí pro určitý grain a jeho obhajobu. Kandidáti, kteří popíší tři možné návrhy bez volby, dopadnou hůř než ti, kteří zvolí rozumný návrh a pojmenují jeho slabinu.

Jaké otázky na pipeline a distributed processing se objevují?

Návrh pipeline a ETL

  • Navrhněte pipeline, která načítá denní transakce do warehouse pro reporting.
  • Upstream zdroj znovu pošle včerejší data. Co se stane s vaší úlohou?
  • Jak uděláte pipeline idempotentní a proč na tom záleží u reruns?
  • Jak byste udělali backfill dvou let historie, aniž byste narušili denní load?
  • Late arriving data se objeví tři dny po uzavření partition. Co uděláte?
  • Jak byste zjistili, že pipeline uspěla, ale vytvořila špatná data?
  • Co monitorujete a co vzbudí někoho ve tři ráno?

Distributed processing a streaming

  • Co způsobuje shuffle a proč je drahý?
  • Vaše úloha je pomalá a jeden task trvá mnohem déle než ostatní. Co se děje?
  • Vysvětlete data skew a dva způsoby, jak ho řešit.
  • Kdy byste zvolili streaming místo naplánovaného batch jobu?
  • Co přesně garantuje exactly once processing a kde neplatí?
  • Jak watermarks řeší out of order events v windowed agregaci?

Všimněte si, jak málo těchto otázek chce, abyste jmenovali nástroj. Pojmenování nástroje je začátek odpovědi, ne odpověď. Následuje vždy proč a co se rozbije.

Jak byste se na to měli připravovat?

Čtení těchto seznamů buduje rozpoznání. Kola designu testují něco jiného: schopnost udržet systém v hlavě, zatímco vás někdo přerušuje failure case. To přichází jen z vyslovování návrhů nahlas.

  • Nakreslete a odvyprávějte pipeline za patnáct minut. Source, landing, transform, serve, plus jak každá fáze selhává.
  • Napadněte vlastní návrh. Po každém tréninku se zeptejte, co se stane při rerunu, při late data a při změně schema.
  • Mějte připravené číslo pro škálu. Řádky za den, velikost, latency budget. Uvedení předpokládané škály jako první se hodnotí.
  • Pište SQL ručně. Živá kola často používají obyčejný editor bez autocomplete a bez spouštění.
  • Pořádně si natrénujte jeden příběh o incidentu. Co se rozbilo, jak jste to zjistili, co jste změnili, aby se to už neopakovalo.

Data engineerka se šesti lety na batch pipelines se připravovala studiem internals frameworku, ale zaseknula se na "upstream zdroj znovu poslal včerejší soubor", protože to vždy řešila jen ručně a nikdy to nevysvětlovala. Znalost tam byla, mluvená odpověď ne. Trénink kola designu s doplňujícími otázkami je přesně to, na co je postavený režim mock interview.

Časté dotazy

Čím se pohovor na data engineera liší od pohovoru na software engineera?

Kolo coding bývá lehčí a kolo designu je zaměřené na pohyb dat, ne na služby. Otázky se soustředí na správnost při rerunech, late data a změnách schema, což se v obecném kole software designu objevuje jen zřídka.

Potřebuji konkrétně Spark, nebo stačí koncept?

Většinu kola nesou koncepty: shuffles, skew, partitioning a proč je úloha pomalá. Pokud popis pozice jmenuje framework, čekejte alespoň jednu otázku o jeho execution modelu, takže byste měli umět vysvětlit, co se stane, když vaše úloha běží.

Jak moc tyto pohovory testují data modelling?

Více, než většina kandidátů čeká. Star schemas, grain fact table a slowly changing dimensions se objevují pravidelně a tazatelé tlačí na důsledky vaší volby místo toho, aby chtěli učebnicovou definici.

Jaký je nejčastější důvod, proč kandidáti neuspějí v kolech pro data engineera?

Návrh pipeline, která funguje jen na happy path. Tazatelé záměrně zavádějí reruny, duplicitní doručení a late arriving data, a návrh bez odpovědi na to je obvyklý způsob selhání.

Jak si mám sám natrénovat kola designu?

Vyberte si popsaný byznys, navrhněte pipeline nahlas s časovačem a pak vyslýchejte vlastní návrh pomocí failure cases. AI mock interviewer může kolo také odvést a přerušovat doplňujícími otázkami, což je blíž skutečnému tlaku.

Související otázky

← Více o Otázky k pohovoru podle role a tématu