Wróć do informacji o e-podręczniku Wydrukuj Pobierz materiał do PDF Pobierz materiał do EPUB Pobierz materiał do MOBI Zaloguj się, aby dodać do ulubionych Zaloguj się, aby skopiować i edytować materiał Zaloguj się, aby udostępnić materiał Zaloguj się, aby dodać całą stronę do teczki

Zawody w IT

RmxoSG9f9pNTt1
Źródło: Pixabay, domena publiczna.

Korzystając z aplikacji w telefonie lub poruszając się po wybranej platformie internetowej, nie zawsze zdajemy sobie sprawę, że za powstaniem danego programu (umożliwiającego działanie aplikacji, gry, platformy itd.) stoi cały zespół specjalistów. Wprawdzie samo napisanie kodu zlecone jest programistom (deweloperom) czy webmasterom, jednak współpracują z nimi inni fachowcy z branży IT. Oni też odnoszą sukcesy, a ścieżkę kariery rozbudowają wraz z nabywaniem kolejnych doświadczeń oraz uprawnień.

W idealnym układzie korporacyjnym zawody pośrednie powinny być docenione i dopasowane do realizowanego projektu. Dzięki temu zarząd może dotrzymać obiecanych terminów oddania czy wdrożenia produktu, a każdy zespół sprawnie wykonuje swoje zadania, współpracując ze sobą.

To, do czego prowadzi brak komunikacji w zespole, ilustruje poniższa grafika, przedstawiająca różne i wykluczające się wizje projektu, wynikające z tego, że poszczególni wykonawcy nie przedyskutowali go między sobą.

RxjuUGC45Mwwd
Źródło: Contentplus.pl sp. z o.o.

Tester oprogramowania

Zawodową przygodę z testowaniem można rozpocząć od skończenia kursu i zdania egzaminu ISTQB. Nazwa certyfikatu pochodzi od nazwy rady cerytyfikacji (International Software Testing Qualifications Board), przyznającej uprawnienia do testowania oprogramowania. Kurs porządkuje wiedzę teoretyczną o samym procesie powstania kodu, precyzuje też rolę testera manualnego, automatycznego (poziom specjalistyczny testowania) oraz określa zadania Kierownika Testów, Analityka Testów, Technicznego Analityka Testów. Im większe doświadczenie, tym bardziej precyzyjne testy, które przeprowadza się w celu wykrycia ubytków w kodzie. Te ubytki potocznie nazywamy bugamibugbugami.

Testerzy oprogramowania często analizują, w jaki sposób ma działać aplikacja, zanim jeszcze zostanie napisany kod. Zadają pytania o aktywności potencjalnego użytkownika (co się stanie, jeśli dane zostaną błędnie wpisane, jakich informacji weryfikacyjnych dany system potrzebuje przy pierwszym logowaniu użytkownika, a jakich – przy każdym następnym korzystaniu z programu). Zadaniem testera oprogramowania jest przewidzenie – oszacowanie jak największej liczby potencjalnych scenariuszy korzystania z aplikacji. Wyeliminowanie błędów na samym początku procesu tworzenia kodu jest tańsze i łatwiejsze niż usuwanie ich później, gdy prace nad kodem będą bardziej zaawansowane. Testerzy zwracają uwagę także na to, aby sposób korzystania z aplikacji lub gry był intuicyjny i łatwy. Testerzy zgłaszają też swoje pomysły na usprawnienie działania np. strony WWW czy platformy e‑learningowej.

Tester na każdym kroku upewnia się, czy system działa prawidłowo. Podczas znalezienia jakiejś nieprawidłowości, tj. błędu, nierzadko testerzy oprogramowania i programiści razem próbują rozwiązać problem. Zdarza się, że tester pośredniczy w ustaleniach, jak język techniczny przełożyć na prosty komunikat o programie – na ten komunikat czekają np. handlowcy prowadzący negocjacje z klientem lub team leaderzy, którzy składają raport zleceniodawcy.

Zawodowi testerzy powinni wykazywać się dużą czujnością i kreatywnością podczas przeprowadzania testów, ale także wiedzą techniczną o tym, jak testować kolejne linijki kodu.

RUl2DEYN09Be7
Źródło: Pixabay, domena publiczna.
Ciekawostka

James Whittaker
Jest słynnym mówcą, a także propaguje technologiczne wizje przyszłości. W swoich wystąpieniach wypowiada się na temat wizyjnego przywództwa, opierając się na własnych doświadczeniach. Pracował m.in. dla amerykańskich instytucji rządowych – w 1986 roku został zatrudniony przez FBI jako pierwszy student uczelni technicznej, potem prowadził własny startup w obszarze bezpieczeństwa informatycznego, a także pracował dla takich liderów branży telekomunikacyjnej, jak IBM, Ericsson, SAP czy Cisco. Swoją przygodę z firmą Microsoft rozpoczął od budowania strategii bezpieczeństwa Microsoft Trustworthy Computing oraz rozwijania Visual Studio. Następnie dołączył do zespołu Google, gdzie objął stanowisko dyrektora zespołu inżynierskiego. Tam pracował nad następującymi produktami: Chrome, MapsGoogle+. Obecnie jest wykładowcą na uczelni Florida Institute of Technology, autorem bestsellerowych publikacji z zakresu bezpieczeństwa IT, a także wielu poradników dotyczących wystąpień publicznych.

Radek Smilgin Czas na nową rolę testera

James Whittaker znany jest jako autor książki Exploratory Software Testing. Człowiek, który zmienił pracę z Google na Microsoft, zmienił również swoje nastawianie do testów. Dziś staje w żywej opozycji do testowania. Wieszcząc koniec pewnej ery, parafrazując, mówi:

  • Im więcej zatrudniłeś testerów, tym więcej musisz ich zatrudnić.

  • Zatrudnianie testerów oprogramowania jest samospełniającą się przepowiednią.

  • Cykle życia zbliżają do siebie użytkowników i programistów; czy w takich warunkach potrzeba „pośrednika”?

  • Jakość może się tylko polepszyć, jeśli pośrednik zostanie zepchnięty z drogi.

  • Współczesne testowanie jest tylko aktywnością i nie potrzebuje osobnej roli.

  • Czy testowanie nie byłoby świetne, gdyby nie robić z niego takiego dużego halo?

1 Źródło: Radek Smilgin, Czas na nową rolę testera, dostępny w internecie: https://testerzy.pl/baza-wiedzy/trudna-prawda-o-testowaniu-james-whittaker [dostęp 25.05.2022].

Project ManagerTeam Leader

Efekty swojej pracy Project Manager – PM – i Team Leader raportują w specjalnym systemie, np. w programie JiraJiraJira. To istotne, by wszyscy członkowie pozostałych zespołów też mieli dostęp do tych raportów. Koordynowanie przebiegu poszczególnych zadań (tasks) wymaga od managerów dużej koncentracji, ale też umiejętności coachowskich. Żeby – trzymając się wyznaczonych terminów – zrealizować odgórne wytyczne.

Team Leaderów zazwyczaj jest kilku w firmie, odpowiadają pomniejszym zespołom (mając stanowiska kierownicze), tymczasem PM jest jeden – stoi ponad leaderami, nadzoruje ich pracę. Zdarza się także – zależy to od polityki firmy – że każdy zespół ma swojego Project Managera i to oni spotykają się z zarządem, przedstawiając efekty działań swoich sektorów.

Skuteczni Project Managerowie oraz Team Leaderzy powinni posiadać następujące umiejętności miękkie: łatwość rozwiązywania konfliktów, odporność na stres i presję czasu, zdolność komunikacji ze zróżnicowanym zespołem, umiejętności organizacyjne, pozytywne nastawienie do pracy i do współpracowników (szacunek do innych osób), asertywność, empatię oraz wysoką inteligencję emocjonalną.

Project Manager, a także Team Leader, muszą odznaczać się doskonałą organizacją działań. Dyscyplinować zespoły, jeśli jest taka potrzeba, ale też wsłuchiwać się w potrzeby ludzi. To od PM‑ów oraz leaderów wychodzą często propozycje, by zatrudnić dodatkową osobę do pracy lub zmienić rozkład ról w zespole.

R1QdMs1AlbDoJ
Źródło: Pixabay, domena publiczna.

Grafik

Grafik czuwa nad graficzną stroną projektu oprogramowania. Bierze udział w zebraniach z programistami i z marketingiem, by w pełni zrozumieć ideę powstającego produktu.

Marketingowiec, PR‑owiec i handlowiec

Oni tworzą tzw. zespół kreatywny. Marketingowcy muszą przygotować kampanię promocyjną dotyczącą danego systemu. Działają w porozumieniu ze specjalistami od public relationspublic relationspublic relations, którzy przy użyciu odpowiednich narzędzi przekładają język techniczny na język biznesu. Najkrócej rzecz ujmując: celem jest sprzedaż lub wypromowanie produktu (np. nowej gry komputerowej), trafienie do jak największej liczby użytkowników – klientów, a także „wyrobienie marki”. Do tego celu służy charakterystyczny logotyp, slogan reklamowy, profile na social mediach itd. Bez wcześniejszego badania rynku wiele e‑sklepów czy platform streamingowych po prostu nie powstanie. Sprawdzenie oczekiwań respondentów, a także szukanie „niszy na rynku” wymaga współpracy od kreatywnego zespołu IT. Niezbędne jest także bardzo dobre zrozumienie zalet oraz cech szczególnych tworzonego programu.

Szkoleniowiec IT

Każdy z wymienionych zawodów pośrednich w IT może z czasem zamienić się w zawód szkoleniowca. Programista, który ma duże doświadczenie w danej firmie i potrafi merytorycznie dzielić się wiedzą, często jest proszony o przekazanie informacji juniorom. Staje się odpowiedzialny za nowych członków zespołu. Podobnie jest z seniorami – testerami, którzy, znając nomenklaturę techniczną, a także rozumiejąc istotę tworzonego produktu, bardzo dobrze sprawdzają się w roli szkoleniowców IT. Prezentują oni dany program na biznesowych lub reklamowych spotkaniach.

R1Mdp21DsqeGF
Źródło: Pixabay, domena publiczna.

Scrum Master

Ten zawód to przede wszystkim praca z ludźmi, komunikowanie się pomiędzy zespołami oraz pilnowanie dotrzymania wyznaczonych terminów. Scrum Master zajmuje się w zespole procesem wymiany informacji, musi mieć też cechy przywódcze. Jego misją jest poprowadzenie ludzi we właściwym kierunku, ku rozwiązaniom zadań – przy jednoczesnym niesieniu pomocy, gdy jakiś task jest zbyt trudny, czasochłonny lub wymagający zaangażowania dodatkowych sił.

Korzystając ze Scruma, Scrum Master układa pracę w krótkich iteracjach (Sprintach). Rezultat pracy (Przyrost) powstaje, zgodnie z nazwą, przyrostowo. Tzn. ciągle dokładamy do niego kolejne elementy i spełniamy kolejne potrzeby biznesowe – tzw. wymagania. Cechą Scruma jest cykliczność. Proces Scrum nie ma ani początku, ani końca. Jest on co prawda dookreślony w Sprintach, ale nie mamy tutaj żadnych etapów przygotowawczych, ani żadnego podsumowania. Startujemy niejako ze środka i „działamy” w kolejnych iteracjach. Scrum Master zakłada, że budujemy złożony produkt (kod) i będziemy go rozwijać tak długo, jak długo korzyści będą przewyższały nakłady.

Praca Scrum Mastera dotyczy metodologii zwinnej AgileAgileAgile. W przeciwieństwie do modelu kaskadowego (Waterfall), Agile zakłada, że na początku projektu nie jesteśmy w stanie dokładnie zaplanować jego całego przebiegu. W związku z tym, praca jest podzielona na krótkie cykle – wspomniane Sprinty. Podczas tych cykli Scrum Master prowadzi spotkania (ceremonie) dla wszystkich zespołów, zbierając informację zwrotną (feedback) o przebiegu prac. Iteracyjny tryb działania pozwala na regularne dostarczanie mniejszych części finalnego rozwiązania oraz na dużą elastyczność w zakresie zmian zakresu projektu.

Ważne!

Metodologia Agile zakłada, że zespoły są samoorganizujące się i kros‑funkcjonalne. W praktyce oznacza to, że zespoły samodzielnie decydują, w jaki sposób najlepiej wykonywać swoją pracę, a członkowie zespołów posiadają wszelkie kompetencje i umiejętności, niezbędne do ukończenia poszczególnych iteracji. Przekazanie tak dużej odpowiedzialności zespołom developerskim bardzo korzystnie wpływa na motywacje pracowników, którzy będąc odpowiedzialnymi za tworzony produkt, wykazują większe chęci do codziennej pracy.

Administrator ds. bezpieczeństwa IT

W tym zawodzie konieczne są praktyczne umiejętności dotyczące obszaru IT. Osoby pracujące na tym stanowisku zazwyczaj zaczynają od zadań ogólnych, stopniowo się specjalizując, np. w kierunku bezpieczeństwa bankowości.

W tym obszarze wyróżniamy dwa główne stanowiska: *offensive security

  • oraz *deffensive security *. Pierwsze wiąże się z postawieniem na miejscu kogoś, kto próbuje złamać zabezpieczenia firmy. Drugie zaś – z wypracowywaniem skutecznej obrony. Obie te specjalizacje powinny ze sobą współpracować, przeprowadza się bowiem kontrolowany atak, dzięki czemu można wykryć ewentualne luki w zabezpieczeniach.

Słownik

Agile
Agile

(ang. *agile software development *) programowanie zwinne; grupa metod wytwarzania oprogramowania opartego na programowaniu iteracyjno‑przyrostowym; Agile powstał jako alternatywa do tradycyjnych metod typu Waterfall; najważniejszym założeniem metodyk zwinnych jest obserwacja, że wymagania odbiorcy (klienta) często ewoluują podczas trwania projektu

bug
bug

błąd oprogramowania; usterka programu komputerowego powodująca jego nieprawidłowe działanie, wynikająca z błędu człowieka na jednym z etapów tworzenia oprogramowania, zwykle podczas pisania kodu źródłowego, niekiedy także na etapie projektowania

Jira
Jira

(*Jira Software *) narzędzie przeznaczone dla wszystkich członków zespołu IT , służy do planowania, śledzenia procesu tworzenia i wdrażania kolejnych uwag od zleceniodawcy; pomaga tworzyć raporty, zgłaszać błędy, określać terminy realizacji i w pełni zarządzać projektem

public relations
public relations

organizowanie kontaktów o charakterze informacyjnym między organizacją (grupą, instytucją, firmą) a jej otoczeniem, służące realizacji jej podstawowych celów