Z této spolupráce máme velkou radost. Za 9 měsíců jsme vypustili do světa 8 různých webů, pro 7 zemí, v 6 jazycích. Jedou jako blesk, vypadají krásně a na 100 % plní svůj účel. Aby ne, Rohlik.Group ví, co a proč chce a weby navrhovalo SYMBIO.
Rohlík.cz je nejoblíbenější český e-shop potravinami. Dnes působí i v Rakousku, Německu, Maďarsku, Rumunsku a Bulharsku.
"Potřebujeme nabírat lidi přes web. Za měsíc. Ne za půl roku. Na stovky pozic, v sedmi zemích, všechno spravovat z jednoho místa." To bylo byznys zadání od Rohlík.group
Naše role byla jasná. Podle specifikace SYMBIA dodat do měsíce první funkční náborový web. V tomto případě career.rohlik.group. A na jeho základě dále stavět obdobné weby v dalších zemích.
vybrat a nastavit publikační nástroj / platformu pro správu obsahu webu, abychom mohli plnit a překládat obsah ještě před kódováním
rychle nastudovat několik API Rohlíkových systémů
napojit web na stávající HR systém (DataCruit) pro synchorinzaci nabíraných pozic a posílání dat z formulářů do něj
vyladit systém filtrování stovek pozic podle zemí, měst, departmentů - vždy nad nejaktuálnějšími daty
vše připravit pro více jazyků (administrace, školení, návody, vlastní obsah
rozjet monitoring dostupnosti různých API, protože mívaly výpadky
mezinárodně pořešit GDPR / cookie záležitosti
a samozřejmě weby nakódovat, naprogramovat, udržovat, rozvíjet a připravit na nepravidelné vlny vysoké návštěvnosti
Spouštíme rovnou se zátěžovým testem
Píše se 20. červenec 2021 a spouštíme první web. V Rohlíku na nic nečekají a oznamují spuštění do světa. Díky jednomu obyčejnému Tweetu rovnou proběhl i neplánovaný zátěžový test serveru.
První web běží, náborová kampaň běží, perfecionismus sprintuje. V duchu SYMBIO hesla better done and perfect ladíme desítky detailů grafiky a responsivního chování. Jeden za všechny: barevné tvary v pozadí se přece nikdy nesmí dotýkat.
Patří inzerát v češtině na německý web? A patří inzerát v angličtině na německý web? I takové nuance bylo potřeba vyřešit.
Vznikají tak pravidla zobrazování inzerátů na jednotlivých webech:
na německý web se dostane inzerát, který a) je psaný německy b) je určen pro Německo
na rakouský web se dostane inzerát, který a) je psaný německy b) je určen pro Rakousko
na český web se dostane inzerát, který a) je psaný česky b) je určen pro Česko
obdobně i další země
na group web se dostanou všechny inzeráty psané anglicky
A hádejte, kde se zobrazí inzerát v němčině a pozice bude vypsaná pro Rumunsko. (Správě, nikde :)
Dříve míval běžný firemní web všechna data "v sobě". Měl svou databázi, svou šablonu, svoje texty a multimédia. Jeho obsah nešel využít pro jiný web, neuměl načítat data z jiných zdrojů.
Rohlík má jiné potřeby - ideálně z jednoho systému ovládat všechny náborové weby, vkládat do nich dynamicky aktuální pracovní pozice z interního systému, a zpět do něj posílat získané životopisy.
Centrem všeho je CraftCMS. Je to tzv. headless CMS, takže sám o sobě neumí nijak publikovat obsah. Slouží "pouze" pro strukturované ukládání textů a multimédií a tato data poskytne jiným systémům. Každý jednotlivý kousek obsahu pak může využít fakticky neomezený počet webů. Pro jazykové mutace ideální. Další výhodou je, že se dá připravovat obsah webu, i když zatím žádný web fakticky neexistuje.
“Jeden Craft vládne všem, jeden weby váže, všem jazykům a zemím káže.”
Obsah z Craftu pak vkládáme do HTML šablon vytvářených ve Vue.js a Nuxtu. To nám umožňuje mít pro všechny weby jednu základní šablonu a přitom si ji na každém webu přizpůsobit nebo o něco doplnit. Pěkným příkladem je funkce náboru kurýrů (pouze) na české verzi.
Vlastní weby pak generuje (sestavuje) Netlify. Je to nutné, protože pracovní pozice vždycky dynamicky načítáme přes API z DataCruitu.
Data z webu odesíláme do různých míst, hlavně do DataCruitu nebo i do Google Sheetů. Pro některé procesy prostě stačí obyčejná tabulka, jiné vyžadují hlubší integraci do workflow v různých zemích.
Řešili jsme i problémy kvůli nedostupností API DataCruitu. V nepravidelných intervalech vypadávalo a neodesílaly se do něj formuláře. Vytvořili jsme proto zásobníky, které v pravidelných intervalech odesíláme, dokud nemáme zpětnou vazbu, že data v pořádku doplula na místo určení.
Povedla se nám “skvělá věc”. Prvních pár dní jsme neodesílali data z formulářů do Rohlíku. Štěstí bylo, že poučeni z dřívějška jsme veškerá data z formulářů ukládali i lokálně, takže Rohlík mohl uchazeče oslovit ještě zpětně.
A čím to bylo? Zapomněli jsme odkomentovat jeden řádek v kódu při převodu z testingu. Takže nově máme v testovacích scénářích další automatizovaný test.
Nevěřili byste, kolik času stálo i jen popsat chtěné chování obyčejného výpisu pozic.
To máte: Co se stane, když kliknu na zemi? A pak na město. A když první kliknu na město? Mají se mi vypisovat i počty pozic? Má se to chovat stejně, když kliknu na text i když kliknu na checkbox? A co když mi najednou přibude nová země? A když… Nakonec všechno ovlivňuje všechno.
Tato mapka ukazuje, kde už Rohlík působí. A negeneruje se jen tak. Generuje se podle databáze pozic. Automaticky. Když dnes Rohlík přidá pozici v Marseille, tak se rozsvítí celá Francie a označí se i Paříž. Náš kodér Honza na tom strávil nocovku. A proč? Protože to chtěl dát.
“Slovy klasika: Tolik práce, a přitom taková blbost :).”
“Není důležité to mít dokonalé, důležité je to spustit. A pak pracovat se zpětnou vazbou. Potřebujeme nabírat lidi. Za měsíc. Ne za půl roku.”
To je zase přístup Rohlíku
Měsíc na vývoj takého projektu je šibeniční termín. Zvlášť pro zadání, které teprve vzniká. O úspěchu rozhodly tři věci:
Třeba, že nic není nalajnované a vytesané do kamene na rok dopředu. Plánuje se konkrétní práce vždycky na 14 dní (tzv. sprint) a pak se jde na další práci. Během sprintu se dodržuje zadání, nezadávají se změny. A zároveň na další sprint můžete naplánovat cokoli. Takže vývoj dokáže rychle reagovat na změny byznysových priorit.
Příklad? Pro další sprint jsme připravovali zadání na italský web. Ovšem podařila se náborová kampaň ve Španělsku a bylo potřeba ji upřednostnit. Takže šup šup na Španělsko. A je to OK, nový sprint ještě jde upravit.
“Priorita je italský web. Za týden: Stop! Potřebujeme nutně španělský web”
Tak vypadá realita firmy, která se proaktivně řídí daty.
Věřte nevěřte, naše týmy za ten rok spolupráce fyzicky ani jednou nepotkaly. Kromě našich inhouse vývojářů samozřejmě. Všechno jsme řešili jen na dálku. Covid 😷 likes it.
Můžete se kreativně inspirovat z testu rohlíkovosti. Pěkné, že?
Spolupráce se Symbiem a Rohlíkem nás baví. Dostáváme super zpracované zadání, rychle společně ladíme veškeré nuance a změny potřeb. A na výsledky je radost pohledět, stovky hlásících se kurýrů měsíčně to jen podtrhují.
Výsledky
Umíme toho víc
Informační systém a prodejní multiweby pro skupinu Barth
Nový informační systém pro velkoobchod hnojivy.
Globální platforma Jägermeisteru pro podporu umělců v době Covidu
I smlouvu na pořízení tryskáče můžete se SGEF podepsat digitálně
Důvěryhodný systém pro online aukce nemovitostí.