sobota, 9 grudnia 2017

Koniec pierwszego etapu

Zakończył się okres próbny w mojej pierwszej pracy w IT. Przygotowałam sobie podsumowanie, spostrzeżenia, pomysły, które przedstawiłam swojemu przełożonemu na spotkaniu na koniec okresu próbnego. Są na tyle neutralne i, mam nadzieję, obiektywne, że mogę się nimi podzielić.

Pierwsze dwa tygodnie pracy jako tester były wprowadzeniem do projektu, w którym miałam pracować. Wiedza, którą mi wtedy przekazywano była dobrze usystematyzowana i przedstawiona. Pojęcia i zagadnienia stopniowo stawały się bardziej skomplikowane, ale pomagało to, że po każdym większym fragmencie teorii byłam proszona o przedstawienie własnej interpretacji tego, co zrozumiałam. Był to czas, kiedy wszelkie niejasności mogły zostać rozwiane, a źle pojęte części wyjaśnione jeszcze raz. Dostawałam małe zadania do zrobienia na podstawie przedstawionego materiału, te zadania były sprawdzane i korygowane przez osobę wdrażającą. Bardzo pomocne było też to, że mogłam uczyć się i wykonywać zadania z drugą osoba, zatrudnioną w tym samym czasie co ja. Fajnie się wspieraliśmy i pomagaliśmy sobie.

Trzeci tydzień pracy musiałam spędzić z chorym dzieckiem w domu, a w czwartym wróciłam do firmy akurat, kiedy zespół miał przeprowadzić test run na jednym z urządzeń. Miałam krótkie, bardzo lakoniczne wprowadzenie do tego, co będzie wykonywane w test runie, ale bez przedstawienia szczegółów jego procedury. W założeniu, miałam dobrą okazję, żeby poznać od wewnątrz tego typu zadanie obserwując doświadczonych członków zespołu. W rzeczywistości dowiedziałam się o test runie niewiele, gdyż osoby przygotowujące środowisko testowe nie opowiadały o tym, co robią.
Po tym doświadczeniu zgłosiłam swojemu przełożonemu pierwsze obawy dotyczące dopasowania do zespołu. Podzieliłam się też z nim trudnościami w pozyskiwaniu wiedzy i dobrych praktyk od zespołu. Niestety, mimo, że miałam w teorii nie krępować się i pytać kogokolwiek z zespołu i prosić o pomoc, czułam, że wszystkim przeszkadzam i wytrącam ich z biegu ich własnych zadań. Może gdybym na tym etapie zamiast do wszystkich mogła zgłaszać się do jednej przypisanej osoby, która miałaby wyznaczone w systemie kontowania czasu pracy zadanie mentoringu, ten etap wdrożenia byłby dla mnie bardziej efektywny.

Drugi miesiąc pracy polegał na wybieraniu kolejnych funkcjonalności do testowania i tworzeniu do nich automatycznych testów w ramach stworzonego we frameworku pytest zestawu metod. Nie musiałam wymyślać na nowo koła, tylko składać klocki z różnych dostępnych już rozwiązań. Znowu zabrakło jednak mentora, który pokazałby mi, gdzie najefektywniej szukać najlepszych dla sprawdzenia przypisanej mi funkcjonalności pomysłów. Dużo czasu zajmowało mi szukanie w wielu zestawach testów, czegoś, co mogłoby zadziałać w moich założeniach testowania. Informacją zwrotną do mojego pierwszego zestawu testów był przegląd - code review. Wszelkie błędy i niejasności w utworzonym przeze mnie skrypcie opisane zostały w komentarzach pod linijkami kodu, które owe niedociągnięcia zawierały. Zabrakło mi przejścia przez pierwsze review ramię w ramię z osobą przeglądającą moje rozwiązania. Wydaje mi się, że bardziej efektywne byłoby poświęcenie mi dwóch godzin na informację zwrotną  przy moim biurku o tym, co zrobiłam źle lub co można by zrobić lepiej, niż czytanie suchych komentarzy i osobne proszenie o wyjaśnienie części z nich.


Po tych dwóch miesiącach pracy najbardziej zapadły mi w pamięć komentarze typu "Lepiej by było, żebyś sama do tego doszła", "I tak miałaś bardzo dużo wprowadzenia, my tyle za naszych początków nie dostaliśmy", "Sprawdź w logach dlaczego test nie przeszedł", czy "To ty jesteś testerem i powinnaś wiedzieć, jak najlepiej przeprowadzić to sprawdzenie". Były dni, kiedy bywało lepiej i byli ludzie, którzy prawie zawsze chętnie mi pomagali, ale miałam wrażenie, że zajmuję im za dużo czasu, podczas gdy oni i tak mają bardzo dużo zadań do wykonania. Skupienie na wykonywaniu swoich zadań było bardzo duże i zrozumiałe, zabrakło jednak procesu wspierającego nowego pracownika.

W trzecim miesiącu pracy zgłosiłam się na ochotnika do wzięcia udziału w kolejnym test runie. Liczyłam na to, że tym razem, jako osoba pierwszy raz w nim uczestnicząca, a nie tylko obserwująca, będę mogła się nauczyć na czym ten proces polega. Niestety, znowu raczej odniosłam wrażenie, że oczekiwane ode mnie jest wiedzieć, jak wykonać test run, ponieważ na stronach portalu zespołowego była instrukcja, jak go przeprowadzić. Dla mnie ta instrukcja wyglądała jednak jak niejasny i mający wiele dodatkowych niezapisanych reguł plan. Tłumaczenie, że ktoś najlepiej uczy się poprzez przejście przez takie trudne zadania sam nie było dla mnie bardzo budujące. Żeby skutecznie wykonać tak skomplikowane zadanie samemu, trzeba mieć jakieś zaplecze techniczne i doświadczenie z podobnych procesów, którego mi brakowało. Nie wystarczy dać komuś słownik języka angielskiego, żeby móc oczekiwać, że napisze poprawnie książkę po angielsku. Jako były nauczyciel wolę uczyć na przykładzie i sama też wolę przez dobry przykład być uczona. Nie można przecież będąc instruktorem pływania kazać osobie nie umiejącej pływać wskoczyć do basenu i poprosić, żeby zawołała, kiedy będzie się topić. Nie można też mieć jej za złe, że woła, że się topi od razu po wskoczeniu do głębokiej wody.

Doświadczenia tego trzeciego miesiąca ugruntowały mnie w przekonaniu, że nie mogę przedłużać umowy.  Mimo, że menadżer, który mnie przepytywał na rozmowie o pracę i zatrudnił, wiedział, że nie mam żadnego doświadczenia w testowaniu, miałam prawie codziennie wrażenie, że nie pasuję do zespołu i nie mam szans na dorównanie mu poziomem wiedzy technicznej i doświadczenia. Wydaje mi się, że zespołowi tez byłoby łatwiej, gdyby zamiast mnie zatrudniony został ktoś z większym doświadczeniem.

Nauczyłam się dużo przez trzy miesiące. Zobaczyłam, jak działa pycharm, bitbucket, JIRA, pytest. Nauczyłam się, czym jest parametryzacja w testach, jak można przeprowadzić asercję, jak wprowadzać do zestawu testów metody statyczne. Oprócz tego przekonałam się, jak pracuje się w scrumie, jak uczestniczy się w daily meeting, jak planuje się i estymuje zadania. No i przekonałam się, że nawet najtrudniejsze zagadnienia techniczne jestem w stanie do jakiegoś poziomu zrozumieć. Może nie w całości, ale na tyle, żeby sprawdzić wiele z podstawowych założeń ich działania.

Zabrakło programu mentoringu oraz procesu, który by go wspierał od strony organizacyjno-formalnej.  Z przykrością podjęłam decyzję, że bez tego procesu nie będę w stanie dorównać członkom mojego zespołu i być dla niego wsparciem, więc zrezygnowałam z dalszej współpracy z moim pierwszym pracodawcą w świecie IT. Warto więc przekwalifikowując się mieć na uwadze, że w pierwszym miejscu pracy może nie udać się pracować tak, jak się marzyło wkraczając do branży IT.  Ważne, żeby potrafić dostrzec to, czego udało się nauczyć i szukać dla siebie miejsca, w którym możemy wzrastać.

Dwa tygodnie po zakończeniu pierwszego etatu na stanowisku testera spędziłam w domu douczając się. Powtórzyłam sobie wiedzę z "Zawód Tester" Radosława Smiglina, zapisałam się na tutorial testowania na guru99.com i zarejestrowałam się do portalu zrzeszającego zdalnych testerów z całego świata uTest.com. Uzupełniłam CV i rozsyłałam je do nowych firm. W przyszłym tygodniu najprawdopodobniej zacznę swoją przygodę z testowaniem od początku w nowym miejscu. Nauczona doświadczeniem z poprzedniej pracy, podchodzę do tego z większą dozą dystansu i ostrożności, ale może nauczę się czegoś od podstaw, bo tym razem zacznę od testów raczej manualnych. Mam nadzieję, że to będzie dla mnie skokiem na mniej głęboką wodę i poradzę sobie lepiej. A jeśli nie, to są jeszcze kolejne miejsca i możliwości.