praca w ellie mae

Wejdź na rynek z jakością, z której będziesz dumny. Historia Guncha Batta

Czy tester powinien potrafić programować? To pytanie często interesuje szczególnie początkujących. Odpowiedź jest standardowa w branży: To zależy. Przykład Guncha, Manager, QA w ICE Mortgage Technology, pokazuje jednak, że programista powinien znać w komercyjnym wykorzystaniu przynajmniej jeden język. Guncha pisała w Javie, ale postanowiła się przebranżowić. Jak wyglądała jej historia przejścia z Developera na QA Engineera?

Jesteś przykładem programistki, która została QA Engineerem. Opowiedz o okolicznościach tej decyzji.

Na początku mojej kariery zdałam sobie sprawę, że potrafię rozpoznawać wzorce i nieregularności w produktach, korelować problemy i sugerować rozwiązania. Potrafiłam też znajdować i wyjaśniać problemy z perspektywy użytkownika końcowego, a także rozumiałam biznes. Miałam więc predyspozycje bycia pewnego rodzaju mostem łączącym oczekiwania biznesu z oczekiwaniami dot. oprogramowania. Wtedy zdecydowałam się zostać QA Engineerem.

Swoje umiejętności techniczne i analityczne wykorzystałam do optymalizacji procesu testowania poprzez automatyzację przepływów biznesowych. Pozwoliło nam to spełnić oczekiwania biznesowe w zakresie dostarczania wysokiej jakości, tańszego i za każdym razem szybszego produktu.

Praktyczna znajomość programowania w języku Java przyspieszyła Twoją zmianę?

Jako tester musisz pisać całkiem sporą ilość kodu. Chociaż przy testowaniu jego cel jest inny, to koncepcje programowania OOP, takie jak abstrakcja, możliwość ponownego użycia, hermetyzacja itp., których nauczyłam się w Javie, pomogły mi dużo szybciej zrozumieć pojęcie automatyzacji. Również język skryptowy, którego używamy do testów, jest zasadniczo podobny do programowania w Javie, więc jego znajomość pomogła mi pisać use case’y w bardzo krótkim czasie. Dzięki temu, że rozumiem możliwy scenariusz wyjątków w programach, pomaga mi to złamać system i wyzwolić scenariusze wyjątków podczas testu. Swoje doświadczenie programowe wykorzystuję również do projektowania przypadków użycia do testowania wielokanałowego.

Jaką na początku odczułaś różnicę między pracą programisty a pracą inżyniera kontroli jakości?

Mimo że testerzy i programiści powinni pracować ramię w ramię, zadaniem programisty jest stworzenie dobrego kodu, a rolą inżynierów QA jest walidacja i weryfikacja jego jakości. Bardzo często programista nie skupia się na biznesie i dostarczeniu zaawansowanego technologicznie rozwiązania. Za to zadaniem inżyniera QA jest upewnienie się, że spełnione zostały zarówno wymagania techniczne, jak i biznesowe.

Dziś widzisz więcej podobieństw niż różnic między tymi dwoma stanowiskami?

Widzę, że luka zmniejsza się, a role stają się podobne w dłuższej perspektywie. Zespoły programistyczne zwykle bardziej koncentrują się na jakości produktu z powodu wyższych oczekiwań, a zespół odpowiedzialny za kontrolę jakości powinien współpracować z programistami, aby mogli pomóc zarządzać jakością na wczesnym etapie i skrócić czas wprowadzenia na rynek. W obu przypadkach należy teraz skupić się na sprawnym opracowywaniu produktów, możliwościach biznesowych, wydajności procesów i ciągłej dostawie.

Z technicznego punktu widzenia, zarówno zespoły kontroli jakości, jak i deweloperów powinny kierować się wspólną strategią, aby wspierać wiele środowisk, wiele wersji równolegle, utrzymywać różne repozytoria, konfigurować Jenkinsa i być innowacyjnym w celu zwiększenia skalowalności.

Twoim zdaniem branża IT nie docenia roli QA w tworzeniu oprogramowania?

Prawdą jest, że w ostatniej dekadzie powstaje coraz więcej stanowisk QA. Cieszy to, że dzisiaj wszyscy rozumieją znaczenie dbania o jakość wyprodukowanego oprogramowania. Coraz więcej branż definiuje ścisłe wytyczne dotyczące kontroli jakości i dla wielu organizacji QA jest krytycznym etapem w cyklu powstawania produktu. Wyjątki zdarzają się zawsze, ale raczej to kwestia, kiedy skupimy się na testowaniu, a nie czy w ogóle będziemy testować. Branże, takie jak finanse, aeronautyka i zdrowie, są mniej narażone na niedocenienie jakości niż inne, takie jak handel detaliczny, bezpośredni wpływ może być stosunkowo mniejszy.

Lojalność klientów to mit, a oczekiwania są bardzo wysokie, dlatego też jakość odgrywa kluczową rolę w sposobie wprowadzania produktu na rynek. Lepiej przełożyć premierę produktu, niż wejść na rynek z błędami. Jeśli pytasz o podejście ICE Mortgage Technology to jakość jest jednym z głównych priorytetów. Wszyscy w organizacji rozumieją wartość zespołu QA.

Jakie są zalety posiadania zespołu kontroli jakości, oprócz tych oczywistych?

Każda organizacja chciałaby, aby produkt był wolny od błędów. A żeby tego dokonać, potrzebny jest stały wysiłek zespołu, który utrzymuje stabilne funkcje w różnych środowiskach, aż do momentu rozpoczęcia produkcji.

Faza testowania nie tylko przynosi zysk, ale zmniejsza wydatki na produkcję. Na dłuższą metę pozwala więc zaoszczędzić pieniądze, ponieważ sprzedajesz oprogramowanie, które nie wymaga ciągłej naprawy. Oprócz problemów z użytecznością rozwiązywane problemy z interfejsem użytkownika zapewniają lepszą obsługę klienta, co jest istotnym czynnikiem przy wprowadzaniu produktu na rynek.

W ICE Mortgage Technology masz okazję podnieść swoje umiejętności na wyższy poziom dzięki projektowi Encompass Web (NG). Powiedz więcej o tym projekcie.

Encompass Web to rozwiązanie oparte na chmurze, które całkowicie zrewolucjonizowało sposób, w jaki przedstawiciele branży hipotecznej współdziałają z naszymi systemami. Umożliwia pożyczkodawcom udzielanie większej liczby pożyczek po niskich kosztach oraz skraca czas zamknięcia i podejmowania mądrzejszych decyzji biznesowych. Celem projektu jest zwiększenie produktywności i zapewnienie lepszej obsługi. Encompass Web (NG) zapewnia swoim klientom bezpieczny dostęp w czasie rzeczywistym do danych w dowolnym czasie z dowolnego miejsca.

Jeśli chodzi o użytą technologię, do frontendu użyliśmy Reacta, korzystamy też z Kafki, mikroserwisów AWS, RESTful, Javy, Hibernate, Postgres, RDS, po narzędzia do monitorowania, takie jak AppDynamics, Kibana i inne. Technologie te pomagają nam uczynić naszą platformę, opartą na chmurze, wysoce dostępną i skalowalną, prostą w zarządzaniu i rozszerzalną na przyszłość.

Czego nauczyłaś się w tym projekcie?

Zrozumienia domeny biznesowej, poznałam dynamikę zespołu, nabyłam umiejętność zarządzania, Agile SDLC oraz biznesową stronę tego przedsięwzięcia.

Jak dzisiaj doskonalisz swoje umiejętności? Co sprawia, że czujesz, że nie stoisz w miejscu?

Istnieje wiele sposobów – wśród nich są kursy i certyfikacje, dołączenie do sesji Brown Bag (sesje dzielenia się wiedzą prowadzone przez liderów z różnych zespołów dla członków różnych zespołów), czytanie artykułów czy interakcja z innymi zespołami.

Naszą pracę mierzymy za pomocą wskaźników KPI, więc takie wskaźniki jak liczba wykrytych defektów, procent pokrycia kodu, krótszy czas na wykonanie cykli regresji, liczba udanych wydań, liczba defektów sprawiają, że czuję, że robimy postępy, a nie stoimy w miejscu.

Porozmawiajmy o narzędziach, kulturze i warunkach pracy idealnych do zapewnienia jakości. Czego potrzebuje zespół odpowiedzialny za QA, aby jeszcze lepiej wypełniał swoje zadania?

Przede wszystkim potrzebuje zaangażowania zespołu ds. Zapewnienia jakości na wczesnym etapie definiowania i planowania. Przydatne będą także jasno określone kryteria akceptacji, zaangażowanie biznesu w automatyzację, dostosowanie biznesu i IT w zakresie wartości jakości produktu, szkolenia i certyfikaty w zakresie technologii to jedne z najbardziej sprzyjających warunków pracy dla zapewnienia jakości.

Jak firma dba o Twoją ścieżkę kariery?

Na przykład poprzez możliwość interakcji z innymi zespołami. Firma pokrywa także koszt certyfikatów, wysyła mnie na seminaria, ale też zaprasza np. na otwarte sesje z zespołem biznesowym.

Czym dla Ciebie jest sukces? Jak mierzysz efekty swojej pracy i jakie wnioski z niej ostatnio wyciągnęłaś?

Jeśli widzę, że stopniowo jest zwiększany mój zakres obowiązków i roli, którą pełnię – to znaczy, że zmierzam w dobrym kierunku. Cieszy też uznanie w organizacji, stale otrzymuję od przełożonych / liderów w organizacji informacją zwrotną na temat wyników i mojej pracy.

Na koniec, czego brakuje tej branży? Co może skłonić więcej początkujących do testowania zamiast programowania?

Do zwiększenia popularności QA przyczyni się na pewno wyrównanie wynagrodzeń testerów, choć to tylko jeden element. Niestety nadal wiele firm nie rozumie, a co gorsze sprzedając oprogramowanie nie informuje klientów o wartości, jaką daje dbanie o jakość oprogramowania. Moim zdaniem kiedy więcej organizacji zrozumie potrzebę QA, dopiero wtedy będzie więcej ofert pracy na te stanowiska.

Uważam też, że organizacje powinny kłaść wewnątrz zespołów większy nacisk na jakość oprogramowania i to już na wczesnym etapie pracy nad produktem.


Guncha Batta. Manager, QA w ICE Mortgage Technology. Zorientowana na wyniki specjalistka ds. Zarządzania jakością, skupiona na satysfakcji klienta, usprawnieniu procesów i terminowej realizacji projektu. Praktyczna menedżer z predyspozycją do kierowania programami dot. jakości i ulepszania ich, zmniejszania liczby defektów i zwiększania ogólnej wydajności i produktywności. Guncha uwielbia malować, tańczyć, by zachować formę i medytować, by uspokoić umysł.

Chcesz poznać perspektywę pracy programisty w ICE Mortgage Technology? Przeczytaj naszą rozmowę z Markiem Machem, Director Engineering.

Zapraszamy do dyskusji

Patronujemy

 
 
More Stories
WhatsApp Facebook prywatność
Ultimatum WhatsAppa. Albo oddasz swoje dane Facebookowi, albo przestań korzystać z aplikacji