Přinášíme ti záznam z webináře s Katkou Michalitschke o manuálním testování software. Na webinář se můžeš mrknout tady. Přepis webináře byl redakčně upraven a zkrácen.
Martin Ptáček: Krásný den, já vás tady všechny vítám! Dnes jsme si pro vás připravili takovou odlehčenou verzi webináře o testování software. Nebudeme řešit žádné technické detaily, ani technické podrobnosti. Jde nám spíš o to ukázat ti, jak může profesní cesta testera vypadat, jakým způsobem se do IT můžete dostat, co tam lze zažít a koho tam můžete potkat.
Na úvod se představím: Já jsem Martin Ptáček a jsem ředitelem Coders Lab v Česku a na Slovensku a mám za sebou asi 25 let v IT. Za tu dobu jsem prošel různými pracovními pozicemi, jako je UX designér, digitální tester, kodér, programátor, ale většinu té doby jsem strávil zejména spoluprácí s těmito specialisty.
Provozoval jsem i několik společností na vývoj softwaru, takže v IT prostředí mám bohaté zkušenosti. Coders Lab je IT akademie, která funguje v rámci několika zemí v Evropě a nabízí velké množství IT kurzů. Specializujeme se hlavně na to, abychom ti pomohli rozjet IT kariéru klidně úplně od nuly. Dneska bych tu rád přivítal Kateřinu Michalitschke – testerku z kosik.cz, která přináší inspirativní příběh o tom, jak se dostala do IT a jakým způsobem si našla to, co ji baví a co jí vyhovuje. Kačko, na úvod tě poprosím, jestli bys o sobě řekla pár slov.
Kateřina Michalitschke: Ahoj, dobrý den. Moje jméno je Kateřina Michalitschke. Aktuálně jsem testerkou v Košíku. Než ale popíšu svoji profesní cestu, tak bych ráda vysvětlila motto, které vidíte v prezentaci: „Tester bez vývojáře a vývojář bez testera je jako neosolená polívka.“ Tohle motto vychází z mých reálných zkušeností. Neosolenou polívku totiž můžete sníst, ale určitě ve vás nezanechá moc dobrý dojem, zkrátka to pro vás nebude úplně kompletní a stoprocentní zážitek. A podle mě tohle motto krásně ilustruje roli testera, která je v IT opravdu důležitá, což se mi dnes a denně potvrzuje.
Martin Ptáček: To mohu potvrdit i já, protože když se netestuje, tak musí testovat klienti. A ti mívají jen určitou míru trpělivosti – jakmile trpělivost přeteče, přicházejí v lepším případě stížnosti, v tom horším přestávají produkt používat. Kačko, můžeš nějak jednoduše vysvětlit rozdíl mezi vývojářem a testerem?
Kateřina Michalitschke: Já bych možná navázala na jedno video, které jsem před nedávnem viděla. V něm byl vývojář představen jako někdo, kdo dejme tomu vytvoří gauč, sedne si na něj a řekne: „Sedí se mi hezky.“ Pak přijde tester, gauč otočí, zkusí na něm udělat kliky, zkusí ho rozebrat, zkusí si pod něj lehnout. Následně ho otočí ve všech možných směrech, zkusí do něj kopat, šťouchat a tak. Zkrátka ho zkoumá z nejrůznějších úhlů pohledu. To je příklad z praxe, který nádherně demonstruje rozdíl mezi vývojářem a testerem.
Martin Ptáček: Přesně tak. Tester je takový věčný šťoura a nimral, který se potřebuje zaměřit na každý detail, a nedá pokoj, dokud developer neudělá produkt úplně bez chyby. Pokud tedy vůbec jde udělat software bez chyby. Developeři mají často pocit, že když něco vyvinou a ono to funguje, není potřeba to následně testovat. Ve skutečnosti je ale nutné testovat cokoliv. Kačko, zkus trochu rozvinout, jaká je práce testera v IT firmě, jaká je jeho úloha a čím se zabývá.
Kateřina Michalitschke: Za mě je tester plnohodnotná součást celého vývojového týmu. Tester je na jednu stranu kritik a hnidopich, hledač možných skulin a chybek, na straně druhé je to i rádce. Kolikrát se nás totiž vývojáři ptají: „Hele, je ti jako uživateli příjemnější tohle řešení, nebo naopak tohle?“ Zároveň funguje jako kontrolor kvality. V roli testera jste de facto první uživatel, který vše prokliká a seznámí se se všemi zákoutími dané aplikace nebo jejím kusem. Tester je ten, kdo dává prvotní feedback, než se s produktem setkají ostatní uživatelé. Jeho úkolem je zajistit kvalitu bez chyb, mylných scénářů, nepřesností nebo zbytečně krkolomných postupů. Tím vlastně navazuji na to, co říkal Martin, že vývojář mívá mnohdy klapky na očích, protože on programuje a vyvíjí daný produkt na základě letitých zkušeností. No a já jsem ten člověk, jehož úkolem je profesní klapky trochu posunout a přinést nezaujatý, laický pohled na věc. Podívat se na ni očima běžného uživatele, nikoliv programátora.
Martin Ptáček: Já bych k tomu ještě doplnil, že pokud se třeba dělá nějaké uživatelské testování, tak byste nevěřili, kolik různých scénářů lidé vytvoří na to, aby splnili tu samou věc. Někdo se vydá přes menu, druhý jde přes vyhledávání, třetí najde nějakou další cestu. V tu chvíli teprve vidíte, jak daný program nebo software funguje, když ho vystavíte obecenstvu. Každý k němu totiž přistupuje svým způsobem, každý od něho očekává trošku něco jiného a každý má i trochu jiné zobrazovací zařízení. V tu chvíli vidíte, s kolika scénáři použití je potřeba počítat i pro jednoduchou webovou aplikaci nebo jednoduchou webovou stránku, natožpak pro tak komplexní věc, jako je třeba mobilní aplikace na objednávání zboží. Nicméně pojďme dál. Kačko, jak vlastně vypadá tvůj pracovní den?
Kateřina Michalitschke: Každý den je jiný, ale všechny mají nějaké společné průsečíky. Tím prvním jsou tzv. scrum ceremoniály, což jsou různé meetingy. Mezi scrum ceremoniály řadíme klasický denní standard, což je deseti až patnácti minutový meeting, u kterého se záměrně stojí proto, aby nebyl zbytečně dlouhý. Během něho si řekneme, na čem jsme dělali předešlý den, na čem budeme pracovat teď, jestli jsme nějakým způsobem blokovaní, jestli máme nějaké nejasnosti, doplňující otázky a tak dál.
Martin Ptáček: Já bych k tomu ještě doplnil, že scrum se ve firmách dělá hlavně proto, aby se co nejdříve identifikovaly bloky jednotlivých lidí případně se včas zjistilo, že někdo potřebuje s něčím pomoct atd. Není tam prostor na to řešit věci do hloubky, je to jen rychlá synchronizace týmu.
Kateřina Michalitschke: Přesně tak. K dalším scrum ceremoniálům, které se mě jako testerky týkají, patří třeba planning. Planning je klasický meeting, kde si na následujících čtrnáct dní naplánujeme práci a řekneme si, kdo na čem bude dělat. Snažíme se tak předcházet tomu, abychom neměli „okurkovou sezonu“ střídanou obdobími, kdy nevíme, kam dřív skočit.
Dalším ceremoniálem je grooming, což je meeting, kde probíráme náročnost jednotlivých úkolů. Naším cílem je rozplánovat si je tak, aby práce byla kontinuální a žádný člen týmu se na ničem vyloženě nezasekl. Na konci každých čtrnácti dnů máme tzv. retro, kde si zhodnotíme, jak nám to v uplynulých dvou týdnech šlo, co bylo dobré, co se nám nepovedlo, na čem bychom mohli ještě zapracovat a tak dál. Občas máme i další ceremoniál, který se nazývá demo. To znamená, že ukazujeme lidem z byznysu to, co jsme pro ně vytvořili. Pokud ale opominu meetingy a ceremoniály, tak se můj běžný den skládá hlavně z každodenní komunikace s vývojáři a členy týmu. Pracujeme v ticketovacím systému Jira, ve kterém si navzájem zadáváme jednotlivé úkoly. Jakmile mi od vývojáře něco spadne do testingu, vím, že nastal můj čas. Poté, co se na danou věc podívám, mám doplňující dotazy týkající se všeho možného. Někdy se řeší jen detaily, jindy konkrétní chyby.
Martin Ptáček: Já bych tady doplnil, že v IT je extrémně důležité přesné vyjadřování, které nevytváří prostor pro nějaké další interpretace. Zadání musí být jednoznačné. Zákon schválnosti totiž říká, že když někomu něco zadáte jen trochu nepřesně, tak ten druhý to sice pochopí, ale úplně jinak, než jste zamýšleli. A jestli vývojáři něco nesnáší, tak dělat věci znova, protože je to pro všechny jen obrovská ztráta času. Zadání tedy musí být brilantně přesné. Jinak nelze očekávat žádný brilantní výsledek.
Kateřina Michalitschke: Naprosto souhlasím. Kolikrát se raději doptávám opravdu dvakrát nebo třikrát, abych měla jistotu, že to chápu správně. Jinak k mojí další činnosti patří prezentace výsledků práce a samovzdělávání, což považuju za velkou výhodu práce v IT.
Martin Ptáček: Pojďme na další slide, kde nás čeká tvůj příběh. Já jen na úvod krátce řeknu, že Kačka je téměř renesanční osobnost – chová včely, vyrábí svou vlastní kosmetiku, čas od času někoho nalíčí, takže má opravdu široké pole působnosti.
Kateřina Michalitschke: A to všechno díky IT (směje se). Můj příběh je vlastně úplně jednoduchý a krátký. Ze státní správy jsem se k IT dostala jako slepá k houslím. Původně jsem vystudovala Policejní akademii, kde jsem na magisterském studiu začala pracovat na veřejných zakázkách. Jakmile jsem dostudovala, zůstala jsem tam na plný úvazek. Po zhruba třech a půl letech jsem si ale říkala, že už mi to stačí. Státní správa v Česku je trochu zkostnatělá a pro mladého člověka, který má energii, elán a chuť věci měnit, je to tam docela těžké. Když jsem se opakovaně setkala s tím, že něco nejde zjednodušit nebo zefektivnit, protože je to takhle zažité už třicet let, začala mi docházet šťáva. Nakonec jsem se rozhodla udělat za tím tlustou čáru a začít hledat štěstí v soukromém sektoru. Náhodou jsem se dostala do firmy, která se nakonec stala mojí IT kolébkou. Původně jsem se tam hlásila na úplně jinou pozici. Nakonec mi během pohovoru nabídli testing – kontrolu práce vývojářů. To mi přišlo docela vtipné, protože tehdy pro mě počítač byl prostě jenom bedna, kterou zapnu a vypnu, občas na ní něco napíšu nebo vytvořím prezentaci a tím to končí. Ta paní, která mě tehdy nabírala, mi řekla: „Ale to je přesně to, co my potřebujeme. Někoho, kdo má všech pět pohromadě, kdo umí komunikovat, nebojí se ozvat a nekouká na produkt programátorskýma očima, ale pohledem laika.“ Takhle tedy začala moje testerská kariéra, de facto omylem. V první práci jsem se naučila testovat webové aplikace a před rokem a pár měsíci jsem nastoupila do Košíku na pozici testera mobilní aplikace. To mi vlastně zůstalo do dneška, spolu s webovou aplikací. To je ve zkratce moje cesta ze státní správy k testování softwaru.
Martin Ptáček: Kačko, ještě se zeptám na jednu doplňující otázku. Víme o tobě, že jsi manuální tester a do automatizace se neženeš. Můžeš nám vysvětlit, proč?
Kateřina Michalitschke: Automatizace mi není úplně blízká. Nejsem tolik technicky zdatná, nemám ani velké ambice nořit se do základů programování, které s sebou automatizované testování nese. Tím pádem je pro mě manuální testování a i mobilní manuální testování podstatně zajímavější. K pocitu rozmanitosti mi třeba stačí jen to, že v rámci testů pracuji na dvou platformách – Android a iOS, z nichž každá funguje trošku jinak. Jinak v chatu teď ještě vidím otázku, jaký je rozdíl mezi automatizovaným a manuálním testováním? Automatizované testování je, že si člověk „programátorsky“ napíše kód, který produkt nebo jeho část otestuje za něj.
Martin Ptáček: Já to jen ve stručnosti doplním. Manuálním testováním nejsme schopni otestovat veškeré scénáře, veškeré kombinace a podobně. Například pokud potřebujete otestovat aplikaci typu hypoteční kalkulačka nebo chcete prověřit nějaký server zátěžovým testem, potřebujete skript, který vytvoří třeba virtuální zájem 100, 200 nebo 300 lidí. Ti najednou vlezou na server a vy zkoumáte, zda tenhle nápor vydrží. Nebo napíšete skript, který opakuje nějaký kód a může toto opakování udělat klidně desettisíckrát, což by při manuálním testování nebylo možné. Při manuálním testování naopak všechno prolézáte ručně, zapojujete mozek a objevíte tak řadu věcí, na které by se při tom automatizovaném testování nepřišlo. Manuální testování mnohdy slouží k tomu, abyste si nasbírali náměty na to, co potom automatizovat. Každopádně pokud umíte manuální testování a k tomu zvládnete i automatizovat, jste takový tester na steroidech, který je schopný podrobit aplikaci opravdu brutální zkoušce. Ale pojďme se teď zase posunout dál. Kačko, je IT obor skutečně tak super, jak se říká?
Kateřina Michalitschke: Za mě ano. Ano, ale (směje se). Nicméně začněme tím pozitivním. Proč je to tak super? Jako první mě napadá časová flexibilita. Pokud opominu meetingy, tak je úplně jedno, kdy svou práci udělám. Je jedno, jestli pracuju od šesti od rána, od devíti od rána a nebo k tomu sedám až o půlnoci. Velkým bonusem IT oboru je také možnost pracovat odkudkoliv. Je jedno, jestli práci vykonávám z Prahy, nebo třeba ze Severního pólu. Samozřejmě to neplatí plošně, ale u velké řady IT společností lze fungovat celkem často na home office. Já osobně tuhle možnost využívám tak, že to ve čtvrtek zabalím v Praze a na víkend jedu do svého rodiště, kde mám včely, a mohu tam hned po práci navštívit rodinu. Jinak IT obor je hodně dynamický, věci se tam rychle mění, což může být pro někoho plus, ale pro jiného třeba mínus. Určitě to člověka motivuje k tomu, aby byl pořád ve střehu a vnímal, co se kolem něj děje. Další velkou výhodou jsou finance. IT sektor neváhá vaši píli, znalosti a zkušenosti opravdu ocenit.
Martin Ptáček: Tady by asi mělo zaznít i to, že většina IT zaměstnavatelů od vás na začátku neočekává, že budete umět všechno, co je třeba. Pokud z vás během pohovoru cítí motivaci a chuť se učit, obvykle vám dají zelenou. To je důležitá informace pro ty z vás, kteří možná pořád sedí doma a studují, a neví, jestli už nastal ten správný čas vyrazit na pohovory, nebo jestli je potřeba doplnit ještě něco dalšího. Moje rada zní: Jděte zkusit praxi a nebojte se toho, co po vás ve firmách budou chtít. Hlavní je mít odhodlání a chuť se to rychle naučit. Kdo jednou strčí ruku do otevřených dveří IT sektoru s tímhle nastavením, toho ten sektor vcucne jako vysavač. Ale klidně, Kačko, pokračuj s těmi benefity.
Kateřina Michalitschke: Finance jsme probrali, dalším obrovským plusem je svěží a rychlé prostředí. V IT se na nic zbytečně nečeká, nikdo nikomu nešlape na paty, každý si „jede“ svoji kariéru, každý se zlepšuje sám o sobě. Panuje tam nejen velká míra svobody, ale i zdravá spolupráce – všichni se posouvají navzájem a nikdo nemívá problém poradit. Těší mě taky absence závisti a zášti, což asi záleží kolektiv od kolektivu. Neříkám, že to je takhle úplně všude. Za velký benefit považuji kontinuální vzdělávání – v dalším studiu vás všichni podporují, protože vnímají přidanou hodnotu, kterou vaše znalosti a dovednosti vnášejí do týmu a tím pádem i do celé společnosti. Navíc máte velkou příležitost posouvat se v kariéře dál, pokud chcete. Rozhodně nemusíte skončit jako manuální tester. Jsou tu velké možnosti přesahu.
Martin Ptáček: Děkuju Kačko. Pojďme k sekci výzvy, fuck-upy, překážky… Mně se moc líbí heslo, že nevědět v IT je oukej. A to je, řekněme, velmi důležité motto nejen na pohovory u potenciálních zaměstnavatelů, ale i v každodenní praxi.
Kateřina Michalitschke: To mohu potvrdit. Ani po třech a půl letech v IT sektoru nevím všechno a téměř denně chodím za vývojářem nebo za ostatními členy týmu s dotazy. Takže se připravte na to, že nevědět je oukej. Není to žádná hanba, nemusíte se za to stydět. Můj první projektový manažer mi řekl moc hezkou větu, které se držím do dneška: „V IT sektoru není zbytečných dotazů. Klidně se zeptej třikrát na to stejné a já ti pokaždé zkusím odpovědět jinak, abys to pochopila líp. Není zbytečných nebo špatných dotazů. Ostatně ptají se úplně všichni. IT sektor je obrovský, takže nikdo není schopný pojmout a znát úplně všechno. Je proto třeba se připravit na to, že první měsíce se budete neustále na něco ptát. Určitě je dobré se toho nezaleknout a nezačít se trápit pochybnostmi, že jste špatný člověk na špatném místě. Dokud se ptáte, jste tam správně (směje se).
Martin Ptáček: Já k tomu dodám ještě dva body. Z mých zkušeností je hodně důležité chodit s celým týmem na oběd. Tam se probere všechno možné a často se dozvíte víc, než byste si přáli. A ta druhá věc je: raďte se s ostatními. V IT je běžné vidět někoho, jak někomu něco vysvětluje. Děje se to tařka neustále. Je úplně normální dojít si pro radu k někomu, kdo už daný problém řešil, šetří to čas. A právě efektivita je v IT klíčová, takže se nebojte a ptejte se.
Kateřina Michalitschke: Naprosto souhlasím. Vrátím-li se ale k těm výzvám, tak pro nováčky může být náročnější třeba to, když z pozice nezkušeného testera upozorňují vývojáře na chybu, kterou nechce hned uznat. Je to trochu náročné na psychiku, ale určitě se nenechte zviklat. Další výzvou je tzv. autorská slepota. Jakmile se na něco díváte často a jste v tom úplně ponořeni, může vám nějaká chyba utéct. Pak si říkáte: „Jak jsem to jen mohl přehlédnout?“ I na to je třeba se připravit, protože jsme konec konců jen lidi z masa a kostí a nemůžeme vždycky zvládnout všechno na 100 %.
Martin Ptáček: Máš nějaký způsob, jak autorské slepotě alespoň částečně předcházet?
Kateřina Michalitschke: Moje osvědčená metoda je něco otestovat a nechat to chvíli ležet. Jít dělat něco jiného, uvařit si kafe, skočit na chvilku ven a pak se k tomu zase vrátit. Tahle strategie ale nemusí vyhovovat každému. Je třeba hledat to svoje. Jak už bylo zmíněno, nikdo není dokonalý. IT obor je tak veliký, že nikdy nebudeš znát všechno. Občas je třeba potlačit ego a nechtít být stoprocentní. Nesnažit se někomu vyrovnat. Stačí jít do každého úkolu sami za sebe s tím nejlepším vědomím a svědomím.
Martin Ptáček: Já možná ještě dodám jeden postřeh. IT prostředí je specifické také tím, že se tam lidi navzájem „challengujou“. Máte-li nějaký názor, musíte být schopni si ho obhájit. Klidně také můžete nachytat někoho staršího a zkušenějšího, jak dělá chybu nebo neříká něco úplně stoprocentně. Junior klidně může challengovat seniora. Nehraje se tam na různé úrovně. Kdykoliv můžete přijít a říct: „Hele, Vašku, tohle není pravda.“ A Vašek by se kvůli tomu neměl urazit, není tam prostor pro zbytečně velká ega. Cílem je, aby ta věc skvěle fungovala a k tomu přispívají úplně všichni.
Kateřina Michalitschke: To je pravda. V IT všichni táhnou za jeden provaz a chtějí to dotáhnout do stejného cíle.
Martin Ptáček: Na závěr si pojďme říct, že testováním kariéra v IT rozhodně končit nemusí. Pokud máte chuť rozvíjet se dál a baví vás třeba vizuální stránka věci, můžete dělat UX designéra nebo UX testera. Rozvíjet se můžete i na poli automatizovaného programování. Koneckonců se z vás nakonec může stát i programátor. Případně si můžete zkusit některou z manažerských rolí a řídit ostatní. Kačko, prozradíš, co by tě lákalo v budoucnu?
Kateřina Michalitschke: Jak už jsem říkala na začátku, u mě to určitě nebude žádná automatizace nebo programování. Láká mě spíše designová, vizuální stránka – UX designér je člověk, který nakreslí, jak bude daná aplikace vypadat, jaké bude mít barvy, tvary atd. Správnou práci UX designéra poznáte v internetovém bankovnictví třeba podle toho, že jste schopni odeslat platbu bez toho, aniž byste museli volat na zákaznickou podporu – prostě víte, kam kliknout. Tím ale kariéra končit nemusí. Jak už říkal Martin, můžete se stát vedoucím testerů, můžete být projektový manažer, můžete se stát automatizovaným testerem, vývojářem nebo „scrum masterem“. To jsou jen základní možnosti, ve skutečnosti se dá dostat de facto všude.
Martin Ptáček: Přesně tak, jakmile už vás IT svět jednou vcucne, můžete si vybrat, kudy budete chtít pokračovat sami.