Práca na technológii budúcnosti: Miliardová firma Kiwi.com hľadá testerov, Slovákom ponúka zaujímavé benefity a nadštandardný plat
- Pokazené logo či veľká chyba vo fintech systéme. Čomu sa venujú testeri?
- Platené taxíky či nadštandardná zdravotná starostlivosť. Aké benefity by mala ponúkať moderná firma?
- Kiwi.com aktuálne hľadá nových testerov a QA Engineerov
- Pokazené logo či veľká chyba vo fintech systéme. Čomu sa venujú testeri?
- Platené taxíky či nadštandardná zdravotná starostlivosť. Aké benefity by mala ponúkať moderná firma?
- Kiwi.com aktuálne hľadá nových testerov a QA Engineerov
Začalo sa to odvážnou myšlienkou dvoch kamarátov stať sa najväčším vyhľadávačom leteniek na svete. Unikátnym prepojením rôznych miest a letísk umožnili ľuďom lietať na dovtedy nedostupných trasách za výhodnejšie ceny. Česko-slovenskú appku Kiwi.com dnes používajú ľudia na celom svete.
Za elegantnou aplikáciou a webom sa skrýva sofistikovaný algoritmus, ktorý navzájom kombinuje vyše 100-tisíc letov každý deň. Obdivuhodný technologický produkt však treba kontrolovať.
QA engineering je jeden zo segmentov budúcnosti – IT pozície, ktoré pred desaťročiami neexistovali, no dnes sa bez nich veľké firmy nezaobídu. Testovanie v Kiwi.com prebieha pod taktovkou Head of QA Martina Škarbalu, s ktorým sme sa rozprávali o práci a testovaní.
Čomu sa v Kiwi.com venujú testeri a QA Engineeri?
Testing je súčasťou vývoja softvéru, kedy máme overiť, že produkt, ktorý vyvíjame, sa dostane v požadovanej kvalite k zákazníkovi. Kvalita môže vždy znamenať niečo iné.
Pri bankovom systéme to môže byť správny výpočet úrokovej sadzby, pri Kiwi.com zase to, že si zákazník dokáže pohodlne nájsť letenku, prejsť bez problémov rezervačný proces a zaplatiť.
Drobnosť ako deformované logo na stránke môže byť tiež problémom. Zdá sa to ako detail, ale potenciálny zákazník sa môže domnievať, že ide o phishingovú stránku a nespraví objednávku.
Testuje sa teda vždy niečo iné – funkčnosť, presnosť, odolnosť a robustnosť či bezpečnosť, napríklad pri platbách a podobne – ale testing a QA by mali potvrdiť, že k zákazníkovi sa dostane očakávaná kvalita.
Nedotkli sme sa samotnej otázky toho rozdielu medzi testingom a QA. Mohli by ste to ozrejmiť?
Testing v užšom slova zmysle znamená, že sa mi dostane do rúk nejaká aplikácia a ja manuálnym spôsobom otestujem, či to spĺňa zadané požiadavky. Čo sa v rámci Kiwi.com a QA engineering-u snažíme dosiahnuť, je zastúpenie kvality v každom procese vývoja – od dizajnu a špecifikáciu požiadaviek až po to, akým spôsobom zautomatizujem, čo som už manuálne otestoval.
V IT firmách sa často rozdeľujú úlohy na manuálnych a automatických testerov, prípadne iné roly ako test analytik a podobne. V Kiwi.com poznáme len jednu pozíciu, a to QA Engineer.
Od QA Engineera očakávam analytické schopnosti, kreativitu pri manuálnom testovaní a objavovaní nových chýb, až po technický návrh a implementáciu automatických procesov. Mal by teda v praxi vedieť aplikáciu manuálne otestovať a navrhnúť procesy tak, aby sme sa každým zlepšením zrýchlili a dostali sa tak k lepšej kvalite za menej peňazí.
Technologický líder na Slovensku?
Kiwi.com je platforma umožňujúca vyhľadávať najvýhodnejšie ceny leteniek. Kombinuje databázu tisícov letov medzi sebou a spoločne ich predáva ako jeden itinerár.
Aj keď sa Kiwi.com týka cestovania, jej hlavným produktom sú technológie, ktoré komplikovaný letenkový systém poháňajú. Za webom a aplikáciou sa skrýva sofistikovaný algoritmus, ktorý vyrieši desiatky miliónov requestov denne.
Firmu založili v roku 2012 slovák Jozef Képesi a čech Oliver Dlouhý. V súčasnosti zamestnáva už vyše 1 000 ľudí, pričom si však zachováva startupového ducha a unikátnu firemnú kultúru.
Kiwi.com aktuálne hľadá QA Engineerov do officov v centre Bratislavy alebo v Brne so skúsenosťami s automatizáciou, CI/CD pipeline, a programovacími jazykmi ako Python, Javascript, Swift a Kotlin. Na oplátku okrem nadštandardného platu ponúka, platené taxíky, letenky či extra dovolenku.
Bežný človek vníma Kiwi.com len ako vyhľadávač letov, no v pozadí je komplikovaná infraštruktúra. Ako to vyzerá v číslach? O akom objeme vyhľadávania sa bavíme?
Veľa ľudí, ktorí Kiwi.com poznajú, majú pocit, že to je len nejaký vyhľadávač, agregátor.
Pod povrchom sa však skrýva náš vlastný algoritmus, ktorý zbiera takmer všetky lety z celého sveta a nakombinuje ich tak, aby zákazník dostal optimálny, najlacnejší let. Od toho sa potom, samozrejme, odvíja aj to, čo sa objavuje na povrchu.
Kiwi.com je unikátny technologický produkt. Len letov spracuje asi 100-tisíc denne. Z nich náš algoritmus potom pripraví niekoľko miliónov kombinácií. A čo sa týka vyhľadávania letov, je to okolo 100 miliónov denne.
Ako priamo do toho zapadajú QA Engineeri?
Poďme k reálnemu príkladu, k nášmu Fintech QA oddeleniu, ktoré zabezpečuje všetky platby. To je sofistikovaný systém sám o sebe, berieme Apple Pay, Google Pay, klasickú kreditku, banky ako Revolut, promo kódy, vouchery a podobne.
Tento platobný kolos sa skladá z množstva menších služieb, ktoré spolu komunikujú a máme ich pomenované podľa postavičiek z Káčerova. Napríklad služba, ktorá je zodpovedná za to, že finálne platby uloží a zozbiera, sa volá Strýko Držgroš alebo Scrooge (smiech).
Novú verziu strýka Držgroša vydávame do produkcie automaticky 8-krát denne. Ak by sme mať sme mali ručne kontrolovať všetky platby, museli by sme mať desiatky testerov, ktorí by vyklikali ručne jednu platbu za druhou.
Nám sa za necelý rok podarilo prejsť od manuálneho testovania k automatizácii. Implementovali sme sadu automatických testov, ktoré kompletne nahradili manuálne testovanie. Do tohoto tímu momentálne hľadáme QA leada a QA Engineera.
Zobraziť pracovnú ponuku QA lead →
Zobraziť pracovnú ponuku QA Engineera →
A ako je to s testovaním samotného webu Kiwi.com?
Naša webová stránka je rozdelená do niekoľkých častí. Prvou z nich je vyhľadávanie leteniek. Približne 20-krát denne ju testuje 490 automatických testov, kde za vás robot vykliká rôzne situácie na stránke. Do produkcie vydávame novú verziu aplikácie približne 2-3x do týždňa. Podobne to prebieha v ďalších častiach ako rezervácia leteniek. Tu taktiež hľadáme posily.
Venujeme sa aj testovaniu Chatbota, prípadne interných systémov, ktoré využívajú naši agenti na administráciu leteniek.
Ako testujete mobilné aplikácie?
Máme tím 8 QA Engineerov, ktorí sa starajú o to, že naše aplikácie vydávame k zákazníkom bez chyby. Máme rozbehnuté automatické testy v natívnych nástrojoch, momentálne hľadáme riešenie pre pokročilú analýzu výsledkov.
Okrem automatizácie zavádzame aj procesy pre odhalenie chýb ešte predtým ako programátor začne s vývojom, pretože čím skôr objavíme chybu, napríklad v dokumentácii, tým viac času si ušetríme pri finálnom testovaní pred vydaním do produkcie. Aktuálne rozširujeme aj tento tím.
Aké technológie používate na automatizáciu?
Používame nástroje, ktoré sú špičkou na trhu, zároveň sa držíme hesla right tool for the right purpose.Pre webové aplikácie je to Cypress.io, prvé testy nám bežia už aj v Playwright.
Na testovanie mobilných aplikácií využívame natívne frameworky, ako napríklad XCUITest, ktorý je priamo od Apple, pre Android zasa nástroj Espresso. Na backend máme Python.
SoapUI či podobné staršie nástroje u nás nenájdete.
Ako pristupujete k inováciám?
Sledujeme trendy, skúšame nové nástroje, experimentujeme. Keď nám niečo padne do oka, najprv si to otestujeme v praxi a spravíme proof of concept.
Zistíme, či tam nie je nejaká bariéra, na ktorú by sme mohli v budúcnosti naraziť. Ak nie, postupne sa snažíme tento nástroj rozširovať. Práve nedávno sme s kolegom Patrikom diskutovali o novom nástroji – Playwright. Dnes ho chceme vyskúšať na prvom projekte.
Hľadáme medzi seba ľudí, ktorí sa neboja zahodiť staré riešenia a chcú skúšať nové technológie. Ak mi niekto povie: „If it’s not broken, don’t fix it.“, dostane sa do mojej nemilosti (smiech).
Vyvíjate si nástroje aj sami, in-house?
Ak riešime veľmi špecifický problém, tak áno. Naprogramovali sme si vlastnú službu, ktorá nám na pozadí vytvorí letenku pre testovacie účely. Skrátili sme čas testovania z 2-3 minút na približne 20 sekúnd pri každom vytvorení letenky a otvorili sa nám ďalšie možnosti v rámci automatizácie.
Aké chyby ste ochotní pustiť live? Ak viete, že za tri hodiny potrebujete ísť von a vidíte chybu, ktorú nestihnete dovtedy opraviť, čo spravíte?
Akákoľvek aplikácia sa vydá do produkcie aj s chybami, tomu sa, samozrejme, zabrániť nedá. Snažíme sa ale o to, aby 100 % fungovala tá najkritickejšia časť – zákazník si vždy musí vedieť vyhľadať a zarezervovať letenku. Okrem testovania máme aj iné mechanizmy ako chybu čo najskôr odhaliť, jedným z nich je dôsledný monitoring produkcie.
V poslednom čase sa nám však nestal žiadny incident.
Testing vs. QA engineering
Kým klasický IT tester zvyčajne manuálne hľadá veci v hotovom produkte, QA Engineer sa tento proces snaží automatizovať písaním kódu, ktorý to otestuje zaňho, efektívnejšie a vo väčších množstvách. Navrhuje samotné testovacie procesy už od samotného počiatku daného projektu a kontrolu tak integruje do projektu samotného.
Ide o mimoriadne dôležitú rolu, bez ktorej sa veľké technologické firmy s častým deploymentom nových buildov nezaobídu.
QA Engineeri sú jedným z povolaní budúcnosti, ktoré pred pár rokmi ešte len vznikalo, no je po nich veľký dopyt a v budúcnosti bude len rásť. Takíto odborníci si môžu vyberať, napríklad, podľa sympatií k firmám a technológiám, ktoré používajú a vyvíjajú.
Teraz hľadáš nových ľudí do tímu. Čo očakávaš od QA Engineerov, ako budú vyzerať ich dni?
Od juniornejších ľudí čakáme, že budú schopní základnej automatizácie, budú prispievať aj k manuálnemu testovaniu.
U seniornejších sa snažíme stavať viac na automatizácii a zlepšovaní procesov. Hľadám aj QA Engineera, človeka, ktorý bude navrhovať riešenia, bude aj výskumníkom, skúšať najnovšie nástroje a hľadať vylepšenia.
Mal by taktiež školiť ostatných, keďže vzdelávanie je moja vášeň a chcem posúvať náš tím dopredu. Výskumník a trendsetter, školiteľ, ktorému by som dal úplne voľnú ruku. Čiže jeho alebo jej deň bude taký, aký si ho spraví (úsmev).
A prečo práve Kiwi.com? Ste lídrom v domácom tech-travel segmente, ako sa to prejaví na práci?
Na Slovensku nepoznám tak technologicky zaujímavý produkt ako Kiwi.com.
Najväčšie tech firmy na Slovensku, ktoré tu máme, sú vlastne robustné banky a poisťovne, prípadne IT outsourcing, kde nemáte nič pod kontrolou a dirigentom je zákazník. Prídete na projekt a pracujete s nástrojmi, ktoré niekto zaviedol 10 rokov dozadu a vy nemáte šancu niečo zmeniť, a ako čerešnička na torte je notebook, ktorý vám vôbec nevyhovuje.
Kiwi.com je produktová firma. Pravidlá si určujeme sami. Zároveň budujeme produkt, ktorý nemá konkurenciu a ponúkame kultúru, ktorá vás pohltí od prvého dňa. A k tomu na výber medzi Macbook-om Pro, a nejakým iným Windows/Linux strojom.
V rámci benefitov sme celkom flexibilní. Od platených taxíkov cez vouchery na letenky až po 5 dní dovolenky navyše. Nedávno tu v piatok hrali kolegovia v práci šach, tak som im vybavil lekcie šachu (smiech).
Kiwi.com hľadá ľudí do tímu
Site lead spoločnosti Kiwi.com, Martin Škrabala, aktuálne hľadá QA Engineerov do officu v centre Bratislavy so skúsenosťami s CI/CD pipeline, Pythonom a automatickými testami. Česko-slovenská technologická firma buduje obdivuhodne sofistikovanú technológiu poháňanú mocným algoritmom, ktorý kombinuje vyše 100 000 letov.
Svojim zamestnancom ponúka prémiové benefity od zdravotnej starostlivosti a extra dovolenky až po vouchre na letenky, preplácané taxíky až po bonusy pri sťahovaní sa.
Aké zručnosti potrebuje mať QA Engineer a ako ich získa?
Ako som spomínal, QA Engineer by mal vidieť veci v súvislostiach. Mne na začiatok stačil “zdravý sedliacky rozum”, neskôr zvedavosť, lenivosť a ochota ísť z času na čas mimo komfortnú zónu. Neskôr sa dostane k technickým záležitostiam.
Treba sa vedieť učiť a nebyť lakomý, investovať do seba. Keď niekto príde na pohovor a má v CV kurzy, určite je pre mňa hneď zaujímavejší.
U seniorov vyžadujem kombináciu vynikajúcej komunikácie a kvalitných technických znalostí. Rozhľadenosť, sledovanie trendov a hľadanie inovácií. A rovnako potrebná je schopnosť učiť ľudí a odovzdávať svoje know-how ďalej.
Niekedy sa totiž rozprávame so seniorom, ktorý pracoval 10 až 15 rokov v určitej firme a je zaseknutý na jednom nástroji. Seniorným ho ale nerobí to, koľko rokov na určitej pozícii pracoval, ale jeho veľmi dobrý prehľad a to, že vie robiť veci inak.
Ako sa ale k testingu dostať? Žiadna vysoká škola na Slovensku to nevyučuje.
Je to pravda, nevyučuje sa to. Ale sú tu firmy, ktoré ponúkajú stáže alebo organizácie ako Aj ty v IT, odkiaľ vychádzajú naozaj veľmi dobre pripravení kandidáti.
Ja sám, keď som začínal, nemal som žiadnu skúsenosť v tejto oblasti a nevedel som poriadne, kde začať. Skôr som nad tým len špekuloval, začal sa učiť ako fungujú niektoré webové technológie a potom ma moja vlastná lenivosť priviedla k automatizácii.
Je QA testing na Slovensku rozšírený? Ešte som nevidel inzerát od žiadneho veľkého korporátu.
Rozšírený je, ale nie vždy to je kvalitné. Občas mám pocit, že niektoré firmy automatizujú len preto, aby vôbec nejaké automatické testy mali a mohli to predať klientovi.
My sa snažíme monitorovať úroveň automatizácie a aplikovať ju len tam, kde má vyslovene zmysel. Strážime si hranicu, kedy je miera automatizácie dostatočná, aby sme zasa príliš veľa času nepálili na údržbe týchto riešení.
Vidíme veľa firiem, ktoré vyvinú veľké riešenie a potom celý ušetrený čas spália na údržbe.
Ako ich udržiavate svoje riešenia v chode vy?
Sledujeme takzvanú flakiness, čiže zjednodušene dôveryhodnosť testov. V rámci testovania mobilných aplikácií hľadáme pokročilé možnosti analýzy, napr. s pomocou Datadogu. Takéto iniciatívy nám pomôžu testy zachovať v udržateľnom stave.
Aké sú vaše plány do budúcna?
Veľké. Technologicky sa chceme orientovať na testovanie výkonnosti, automatické vizuálne testovanie. Hlavne nezaspať na vavrínoch. Rád by som sa viac venoval aj vzdelávaniu a vychovaniu novej generácie QA Engineerov. Vytvoriť najmodernejšie QA oddelenie široko ďaleko. Postupne sa nám to darí a vidím, že ideme správnym smerom.