Subiektywna lista cech, które powinieneś posiadać jeśli w przyszłości chcesz zostać skutecznym i spełnionym inżynierem zapewniania jakości
OPUBLIKOWANY May 02, 2022 PRZEZ Amelia Walter-Dzikowska
soft skills przebranżowienie
10 min CZYTANIA
Przeglądając fora dotyczące testowania, szeroko pojętego IT oraz rynku pracy nie sposób nie zauważyć licznych postów w stylu “jak zostać testerem i wejść do branży?”. Część pytań pochodzi od osób, które od pewnego czasu zgłębiają tematykę testowania i są zdecydowane, że chcą podążać testerską drogą. Jednak często pytanie zadają osoby, które nie są jeszcze przekonane, co chciałyby robić - wiedzą, że chcą zmiany na ciekawszą/bardziej elastyczną/lepiej płatną/etc. pracę. Usłyszały o fajnej atmosferze w pracy kuzyna programisty, zobaczyły reklamę kursu testowania zachęcającą niskim progiem wejścia do IT i poszukują odpowiedzi, czy jest to dobra ścieżka do obrania.
Znalezienie pierwszej pracy jako tester zwykle wymaga dużych nakładów pracy własnej - na stanowiska entry level lub programy stażowe jest zwykle wielu chętnych, w związku z czym niełatwo jest wyróżnić się z tłumu, a wymagania pracodawców rosną. Poza tym łatwiej przebiega wdrożenie osoby, która przychodzi do pracy z jakimś zasobem wiedzy, z praktycznym zrozumieniem tematu i z chęcią dalszej nauki (której nie da się w niezawodny sposób zmierzyć, więc zwykle patrzy się na to, ile wysiłku kandydat włożył w naukę przed rekrutacją). Żadna wiedza nie daje jednak absolutnej gwarancji otrzymania pracy ani tego, czy uda się tę pracę znaleźć w miesiąc czy w rok - zależy to od wielu czynników, częściowo losowych (np. czy akurat w najbliższym czasie zostanie otwarta odpowiednia rekrutacja).
Zanim rzucimy się w wir nauki i przygotowań, dobrze byłoby więc zidentyfikować odpowiedni dla siebie kierunek rozwoju i upewnić się, że na pewno chcemy zainteresować się bliżej testowaniem, a nie przykładowo analizą biznesową czy programowaniem. Oczywiście rozpoczęcie kariery jako tester nie wyklucza późniejszej zmiany stanowiska i kierunku rozwoju, ale dlaczego mielibyśmy decydować się na coś, jeśli już od początku inny kierunek wydaje nam się o wiele ciekawszy i wiemy, że i tak testowanie będzie tylko nadkładaniem drogi, żeby tam dotrzeć? (Zaczynanie od testowania jako “prostego” sposobu, żeby zostać programistą nie jest raczej polecaną drogą).
Najbardziej skutecznym sposobem na przekonanie się, czy odnajdziemy się w jakimś zawodzie byłoby po prostu… Znalezienie pracy i spróbowanie. Trzeba jednak pamiętać o wspomnianej wyżej dużej konkurencji i o tym, że rekrutacje bez wymogów wstępnych zdarzają się rzadko. Zwykle przed podejściem do procesu rekrutacyjnego dobrze by było wybrać przyszłą ścieżkę i poświęcić czas na zdobycie podstawowej wiedzy, dlatego postanowiłam opisać kilka cech, które moim zdaniem są niezbędne, żeby poczuć się w roli testera jak ryba w wodzie.
Dodam, że długo zastanawiałam się jak zatytułować ten wpis, by trafnie ująć jego esencję, choć paradoksalnie temat jest banalny. W każdym tytule, który przyszedł mi do głowy było coś, co mi nie pasowało: “Cechy dobrego testera”, “Kluczowe cechy testera”, “Czy odnajdę się w testowaniu”, “Czy powinienem zostać testerem”… Tytuł ostatecznie jest trochę przewrotny i z przymrużeniem oka. Oczywiście wybór zawodu to złożona sprawa. Nie da się wyrokować, czy ktoś odnajdzie się w danym zawodzie wyłącznie na podstawie dwóch czy trzech cech charakteru. Potraktuj proszę poniższe wskazówki jako opinię opartą na doświadczeniach i opinii jednej testerki, nie jako dogmat. ;)
Specjalnie nie napisałam “zainteresowanie IT” czy “pasja programowania”. Moje doświadczenia przekonały mnie, że fakt, iż ktoś nie stawiał własnych stron internetowych od 12 roku życia czy nie pisał własnych gier w liceum nie znaczy, że ta osoba nie może zainteresować się tematem później. Być może znasz historie osób, które w wieku 30, 40 czy 50 lat po raz pierwszy zainteresowały się jakimś zupełnie nowym zagadnieniem i zostały w nim mistrzem czy założyły z sukcesem biznes. Zainteresowania wieku nastoletniego czy kierunek studiów nie muszą absolutnie definiować całej reszty życia, zwłaszcza w obecnych, dynamicznych czasach. Sama wiele razy zaczynałam interesować się czymś, co wcześniej zdawało się być “nie dla mnie”, po czym okazywało się, że łapałam bakcyla i osiągałam sukcesy w danej dziedzinie, a wcześniejsza niechęć wynikała ze złego podejścia do tematu czy ze stereotypów. Przykładowo nie lubiłam WF-u w szkole, by po kilku latach odkryć, że tak naprawdę uwielbiam aktywność fizyczną - tyle tylko, że inną niż gry zespołowe jak siatkówka czy zbijak… Zawsze w otoczeniu panowało przekonanie, że zagadnienia związane z komputerami i programowaniem to wiedza tajemna dostępna dla nielicznych, a już zwłaszcza dla dziewczyn. Zatrzymywałam się więc w swojej strefie komfortu, na poziomie bycia zwykłym użytkownikiem, i nie próbowałam nawet iść dalej. Pomimo że w szkole spodobało mi się tworzenie bardzo prostych stron wykonywanych i stylowanych w HTML (to było dawno…), nie ośmieliłam się pójść dalej, przekonana, że czeka tam na mnie niedostępny dla nastolatki, tajemny obszar.
Zawsze natomiast miałam różnorodne zainteresowania, lubiłam uczyć się i brać udział w konkursach, później na uczelni rozwijać zainteresowania w kole naukowym. Od dawna nieobce mi było zjawisko flow, choćby podczas intensywnego uczenia się języków obcych, które są moim konikiem. Mówiąc krótko, byłam zawsze rodzajem nerda, ale nie komputerowego. ;) Pierwsze miesiące w IT były trudne i musiałam przebrnąć przez blokadę nieradzenia sobie z wieloma rzeczami czy nierozumienia żargonu, jakim mówili inni w pokoju. Później odkryłam, że nauka technikaliów może mi przynieść tyle samo radości i satysfakcji, co rozwijanie każdego innego hobby. Podczas programowania można złapać wspaniałe flow i nie ma nic bardziej satysfakcjonującego, niż znalezienie rozwiązania problemu, nad którym człowiek głowił się godzinami.
Jeśli również jesteś osobą, która ma za sobą przeszłość szkolnego nerda i/lub uwielbia szeroko pojęty rozwój i samodoskonalenie, a wręcz nudzi się przy braku nowych wyzwań: jest duża szansa, że odnajdziesz się na stanowisku testera, programisty lub innym (specjalizacji w IT jest wiele). Oprócz rozwijania konkretnego zestawu umiejętności technicznych, będziesz prawdopodobnie w swojej karierze pracować nad oprogramowaniem dla różnych branż i będziesz mieć okazję poznać je od środka, co będzie wspaniałą przygodą dla osoby o szerokich zainteresowaniach.
Jeśli nie masz pewności, polecam na początek po prostu spróbować! Przykładowo od podstawowego kursu programowania w dowolnej technologii, najlepiej zawierającego tworzenie bardzo prostego projektu (możesz poszukać niedrogiego kursu na Udemy, darmowego na Youtube albo książki z ćwiczeniami praktycznymi jak np. “Programista samouk”) - zobacz, czy to będzie dla Ciebie interesujące i wciągające.
Z dociekliwości i uwielbienia dla nauki przechodzimy płynnie do… wytrwałości potrzebnej, gdy ta nauka wcale nie idzie gładko. Mówiąc kolokwialnie, komputery i oprogramowanie lubią odmawiać posłuszeństwa z dziwnych, trudnych do zidentyfikowania na pierwszy rzut oka powodów. ;) Słynna fraza “u mnie działa” i memy na temat pracy z kodem to nie legendy. Nauka programowania czy używania różnych narzędzi testerskich ma dość skomplikowaną krzywą uczenia się. Niejednokrotnie natrafia się na problemy, których rozwiązanie wymaga cierpliwości i dociekliwości większych, niż wymagałby przeciętny problem w życiu codziennym. Nauka niektórych umiejętności okupiona jest przysłowiowo potem, krwią i łzami. ;) Nawet cierpliwość najbardziej żądnych wiedzy osób wystawiana jest na próbę. Trzeba pogodzić się z tym już na początku i nie poddawać się nawet jeśli nauka przypomina wyboistą drogę.
Druga kwestia to cierpliwość podczas samej pracy. Może być ona wystawiona na próbę w różnych sytuacjach: coś nie działa, znajomi z zespołu nie odpisują na czacie, do wykonania jest zestaw wyjątkowo monotonnych przypadków testowych, pojawia się dużo nowych funkcjonalności do manualnego przetestowania i zostaje zero czasu na pracę nad automatyzacją i pisaniem ukochanego kodu, programista nie zgadza się co do buga, analityk zapomniał nas wdzwonić na spotkanie, podczas którego omówił zmiany w wymaganiach i teraz nic nie wiemy… Oczywiście tego typu trudności zdarzają się w każdej pracy, dużo też zależy od naszego zespołu. Warto jednak pamiętać, że wytwarzanie oprogramowania to nie (tylko) kraina mlekiem i miodem płynąca, zawsze pełna fajerwerków. Zdarza się, że jest po prostu nudno czy monotonnie. Nadal pokutuje w niektórych miejscach stereotyp testera jako “tylko klikacza” i wiele innych błędnych przekonań o testowaniu i zapewnianiu jakości. Może się zdarzyć, że pomimo bogatego zestawu umiejętności technicznych będziesz postrzegany(a) nie jako członek zespołu deweloperskiego (sprawdź informacje o Scrumie, jeśli chcesz dowiedzieć się czym jest zespół deweloperski), a jako “klikacz” mający dostęp do oprogramowania jedynie z perspektywy użytkownika. Będziesz musiał(a) nieść kaganek testerskiej oświaty i przekonywać współpracowników czy klienta na czym polega testowanie i jak powinna wyglądać Twoja rola, żeby jakość w projekcie mogła być zapewniona na jak najwyższym poziomie.
Ostatnia kwestia związana z cierpliwością to poszukiwanie pracy. Ze względu na dość duży popyt na stanowiska entry level i juniorskie (w momencie, w którym powstaje ten artykuł) nie jesteś w stanie przewidzieć, jak długo zajmą Twoje poszukiwania pierwszej czy nawet kolejnej pracy. Być może nie nastąpi to zbyt szybko i będziesz musiał(a) uzbroić się w cierpliwość i wytrwale szukać.
Jedną z moich ulubionych ról było stanowisko korektorki w szkolnej gazecie. Od zawsze moją uwagę przyciągały błędy językowe i czerpałam ogromną radość z ich poprawiania - zarówno u innych, jak i u siebie samej. Niewiele rzeczy tak bardzo mnie irytuje jak sytuacje, w których ludzie nigdy nie czytają instrukcji obsługi, używają niepoprawnie sprzętu, po czym są zaskoczeni, że się zepsuł. Kiedy jeszcze nie pracowałam jako tester i dowiedziałam się, że jednym z zadań na tym stanowisku jest bycie swoistym “korektorem oprogramowania” (z tą różnicą, że defekty są korygowane przez programistów), moje serce zabiło szybciej.
Jeśli podobnie jak ja lubisz wyłapywać detale i czerpiesz z tego satysfakcję, można powiedzieć, że masz jedną z ważnych predyspozycji do bycia testerem. Bardzo istotna jest także pewnego rodzaju kreatywność. Kiedyś przeczytałam następujące porównanie:
Jeśli interesuje Cię, jak zbudować ekspres do kawy, masz predyspozycje do bycia programistą. Jeśli bardziej interesuje Cię jak go zepsuć, pasujesz na testera.
Cechą dobrego testera jest umiejętność wymyślania różnych kreatywnych sposobów używania aplikacji, jakie użytkownicy oprogramowania mogą wdrożyć życie, a które mogłyby spowodować powstanie awarii.
Tester często bywa posłańcem złych wieści - jeśli odzywa się do developera, z dużym prawdopodobieństwem chodzi o jakiś bug. Tester musi też często być pomostem pomiędzy programistami i biznesem, komunikować się sprawnie ze wszystkimi, przekazywać wieści między jedną i drugą stroną. Wreszcie tester musi być asertywny w komunikowaniu wyników testów czy potrzeb biznesowych. Ze względu na ilość potrzebnej komunikacji uważam, że testowanie nie jest idealnym zadaniem ani dla skrajnych introwertyków, ani dla skrajnych ekstrawertyków. Skrajny introwertyk mógłby czuć się przeciążony potrzebą regularnej komunikacji, często na nieprzyjemne tematy (“cześć, przepraszam za zawracanie głowy, ale znów coś nie działa”). Skrajny ekstrawertyk mógłby z kolei czuć się źle pracując przez kilka godzin z rzędu w skupieniu, bez dużego kontaktu z innymi ludźmi (zdarza się, że podczas całego dnia jest jedno krótkie spotkanie, a resztę czasu wypełnia indywidualna praca). Oczywiście wszystko zależy od projektu, liczby spotkań oraz od tego, czy praca jest w biurze czy zdalna…
Podsumowując, by odnaleźć się na tym stanowisku tester powinien nie tylko być dobrym negocjatorem posiadającym umiejętności sprawnej komunikacji, powinien też być asertywny i elastyczny (tak aby nie przebodźcowywały go okresy wzmożonych spotkań i komunikacji, ale również żeby nie zanudził się podczas spokojniejszych okresów i zadań związanych ze żmudną i samodzielną pracą). Oczywiście nad umiejętnościami miękkimi można pracować i rozwijać je z czasem, nikt nie urodził się z zestawem idealnie wypracowanych umiejętności społecznych.
Myślę, że zestaw cech przedstawionych w powyższych punktach jest wspólny dla wielu testerów. Czuję, że są to kluczowe aspekty, dzięki którym odnalazłam się w tej pracy i które cały czas rozwijam (nad umiejętnościami miękkimi czy motywacją do nauki można wszak pracować i doskonalić je!). Sądzę, że jest duża szansa, iż odnajdziesz się w testowaniu, jeśli posiadasz te cechy. Trzeba też pamiętać, że każdy z nas jest inny i brak jakiejś cechy nie musi absolutnie znaczyć, że się nie nadajesz. Zachęcam Cię do dalszych poszukiwań - jeśli masz okazję, zadaj innym pytanie, co według nich stanowi kluczowe cechy testera i zbierz opinie różnych osób. Chętnie poznam też Twoje zdanie na ten temat. :)