Datoví analytici musí najít kompromis mezi perfektním řešením a dodáním srozumitelných výstupů

Dataři tvoří motor firmy BizMachine. S Honzou Faitem, našim Data Leadem, jsme se bavili o tom, s jakými očekáváními přicházejí do firmy noví datoví analytici.

Zajímalo nás, co se musí junioři v první řadě naučit. Zabrousili jsme i na témata, jak on sám své lidi motivuje, aby je práce v BizMachine bavila.


Datová věda, případně její kombinace s ekonomickými obory, se začíná objevovat na různých vysokých školách. Jak toto studium dokáže absolventy připravit na to, co je v praxi čeká?

Formálnímu vzdělání v datové vědě fandím, protože dává absolventům základnímyšlenkový rámec a nástroje jak problémy řešit. V případě práce v BizMachine je třeba k tomu všemu ještě pochopit, že na druhé straně datové pipeliny nebo statistického modelu je člověk, který potřebuje její výsledky pochopit, věřit jim a uvést je do praxe.

Jak tedy pomáháte absolventům naučit se aplikovat datovou vědu v praxi?

Velmi souhlasím s výrokem, že zralost datového analytika souvisí s jeho ochotou nejdřív vyzkoušet jednoduchou regresi.
Učíme juniorní kolegy umět zvolit si pokaždé vhodný nástroj, prioritizovat, být schopen sám najít svoji chybu, předat informaci kolegům, řict si včas o pomoc, pozorovat v zadáních opakující se prvky a generalizovat pro ně řešení. Technické dovednosti získávají za běhu nebo v našich dedikovaných learning tracks a zřídka je jejich nedostatek příčinou nějakých obtíží.

Začínající datoví analytici musí zažít hledání kompromisu mezi technicky perfektním řešením a dodáním srozumitelných výstupů zákazníkovi v rámci daného časového či rozpočtového omezení. Člověk, který se v tomto prostředí naučí dobře fungovat, je následně velice cenný. (Oproti někomu, kdo je velice inteligentní a technicky zdatný, ale nedokáže problémy vyřešit včas a vhodným způsobem.)

Data jsou našim motorem. Datoví analytici musí najít kompromis mezi technicky perfektním řešením a dodáním srozumitelných výstupů zákazníkovi.

Co se datoví analytici musí naučit v prvním roce práce?

Nejdříve se musí naučit kriticky vyhodnotit svoji vlastní práci a postup. Například si umět odpovědět na několik otázek: jak si zkontroluji číslo, které jsem právě spočítal? Jakou informační hodnotu má to, co jsem právě zjistila pro koncového uživatele? Pokud na tom budu pracovat ještě o šest hodin déle, o kolik se zlepší výsledek a o kolik bude zákazník spokojenější?

Co se skutečně naučí za rok je velice individuální. Snažím se pozorovat zájmy a možnosti každého kolegy a kolegyně ze svého týmu a na čtvrtletním hodnocení jim ukázat, jakým směrem by se měli pohybovat. Zatím u nás není nikdo, kdo by po roce nebyl velmi silný v relačních databázích, neuměl napsat datovou pipelinu v Pythonu nebo neuměl získávat data z webu či API. 

U projektů se složkou strojového učení je to často jisté vystřízlivění spojené s prací s reálnými daty zákazníků. Analytik často ví, jak by problém vyřešil, kdyby dat bylo více nebo potvrzovala tu či onu hypotézu, byla natřená na pruhovano a podobně.

Které vstupní dovednosti by měl mít datový analytik?

Ideální začínající analytik samozřejmě chápe princip relačních databází, objektově orientovaného programování a základní statistiku. Jenomže pokud nemá zájem o klientskou situaci, kterou řeší, ochotu se k výsledku propracovat přes špinavá (dezorganizovaná, nekonstentní, neexistující) data a jistou míru technické kreativity, nic z výše uvedeného mu nakonec cestu dál neotevře.

To, co jsme se všichni v průběhu let naučili o fungování firem v různých odvětvích skrze analýzu dat, která z nich pochází, považuji za nevyslovený firemní benefit. Jde o velmi užitečný přehled o evropském B2B trhu.

Jak vypadá datový tým BizMachine?

 V týmu je nás zatím devět. Mix různých osobností, původu, různě dlouhé úvazky. Společný jmenovatel je málo fluktuace, hodně sebeironie.

V začátcích jsme chtěli, aby každý zvládl programovat, psát prediktivní modely, segmentace, dělat data mining i databázový design. S rostoucím počtem členů týmu se pomalu krystalizuje talent a zájem o jednotlivé oblasti. Snažíme se udržet rovnováhu mezi vlastním produktovým vývojem a klientskými zadáními - potřebujeme dobrou zastupitelnost a chceme, aby lidé nezůstali zahrabaní ve složitostech našeho vlastního datového backendu, ale také byli u dění v první linii, viděli jaké informace klientům slouží či chybějí.

Od běžného BI týmu ve velké firmě se myslím lišíme šířkou záběru. V BizMachine si datový tým kromě analytické práce a reportingu vyvíjí vlastní softwarová řešení, volí technologie a nasazuje je do produkce, ať již jde o webové aplikace, vlastní knihovny či komponenty našeho Azure cloudu. Rozvíjejí se tím kompetence a zvyklosti běžnější u engineeringu - verzování, code reviews, continuous deployment a další.

Měl by datový analytik či specialista rozumět byznysu? Bylo by například užitečné, pokud by měl (či měla) vystudovanou ekonomii, pomáhá to?

Ekonomii nutně nepotřebuje. Požadavky v BizMachine bych spíše přiblížil schopnostem konzultanta, který přichází do nového prostředí - musí si vytvořit nějaký základní rámec, sadu otázek, podle kterého klientskou situaci vyhodnotí. 

Konkrétně jde například o pochopení trhu daného klienta: jakou kapacitu má klientský obchodní tým, jak dlouho trvá jejich prodejní cyklus, jaká je konkurence, jak rychle chce vyrůst. Odpovědi na tyto otázky mu pomohou zvolit vhodný postup, diktují požadavky na přesnost segmentace či modelu a snižují počet iterací mezi zadáním a konečným uvedením do praxe.

To, co jsme se všichni v průběhu let naučili o fungování firem v různých odvětvích skrze analýzu dat, která z nich pochází, považuji za nevyslovený firemní benefit. Jde o velmi užitečný přehled o evropském B2B trhu.

Co bys poradil těm, kteří s programováním teprve začínají a zatím se naučili třeba jednu specifickou technologii?

Kdybych se mohl vrátit ke svým vlastním začátkům, investoval bych namísto konkrétního jazyka či technologie více do schopnosti rozdělit svůj program či postup na funkční celky, každý z nichž řeší jeden problém. Ve svých začátcích jsem se zabýval programováním v Rku (R Language for Statistical Computing) a snažil se jazyk, syntaxi, knihovny pochopit do hloubky, ale chybějící schopnost řešení dobře strukturovat mě pak brzdila.
Moje jednoznačně nejsilnější doporučení je ale to, aby si lidé vybrali problém, který chtějí sami vyřešit - spíše než problém, který jim zadává učitel nebo který najdou v tutorialu. Na reálných problémech se toho nejvíce naučí.

Moje jednoznačně nejsilnější doporučení je ale to, aby si lidé vybrali problém, který chtějí sami vyřešit - spíše než problém, který jim zadává učitel nebo který najdou v tutorialu. Na reálných problémech se toho nejvíce naučí.