Czy testerzy czytają oferty pracy?

Zapewne tak, bo testerzy są bardzo wnikliwi i przetestują każde ogłoszenie 5 razy zanim zdecydują się wysłać aplikację. Jednak które oferty pracy dla specjalistów do spraw testowania oprogramowania w ogóle do nich docierają.

Jakie oferty pracy czytają testerzy?

– Polecane przez inne osoby – jeśli wśród testerów jakaś praca jest szczególnie ceniona, to opinia szybko będzie się niosła i podesłana przez kolegę oferta na pewno zainteresuje testera.

– Zamieszczane na grupach branżowych na portalach społecznościowych z ofertami pracy typowymi dla testerów – to właściwie rozszerzenie poprzedniego punktu – w świecie globalizacji i Internetu znajomy z grupy na portalu społecznościowym to taki sam znajomy jak ten w realu z pokoju obok w biurze.

– Na portalach z ogłoszeniami o pracę, ale najpewniej na tych, które oferują pracę dla specjalistów IT.

– Od najbardziej zaufanych rekruterów. Wprawdzie zdarza się, że oferty pracy przesyłane przez rekruterów są dla testerów nie do przyjęcia, często rozmijają się z doświadczeniem czy umiejętnościami testera, ale jeśli już ktoś trafi na profesjonalistę ma szansę otrzymać od niego „ofertę marzeń”.

Jak dobrze wybrać firmę testerską

Wysoka jakość oprogramowania jest dzisiaj kluczowym czynnikiem wpływającym na sukces bądź porażkę projektów informatycznych. Firmy tworzące oprogramowanie muszą zatem mieć świadomość, że zbytnia oszczędność na testach czy w ogóle brak ich wykonywania, w dłuższej perspektywie jest nieopłacalna i ryzykowna. Planując budżet na wytworzenie aplikacji czy innego mniej lub bardziej skomplikowanego systemu, warto uwzględnić w nim środki na zapewnienie odpowiednich testów.

Nie jest to łatwe, tym bardziej, że świat zmienia się bardzo szybko i startując z projektem np. na platformę Android, nie możemy być do końca pewni jak duże pokrycie w różnego rodzaju urządzeń i wersji systemu będziemy musieli zapewnić – czyli przetestować aplikację na wielu tzw. środowiskach.

Inna sprawa, że intensywność testowania jest zmienna w zależności od faz procesu tworzenia oprogramowania – na początku czynności testowych jest mniej, a ich ilość zwiększa się bliżej końca całego procesu. Trudno więc utrzymać zespół testowy na stałym poziomie przez cały projekt.

Jak zatem podejść do tematu jakości tak, aby tą jakość zapewnić, nie przesadzając z wydatkami? Dobrym rozwiązaniem jest zaangażowanie niezależnej firmy oferującej testy oprogramowania, której zasoby można wykorzystywać elastycznie w czasie. Firma outsourcingowa, nie dość, że dysponuje wykwalifikowanym personelem to często oferuje takie usługi w modelu time&material.

Kilka rad, jak wybrać odpowiednią firmę testerską:

  1. Sprawdź czy firma elastycznie podchodzi o oferowania usług – np. czy oferuje abonamenty x godzin usług w miesiącu
  2. Upewnij się, że firma ma doświadczenie we współpracy z podobnymi do Twojej firmami (software housy, agencje interaktywne, etc)
  3. Plus, jeżeli to firma, która oferuje także szkolenia z zakresu testowania i QA – pewność, że mają przeszkolonych testerów
  4. Zapytaj czy firma dysponuje laboratorium urządzeń mobilnych, na których będzie mogła przeprowadzać testy (oszczędzisz wiele środków na zakupie sprzętu)
  5. Jeżeli w pewnym momencie uznasz, że przyda Ci się tester wewnątrz Twojego zespołu to znajdź firmę, która oferuje także usługi rekrutacji testerów
  6. Dobrze, aby firma z którą będziesz współpracował wykonuje nie tylko testy funkcjonalne, ale także oferuje audyty bezpieczeństwa aplikacji i badania user experience
  7. Bardzo dobrym uzupełnieniem outsourcingu testów jest crowdsourcing, szczególnie jeżeli mówimy o aplikacjach mobilnych, przeznaczonych do szerokiego grona odbiorców. Warto więc związać się z firmą oferującą także ten model testów aplikacji.

Podsumowując: dobry partner w testowaniu to firma z doświadczeniem, elastyczna, mogąca dołożyć testerów z dnia na dzień, posiadająca swój sprzęt i oferująca kompleksowe usługi testów w różnych obszarach oraz mogąca zapewnić testy w modelu crowdsourcingowym.

Analiza biznesowa i inżynieria wymagań – podstawy sukcesów projektów informatycznych

Przyczyną porażek wielu projektów informatycznych jest nie tylko zły kod, architektura, wybór technologii czy brak rzetelnych testów. Bardzo często na niepowodzenia projektów składa się brak wymagań lub źle zdefiniowane wymagania.

Co można zatem zrobić, aby ustrzec się przed tymi problemami? Odpowiedzią jest dobrze przeprowadzony proces zebrania i zrozumienia oczekiwań klienta i użytkowników końcowych projektu oraz poprawne przełożenie ich na specyfikację wymagań.

Jak to osiągnąć? Otóż na rynku istnieją odpowiednie standardy specyfikowania wymagań funkcjonalnych i niefunkcjonalnych systemów informatycznych. Dwie najpopularniejsze organizacje, starające się szerzyć i wiedzę i standardy w obszarze analizy biznesowej i inżynierii wymagań to: REQB (Requirements Engineering Qualifications Board) oraz IREB (International Requirements Engineering Board). Obie te organizacje oferują swoje sylabusy oraz materiały przygotowujące do certyfikacji na poziomie Foundation (podstawowy), a po zdaniu egzaminu można otrzymać certyfikat CPRE (Certified Professional for Requirements Engineering).

Która organizacja jest lepszinżynieria wymagańa? W zasadzie zakres materiału, z którego szkolą obie organizacje niewiele się różni, a certyfikaty są uznawane na całym świecie i ważne bezterminowo. Z punktu widzenia planowania swojej kariery zawodowej nie ma znaczenia który certyfikat się uzyska. Najważniejsza jest pozyskana wiedza z obszaru inżynierii wymagań i przekucie tej wiedzy na zwiększenie jakości projektów.

Ze swojej strony polecamy zainteresowanie się tematem analizy biznesowej oraz inżynierii wymagań (z ang. requirements engineering) wszystkim osobom, biorącym udział w tworzeniu systemów informatycznych (serwisów, aplikacji, czy nawet gier), w tym programistom, kierownikom projektów oraz testerom oprogramowania. W szczególności ci ostatni powinni bliżej przyjrzeć się problemowi specyfikacji wymagań, ponieważ to właśnie wymagania są podstawą do dobrego testowania aplikacji.

Gdzie zdobywać wiedzę? Księgarnie oferują kilka pozycji, na które warto zwrócić uwagę, np. Specyfikacja oprogramowania. Inżynieria wymagań. Wydanie III. Warto też zapisać się na szkolenie oferowane przez renomowane firmy szkoleniowe, oferujące szkolenia REQB (lub IREB), po których można przystąpić do egzaminu na certyfikat CPRE Foundation Level. Nasz wybór pada na http://inzynieriawymagan.pl/

Testy wydajnościowe

Testowanie oprogramowania polega na sprawdzaniu różnych charakterystyk jakości. Najczęściej są to cechy funkcjonalne systemu, tzn. czy system wykonuje to, czego oczekuje od niego klient czy użytkownik. Ale jakość systemów informatycznych to także aspekty niefunkcjonalne, jak chociażby użyteczność czy wydajność. I o tym ostatnim jest poniższy artykuł.

Czym są testy wydajnościowe i po co się je wykonuje?

Najprościej ujmując – testy wydajności polegają na zbadaniu czy serwer, aplikacja i/lub baza danych są w stanie sprostać dużemu obciążeniu. Znając wymagania dotyczące ruchu w danym interwale czasowym (oraz pożądanych czasach odpowiedzi), bada się – przy pomocy odpowiednich narzędzi, generujących realnych użytkowników – możliwości obsługi takiego obciążenia przez serwer. Często próbuje się zasymulować „za duży” ruch, po to by przeciążyć serwer i sprawdzić czy w wypadku „spodziewanej” awarii system będzie mógł w stanie normalnie funkcjonować po przywróceniu „normalnego” ruchu. Takie testy nazywają się testami przeciążeniowymi lub stress testami. Można jeszcze wykonać testy obciążeniowe (load testing), które polegają na utrzymywaniu dużego ruchu przez dłuższy czas.

Samo wykonanie testów to tylko połowa sukcesu. Druga połowa to umiejętne przeanalizowanie wyników, czyli znalezieniu ewentualnych wąskich gardeł, a mogą one mieć miejsce zarówno w bazie danych, samym kodzie aplikacji (niewydajne algorytmy) lub na serwerze.

Ponieważ takie testy są dosyć skomplikowane, najlepiej o ich wykonanie zwrócić się do ekspertów. Na polskim rynku jest kilka firm które oferują usługi testów oprogramowania, natomiast liderem w obszarze testów wydajnościowych jest testuj.pl. Warto zajrzeć na ich ofertę dotyczącą testów wydajności: https://testuj.pl/oferta/testy-wydajnosciowe/