Analýza procesu onboardingu nových partnerů ve společnosti Kentico
Závěrečný projekt Digitální akademie Czechitas
Můj podzim roku 2017 byl mimořádně hektický. Mám za sebou deset týdnů, kdy jsem byla v neustálém poklusu mezi prací na plný úvazek a intenzivním kurzem datové analytiky. Žádné víkendy, žádné volné večery, málo spánku a občas i nervy. Ale zároveň skvělý pocit z pokroků, příval nových znalostí a skvělá skupina holek s obrovskou chutí se učit. Nelituji ani minuty, kterou jsem s nimi strávila.
Součástí Digitální akademie bylo vypracování závěrečného projektu, na kterém jsme měly všechny znalosti aplikovat a zkusit si datovou analytiku v praxi. A hned na začátek musím říct, že je tu jedna věta Dity Přikrylové, zakladatelky Czechitas a Digitální akademie, která ve mně bude rezonovat ještě dlouho: „Holky, hlavně se připravte na to, že vždycky přijdou nějaké problémy a frustrace.“
A ony fakt přišly!
Z HR marketingu do datové analytiky
Jmenuji se Míša a pracuji v brněnské softwarové firmě Kentico. Moje pracovní pozice nemá s programováním nic společného.
Kentico vytváří dva produkty v kategorii CMS řešení. Jsme na trhu od roku 2004 a zákazníky máme po celém světě. Denně sbíráme spoustu zajímavých dat, a proto moje volba logicky padla právě sem. Skromný cíl bylo vytvořit něco mimořádně skvělého, co firmě pomůže a já si na tom zkusím co nejvíc postupů a technologií.
Bez jakékoliv konkrétnější představy jsem si napsala do zadání „Analýza obchodních dat“, vybrala jsem si mentora a bylo to.
Jak se rodí nápad…
Kentico je velmi transparentní firma, takže přístup k datům jsem dostala prakticky hned. Daleko horší bylo se v nich zorientovat. Data z několika systémů (CRM, Google Analytics, Intercom a další) se ukládají do datového skladu, který má asi 60 velkých tabulek. Bohužel máme vizualizovaných asi 30 % vztahů, takže udělat join napříč 6 tabulkami nebo vlastně vůbec něco najít, opravdu bolelo. V tuhle chvíli jsem si říkala, že jsem si vzala příliš velké sousto a nezvládnu to.
Mise byla jasná — máme obrovské množství dat, ale musím si vybrat jeden směr a zadání si zúžit. Nechtěla jsem vytvářet něco jen tak do šuplíku, takže jsem v téhle fázi diskutovala nad existujícími reporty s kolegy a společně jsme hledali něco, na co bych se měla zaměřit, aby to Kenticu pomohlo.
Nakonec jsem se rozhodla vytvořit analýzu pro proces onboardingu našich nových partnerů. Partneři, nejčastěji v řadách digitálních agentur, tvoří významnou část našeho businessu, takže je to velmi zajímavá oblast. Není od věci zmínit, že tvorba zadání a proces hledání nám trval přibližně týden.
První krůčky k analýze procesu
Data jsem nechala stranou a začala jsem celý proces nejdříve podrobně studovat. Nebylo to totiž tak úplně jednoduché, jak to na začátku vypadalo.
Celý proces probíhá na dvou úrovních. První z nich je Lead, který se v určité fázi změní na Account. Během toho nastává řada dílčích stavů, které se propisují do CRM.
Abych získala ta správná data, potřebovala jsem nejdříve zjistit, jak se na ně zeptat. Na to žádná kuchařka není. Nezbývalo nic jiného, než si velmi podrobně nastudovat celou flow, pochopit, jak proces funguje, jaké situace mohou nastat, jaké jsou možné exity z procesu a především, jak se tohle všechno může projevit v datech. Bez toho bych nikdy nebyla schopná dát report dohromady, přemýšlet a validovat správnost našich skriptů pomocí kontrolních selektů.
Jakmile jsem si zanalyzovala celý proces, začali jsme vytvářet dlouhé SQL skripty. Věděla jsem, jaká data potřebuju a kde je získáme, abychom měli záznam pro každou entitu v čase. Dát to dohromady byla asi ta nejhorší část, protože to bylo úplně jiné SQL, než se kterým jsem se setkala v Digitální akademii. Lámala jsem si nad tím hlavu já, lámali si hlavu kolegové v práci i můj mentor.
Čistění a úprava dat
Nakonec se nám podařilo vytvořit základní tabulku pro Leads i Accounts. Výsledek vypadal nějak takto:
Jak je vidět, tak v některých fázích data chybí (NULL). Je to proto, že data se do DW ukládají jednou denně. Pokud se stane, že více stavů proběhne v jeden den, zapíše se pouze poslední z nich. Dalším krokem bylo doplnit data, abychom se zbavili prázdných hodnot tam, kde proces již proběhl…
…a pomocí dalších skriptů dopočítali trvání jednotlivých stavů.
Už tady bylo zřejmé, že se objevují případy, kdy proces neprošel všemi stádii tak, jak by měl. Záporné hodnoty jsem od dat očistila, ale vytvořila jsem si na ně speciální pohled, abychom s nimi mohli ve výsledném reportu také pracovat.
Nakonec jsem se zbavovali všech hodnot 0, které by nám zkreslovaly průměrné délky trvání. Nejdříve jsme chtěli pracovat s nějakou defaultní hodnotou (např. půl dne), ale nakonec jsem to vyřešila SQL skriptem, který dopočítával poměrovou hodnotu — pokud 3 stavy proběhly v jeden den, každý z nich měl trvání 0,3 dne apod. Je to asi největší zpřesnění, kterého můžeme v této chvíli docílit.
Tabulky jsme propojili ještě s geografickými informacemi o daném Leadu nebo Accountu a připojila jsem k nim i příslušné Terrirory Sales Managery. Nedá se ale říct, že bych tím s SQL v téhle fázi skončila. Naopak. Neustále jsem se vracela, vytvářeli jsme nové pohledy nebo je vylepšovali.
Vizualizace dat v Power BI
Data jsem se rozhodla vizualizovat v Power BI. Je to skvělý a dobře dostupný vizualizační nástroj. Potkala jsem se s ním v rámci výuky a navíc ho používáme pro reporty interně v Kentico.
I při vizualizacích jsem oddělila Leady a Accounty — jsou to sice dvě úrovně téhož procesu, ale snažila jsem se výsledek ladit podle přání kolegů z Kentica a podle toho, jakou optikou se na proces potřebují dívat a vyhodnocovat ho.
Pro každou entitu obsahuje report tyto listy:
Základní přehled
Základní přehled obsahuje funnel, který je nastavený průřezově a lze ho filtrovat podle času a lokality. To znamená, že ukazuje, kolik Leadů nebo Accountů obsahuje každý stav a jak se mění v čase, podle států a regionů.
Průměrný čas
Na dalším listu jsem základní přehled doplnila o horizontální funnel, který obsahuje pohled na stejná data kumulativně — na rozdíl od prvního funnelu ukazuje, kolik Leadů nebo Accountů daným stavem už prošlo.
Odchylky
Tato část vizualizace funguje jako upozornění, že něco neprobíhá, jak by mělo. Ukazuje případy, kdy byl sled kroků v jiném pořadí. Díky tomu je lze snadno dohledat v CRM, zjistit, co se děje, a případně data opravit.
Kromě toho zobrazuje i případy, kdy se některý Lead nebo Account „zasekne“ v daném kroku na více než dvojnásobek průměrné doby. To nám opět dává informaci, že se něco děje a bylo by vhodné zjistit, co zpoždění způsobuje.
Territory Sales Manažeři
Poslední list je spojený pro obě entity — Leady i Accounty — a zobrazuje, s kolika potenciálními partnery komunikuje daný Sales Manažer.
Vizualizovaná data jsem si kontrolovala pomocí selektů v SQL nebo jsem se o jejich interpretaci bavila s kolegy, abychom si byli jistí, že jsme na správné cestě.
Trochu mě potrápily Time Slicery pro různé typy funnelů nebo vazby, které se vytvářejí na pozadí Power BI automaticky a pomohou vám ovlivňovat některá data, aniž byste to chtěli (doporučuji si tuhle funkci vypnout).
Uvědomila jsem si, že Power BI může být komplexní nástroj a práce s ním nebyla vždycky úplně jednoduchá. Nejednou se mi stalo, že jsem se zasekla na 3 hodiny u něčeho, co jsem odhadovala na 15 minut ( „Prostě to tam naklikám, ne?“).
S výsledkem jsem spokojená — myslím, že se ho podařilo dostat do podoby, která je jednoduchá a dává smysl. Power BI totiž někdy svádí přeplácat reporty vizualizacemi, které pro sdělení vlastně nepotřebujete.
Vizualizace dat v MinitLabs
K doplnění mého projektu jsem si našla ještě datový nástroj Minit, který se zaměřuje na interaktivní analýzu eventových dat. Opět jsme se tedy vrátili k SQL. Data je potřebné do něj nahrát v podobném formátu:
U některých typů procesů můžete na jednotlivé aktivity napojit ještě finanční data. A zbytek už se stane za vás.
Na Minit jsem narazila díky článku Petra Šimečka z Kebooly. Domluvila jsem si call se zástupcem Minitu, představila svůj projekt a dostala licenci na půl roku. Tento analytický nástroj poskytuje spoustu zajímavých statistik nebo grafů a rozšíří vám úhly pohledu na ta stejná data. Na celý proces můžete nahlížet z hlediska průběhu aktivit a výkonnosti lidí (případně financí) — pár kliknutími například zjistíte, kdo z vašich Sales Manažerů je nejrychlejší, průměrnou dobu jednotlivých aktivit nebo si zobrazíte časový sled událostí v krásné animaci. Zatím spíše zkoumám jeho potenciál, ale už teď je jasné, že by stálo za to ho otestovat na jiném projektu, kde budeme mít více dat.
Proč jsem to celé dělala a s jakým záměrem?
Identifikovala jsem si tyhle přínosy:
- Na projektu jsem si vyzkoušela data thinking a způsob, jak přistupovat ke „klientovi“. Klást ty správné otázky a hledat cesty. Datům jsem se musela naučit porozumět sama a pokud jsem po mentorovi žádala pomoc, musela jsem velmi přesně vědět, co potřebuju a jak toho docílíme.
- Přínos je i ve způsobu, jak jsme data z datového skladu dostávali. Bylo to časově náročné a složité, ale můžeme to ve firmě částečně replikovat i u dalších reportů.
- Význam analýzy poroste s časem. Použitelná data v něm máme od února 2017 (dříve prostě nebyla) a celý proces onboardingu může trvá měsíce. S rostoucím počtem onboardovaných partnerů se zvýší statistická přesnost některých výsledků.
- Neméně důležité bylo zamýšlet se nad vizualizací a způsoby, jakým informace sdělujeme, kdo je bude číst a jak je bude číst. To nám v Kentico může pomoct vnést konzistenci do dalších podobných reportů.
- Skvělé bylo využití nástroje Minit, který má velký potenciál i pro další analýzy.
- Obrovská přidaná hodnota pro mě: vyzkoušet si všechno v reálném světě. Projít si skutečnými problémy a frustracemi, které vám dá jenom praxe, a zjistit, jestli mě ta datová analytika baví. (Jo, baví.)
Než pošlu report směrem do firmy, zbývá už jenom odladit pár věcí a důkladně ho s kolegy zkontrolovat.
Velmi zajímavé by bylo podobnou analýzu rozšířit i o nějaké modelování, například co by se stalo, kdybychom najednou měli o 500 leadů víc a jak bychom to zvládli zpracovat? Do toho se pustíme třeba příště :)
Nebyla jsem na to sama
Na mojí cestě k dotažení celého projektu měli zasádní vliv tito lidé:
- Můj mentor Miloš Minařík z firmy Safetica, který vynaložil nemálo energie a svého času, abych se projektem prokousala do konce.
- Kolegové z Kentica Adam Hejna a Lukáš Martinák.
- Moje spolužačky a koučové z Czechitas.
- Zuzka Tancibudková a Martin Jakubec, kteří mi fandili.
Vám všem moc děkuju.
Zdroje
- Dokumentace Power BI: https://docs.microsoft.com/en-us/power-bi/
- Dokumentace Microsoft SQL Server Management Studio: https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms
- Kurz Data Visualisation — Best Practices: https://www.lynda.com/Design-tutorials/Data-Visualization-Best-Practices/585239-2.html
- Petr Šimeček o Minit: https://padak.keboola.com/interaktivn%C3%AD-anal%C3%BDza-eventov%C3%BDch-dat-fadc40250bf0
- Blog Minit: https://www.minit.io/blog
- Článek Using data analytics to improve business processes and reduce waste: http://www.information-age.com/using-data-analytics-improve-business-process-waste-123464115/
- Interní dokumentace Kentico
- (pro inspiraci) Článek How big data can improve manufacturing: https://www.mckinsey.com/business-functions/operations/our-insights/how-big-data-can-improve-manufacturing