Informace o oboru Data Engineering

Informace o oboru Data Engineering
« kdy: 30. 01. 2021, 17:13:26 »
- Dělá z vás někdo práci, která by se dala nazvat data engineer? V jakém oboru se pohybujete?

- V čem spočívá vaše práce a co vás odlišuje od klasických softwarových vývojářů, datových analytiků a datových vědců?

- Liší se váš pohled na testování v datově intenzivním prostředí, kde tvar vstupních dat není konzistentní? (Oproti třeba klasickému softwaru, kde jsou vstupy jasně definovány nebo validovány).

- Uchováváte data radši v data laku nebo v data warehouse nebo nějakém lakehouse hybridu?

- Preferujete dávkové nebo streamovací zpracování dat? Jaké technologie používáte, nebo byste chtěli používat? (Postgres, redshift, spark, snowflake, databricks, kafka, flink, beam, dbt, airflow, ...).

Nevšiml jsem si, že by se to tu někdy řešilo, tak otvírám takovou otevřenou otázku. Obecně mi přijde, že u nás o tom není moc diskuse, přitom to vypadá na nový obor plný otevřených otázek.
« Poslední změna: 30. 01. 2021, 17:57:55 od Petr Krčmář »


Re:Data Engineering
« Odpověď #1 kdy: 30. 01. 2021, 18:09:28 »
tenhle nový obor tady na českém písečku už několik let frčí ve velkém, snad každá větší společnost už má technologie a zaškolené lidi.

data engineer je pro mě člověk, který dělá vývoj nad nástroji pro práci s daty (pipelines, acquisition, reliability, quality), odpovídá nad byznysovým využitím dat, hledá opakující se paterny, automatize zpracovávání dat. Od běžného SW vývojáře rozumí datům, statistice, časovým řadám, umí data čištit, normalizovat, validovat a umí si na tyhle věci napsat program, nikoliv to udělat v klikacím SW.

Testování se neliší, stejně musí probíhat, je irelevantní jakou mají na vstupu data kvalitu, testuješ očekávané/cílové chování programu a hledáš jeho neočekávané stavy. Samozřejmě se více tíhne k integračním a regresním testům, daleké více se dělá A/B, hot seat, data mirroring, naopak ustupují unit testy.

Způsob ochování dat přece závisí na způsobu jejich použití. Dnes rozdíl mezi klasickým DWH s xml dokumenty v blobech proti nějakém vyloženě "datalake" je jen v rozdílu pojmenování, oba způsoby umí nad daty pracovat pomocí sql, oba umožňují programový přístup, jen jeden je více dávkový, druhý více transakční.

Opět, preference způsobu, rychlosti a spolehlivosti zpracování závisí na use case. Data do účetnictví prostě streamovat nechceš, naopak logy nechceš zpracovávat transakčně.

Zajdi někdy třeba na https://www.meetup.com/CS-HUG, těch skupin je více, je spousty hackathonů (teda v posledních měsících spíše online) a komunita rostě. Před pár lety o tom nevěděl nikdo, dnes mi prošlo rukama několik stovek lidí.