Reddit je sociální platforma, kde mohou uživatelé sdílet obsah a diskutovat v rámci různých komunit („subreddity“). Najdeme zde i komunity zaměřené na řízení kvality vývoje nebo testování software, jednou z takových je například /r/QualityAssurance. A právě z této komunity jsem vybral 9 nejčastěji opakujících se dotazů a pokusím se na ně odpovědět.
QA jako vstupní bod do IT?
V minulosti bylo QA nebo testování software obecně bráno jako vstupní brána do světa IT. Nedá se ale říct, že by to stále platilo. Dnes jsou nároky na juniorní pozice mnohem vyšší a roste také konkurence. I když se tato možnost stále nabízí, rozhodně se nejedná o lehkou cestu.
Dnes firmy hledají spíše vývojáře se zaměřením na řízení kvality, nebo obecněji QA inženýry. To znamená mít už nějaké znalosti a zkušenosti s vývojem software, protože na této pozici budete nejen manuálně testovat, ale také například programovat automatické testy. S příchodem shift-left se také počítá s vaším zapojením ve všech fázích vývoje a v takovém případě vám znalost základních IT termínů stačit nebude.
Co je špatně na mém životopise? Kde získat praxi?
Rozeslali jste desítky životopisů, ale stále se vám nedaří najít práci nebo jste ani nebyli pozváni na pohovor? Když vidím životopis člověka v této situaci, většinou se není čemu divit. Několikastránkový dokument s obsahem, který ale není vůbec relevantní. Uchazeči se často snaží své životopisy nafouknout a vylepšit. Výsledkem však je, že podstatné informace se ve změti textu snadno ztratí.
Životopis mějte jednoduchý, přehledný, vypíchněte jen podstatné a důležité informace relevantní k pozici, na kterou se hlásíte. Že umíte posílat e-maily nebo vytvořit v tabulku v Excelu je dnes samozřejmostí
A kde získat praxi? Nejlépe stáží nebo zapojením do nějakého open-source projektu. Nezaměřujte se na testování, ale na vývoj obecně. Vlastní projekty se zveřejněným kódem jsou velkým plus – pomohou nastínit, jak přistupujete k řešení problémů. Často nejde ani tak o kvalitu kódu, jako spíše celkový přístup.
Jaký je plat na SQA pozicích?
Na otázku výše platu neexistuje správná odpověď. Vše se odvíjí od mnoha aspektů a žádné tabulky neexistují. I v rámci jedné firmy a stejné pozice můžou být rozdíly velké. Pro přehled si můžete vyzkoušet nějaký porovnávač, například Platy.cz ale i zde počítejte spíše s hrubým odhadem. Vliv na výši platu mají vaše dovednosti a zkušenosti ale také třeba následné zapojení do projektu a to, jak budete k práci celkově přistupovat.
Je mi k něčemu ISTQB certifikace?
Ano i ne. Pokud s QA začínáte, může být certifikace dobrým startovním bodem. Pokud jste už zkušení, může vám zase pomoci například se sjednocením názvosloví. Osobně bych nepočítal s tím, že vám samotné splnění zkoušky nebo absolvování kurzu při hledání práce pomůže. Na druhou stranu, někdy je ISTQB certifikace přímo vyžadována. Dalo by se tedy říct, že v určité fázi by ji měl každý QA inženýr absolvovat a někdy vám takové “razítko” v životopise může opravdu pomoci.
Mám praxi jako manuální tester, kterým směrem se mám dál vydat?
Mám-li být zcela upřímný, tak pokud něčemu rozumím a mám v tom zkušenosti, měl bych mít asi přehled i o tom, kam se dále posunout nebo v čem se zlepšovat. Může to být vlivem osobní nerozhodnosti, ale i v tomto případě bychom měli být jako QA inženýři schopni problém analyzovat, umět si najít potřebné podklady a udělat nějaké rozhodnutí. Pokud bych měl poskytnout nějakou konkrétnější radu, tak doporučím přehled ISQTB certifikací, který by měl alespoň nastínit, jaké možnosti se nabízí:
Jak začít s automatizací? Jak se naučit konkrétní nástroj (Selenium/Cypress/Playwright)?
Tohle je možná ta nejčastější otázka vůbec. A moje odpověď je vždy stejná – především se naučte programovat. Automatizace testů není nic jiného než programování. Učit se konkrétní nástroj nebo postupy vám nepomůže, když neznáte základy, na kterých jsou postavené. Často se budete potýkat s problémy a jediná cesta, jak je vyřešit, je rozumět právě těmto základům. Není ani důležité, jaký programovací jazyk se naučíte. Důležité je naučit se “programátorskému” myšlení. Vše ostatní už přijde samo.
Který testovací nástroj použít?
Výběr samotného nástroje nevyřešíte diskuzí na veřejném fóru, kde vám každý doporučuje ten, který sám používá. Tuhle otázku položte ve svém týmu a vyberte ho společně. Nejde totiž jen o samotné psaní testů, ale i jejich následnou údržbu nebo zařazení do celkového procesu. V diskuzích často vítězí Playwright, Cypress a Selenium. Všechny zmíněné jsou ale určené jen pro testování webových aplikací. Výběr je tedy nutné uzpůsobit potřebám daného projektu a je celkem běžné, že se v průběhu vývoje dokonce nástroje vymění.
Je vhodné začínat jako QA a později se přesunout na vývoj?
Otázky kariérního růstu v IT jsme už probrali. Na tuhle konkrétnější bych ale odpověděl další otázkou – proč?
QA pozice nabízí mnoho možností a z určitého hlediska nevidím důvod, proč by měl někdo přecházet na čistě vývojářskou pozici. Obzvláště když se obě tyto pozice v mnohém protínají a v budoucnu možná ani oddělené nebudou. IT obecně potřebuje šikovné lidi a škatulkování už se moc nenosí.
Já osobně bych se čistě k vývojářské pozici už vracel nerad. Baví mě široký záběr činností, které můžu dělat a kde můžu mít přímý vliv na výsledek. Obzvláště zbytečné mi přijde pokládat takovou otázku ve chvíli, kdy nemám ani s QA ani s vývojem žádnou větší zkušenost.
Prostě do toho skočte a za rok se uvidí!
Nahradí AI testery a vývojáře?
Zřejmě ne úplně. V brzké době ale můžeme očekávat, že AI nahradí různé juniorní pozice a bude plnit úkoly, které jsou na jednu stranu jednoduché, ale na druhou stranu “nudné” nebo zabírající velké množství času. V kontextu testování se v tomto případě bavíme především o manuálních testerech. Podle mého názoru se bez manuálního testování neobejdeme nikdy, ale jeho role se bude přesouvat spíše do roviny přípravy automatických testů nebo učení AI algoritmů.
Sdílet článek
Autor
Jan ZatloukalTester a vývojář se zálibou v automatizaci a zlepšování procesu vývoje. Aktuálně pracuji na projektu automatizace elektronových mikroskopů v Pythonu.