Cechy charakteru przydatne w pracy testera oprogramowania
Tak w jak w każdym innym zawodzie, cechy naszego charakteru mogą pomagać lub też przeszkadzać w pracy. I niestety, trzeba to jasno stwierdzić – nie każdy może z powodzeniem testować oprogramowanie. W tym wpisie chcę wymienić zalety dobrego testera, najważniejsze z mojego punktu widzenia. Mam nadzieję, że wywoła on refleksję na temat Twoich własnych predyspozycji do tej profesji.
Nie mam ambicji, aby wymienić wszystkie możliwe cechy. Nie przesądzam, czy i które są konieczne do wykonywania tego zawodu. Jednak na przestrzeni ostatnich lat, patrząc na sposób działania i rezultaty osób pracujących w działach jakości oprogramowania, ukształtowała się u mnie dosyć uniwersalna lista przymiotów pomagających w pracy specjalisty Quality Assurance.
Cierpliwość, dokładność, konsekwencja
Ten zestaw atrybutów jest najczęściej wymieniany, nawet przez osoby spoza branży, w odpowiedzi na pytanie o cechy dobrego testera. I w tym wypadku większość ma rację.
Cierpliwość bardzo się przyda, gdy przyjdzie Ci w czasie testów regresyjnych po raz trzeci wykonywać manualnie ten sam przypadek testowy. Pomimo tego, że jakiś test case zawsze przechodził, to wykonując go kolejny raz będziesz musiał(-a) zachować wystarczającą dokładność i sumiennie przeklikać każdy scenariusz.
Nigdy nie trać cierpliwości – to jest ostatni klucz, który otwiera drzwi.
Antoine de Saint-Exupéry
A konsekwencja w działaniu i doprowadzanie spraw do końca posłuży Ci zarówno w krótszej, jak i dłuższej perspektywie czasowej. Czyli wtedy, gdy należy zakończyć zadania przydzielone na dany dzień, jak i przy umiejętnym kształtowaniu swojej ścieżki kariery przez szereg miesięcy i lat.
Efektywna komunikacja
Wiele osób myśli, że jest to standardowy frazes automatycznie dodawany do ogłoszeń o pracę. Nic bardziej mylnego, przynajmniej jeśli chodzi o stanowiska testerskie. Umiejętność uważnego słuchania i odpowiednie wyrażanie własnych myśli są niezbędne do stworzenia fundamentów udanej współpracy.
Niech język twój nie wyprzedza myśli.
Chilon ze Sparty
Komunikujemy się nie tylko wewnątrz naszego zespołu, ale również z innymi – programistami, menadżerami, analitykami, klientami, dostawcami itd. W obecnej rzeczywistości często bywa to kontakt zdalny (tylko e-maile i telekonferencje) z innym kontynentem, nierzadko przy użyciu drugiego dla obu stron języka.
Przez długi czas, pracując głównie w zgranym, lokalnym zespole, nie byłem świadomy w pełni skali wyzwań związanych z komunikacją. Dopóki nie trafiłem na projekt, w którego początkowej fazie większość energii zespołu była zużywana na wyjaśnianie nieporozumień, rozstrzyganie sporów i przerzucanie się e-mailami, nieraz wyciąganymi z archiwum. Wysoki poziom inteligencji emocjonalnej jest w takim przypadku nieodzowny.
Asertywność i etyka
Wiadomość o wykryciu przez testera nowego, poważnego defektu w tworzonym oprogramowaniu rzadko jest odbierana pozytywnie. Oznacza błąd w kodzie, nieskuteczność mechanizmów prewencji czy automatycznych skryptów testujących, często obnaża niedoskonałości całego procesu.
Bo nikt nie lubi złych nowin zwiastuna.
Sofokles, „Antygona”
Tester oprogramowania często jest między młotem a kowadłem – może doświadczać presji ze strony programistów (nieśmiertelne „U mnie działa”), klientów („Kto przepuścił takie bugi!?”), jak i kierownictwa projektu („Dlaczego tyle czasu tracimy na testowanie i po co powtarzamy te przypadki testowe?”).
Pomimo tej presji w żadnym wypadku nie należy zamiatać defektów pod dywan, umniejszać ich znaczenia czy zakładać optymistycznych scenariuszy. Po prostu trzeba robić swoje. Sumiennie testować i raportować wyniki. I nawet jeśli bugi pogarszają nastroje u programistów – to możliwie obiektywnie i konstruktywnie o nich informować. Jako tester(-ka) musisz stać na straży jakości, choćby przyszło Ci gęsto tłumaczyć się ze zgłoszonego defektu, zakłócającego błogą nieświadomość kierownictwa, lub też odrzucić dobremu koledze-programiście trzy poprawki z rzędu w czasie retestów. A nie są to przykłady czysto hipotetyczne.
Więcej o psychologii testowania i kodeksie etycznym możesz przeczytać w sekcjach 1.5 i 1.6 planu poziomu podstawowego ISTQB.
Gotowość do nauki i nowych wyzwań
Bywały czasy, gdy absolwent szkoły czy uczelni dostawał swoją pierwszą pracę i… spędzał tam następne kilkadziesiąt lat, aż do emerytury, robiąc z grubsza to samo każdego dnia. W dzisiejszym świecie praktycznie nie ma na to szans. Bezpieczeństwo posady jest coraz bardziej iluzoryczne, zwłaszcza dla osób, które nie chcą się rozwijać i poszerzać horyzontów.
Poprawa wymaga zmian. Bycie doskonałym wymaga częstych zmian.
Winston Churchill
Rynek produkcji oprogramowania jest szczególnie dynamiczny. Szybko zmieniają się technologie, parametry sprzętu, zapotrzebowanie na poszczególnych specjalistów i strategie rozwojowe firm. W tej rzeczywistości najlepiej odnajdują się Ci, którzy ciągle się uczą, chętnie podejmują nowe, ale realne wyzwania i działają, aby im sprostać. Pamiętaj o tym i nigdy nie spoczywaj na laurach. Bo za kilka lat może już nie być systemu, który testujesz, lub będą to robić za Ciebie automaty. Ewentualnie Twoja firma może być przejęta przez większą korporację, a zarząd postanowi przenieść centrum rozwoju oprogramowania np. do Azji. Mając ugruntowane i szerokie kompetencje można w miarę łatwo wyjść z takich opresji obronną ręką. Jeśli będziesz dobry(-a) w swoim testerskim fachu, to znajdą się chętni aby Cię zatrudnić.
Podsumowanie
W tym miejscu zakończę moją listę najistotniejszych cech testera. Bardzo dużo zależy również od motywacji, ale o tym będzie traktował jeden z następnych wpisów. Jeśli myślisz, że warto tutaj jeszcze coś dodać, lub też Twoje doświadczenia są odmienne od moich – serdecznie zapraszam Cię do pozostawienia komentarza.
—
Grafika: Business vector designed by Freepik
Wydaje mi się, że tutaj nie ma uznania za „dobrą” i „złą” cechę. Należy dopasować się do stanowiska i wówczas można osiągnąć sukces. Przydatne informacje na ten temat można znaleźć w tym artykule: https://perso.in/blog/cechy-charakteru/. Polecam. 🙂