Piętnaście, dwadzieścia lat temu do polskich firm nagminnie zatrudniano Informatyków, czyli speców "od wszystkiego". Pięć, dziesięć lat temu poszukiwani byli Programiści danej technologii, a słowo Informatyk stało się symbolem minionej ery (i synonimem lekkiego obciachu). Obecnie branża IT stała się bardzo złożona, a Developerzy coraz częściej specjalizują się w dość wąskich dziedzinach, przez co nazwy ich stanowisk bywają często niezrozumiałe dla managementu i biznesu.
Wśród najczęściej spotykanych stanowisk warto wymienić Programistów:
Jako CEO czy Manager firmy nie musisz oczywiście znać szczegółowo zadań realizowanych przez poszczególnych Programistów, warto jednak spojrzeć na nich “z lotu ptaka” i zrozumieć kluczowe dla danej roli cele i zakresy odpowiedzialności.
Niniejszy artykuł to swoista ściągawka uwzględniająca najważniejsze informacje o pracy na stanowiskach Front-end, Back-end, Full-stack, DevOps Developer oraz szybki przegląd zarobków, technologii i narzędzi wykorzystywanych przez poszczególnych programistów.
Każda strona internetowa lub aplikacja ma warstwę wizualną, czyli warstwę, z którą de facto jej użytkownicy będą mieli najwięcej do czynienia. O ile graficy projektują sam wygląd strony (kolory, czcionki, kształty, rysunki), to ostatecznie niezbędny będzie programista Front-end, który wdroży projekt graficzny używając swoich umiejętności kodowania HTML, CSS i JavaScript.
Rolą frontendowca jest również określenie, które elementy designu nie powinny być implementowane z uwagi na ich niepraktyczność, co wymaga siłą rzeczy stałego kontaktu z grafikami.
Od nawigacji w witrynie, przez responsywność, aż po animacje – programiści Front-end zajmują się wdrażaniem wszystkiego, co widzisz i z czym możesz wchodzić w interakcje na stronie lub w aplikacji. Od programistów Front-end najczęściej oczekuje się znajomości HTML, CSS i JavaScript oraz różnych frameworków i bibliotek.
O ile programiści Front-end są odpowiedzialni za widoczną część witryny lub aplikacji, programiści Back-end zajmują się całą resztą po stronie serwera: bazami danych, skryptami serwera i interfejsami API.
Jak sama nazwa wskazuje, programiści Back-end pracują „na zapleczu” oprogramowania. Robią co w ich mocy, aby wszystko działało sprawnie „pod maską”. Skupiają się na komunikacji serwera z przeglądarką (lub aplikacją) oraz dbają o to, żeby serwer dawał odpowiednie informacje dla danego żądania.
Programiści Full-stack to przysłowiowe „złote rączki” branży IT. Łączą oni umiejętności programistów Front-end i Back-end.
Są to specjaliści, którzy odnajdują się zarówno w pracy nad projektami, które obejmują bazy danych i algorytmy, ale równie dobrze orientują się w technologiach dla użytkowników. Od programisty Full-stack oczekuje się znajomości HTML, CSS i JavaScript, ale także znajomości jednego lub kilku języków programowania wykorzystywanych przez Back-end, np. Ruby, PHP lub Python. Doświadczenie dewelopera Full-stack łączy elementy zarządzania projektami, projektowania stron internetowych i UX.
Nie oznacza to oczywiście, że są ludźmi od wszystkiego i w każdej z tych technologii są w stanie samodzielnie napisać cały kod. W rzeczywistości prawie każdy Full-stack wciąż spędza większość czasu jako programista Front-end lub Back-end, ale jeśli zajdzie taka potrzeba, jest gotowy przejąć różne zadania i zajrzeć „pod maskę”, lub sprawnie naprawić "karoserię".
Inżynierowie DevOps różnią się nieco od pozostałych ról omawianych w tym tekście. Nie pracują z samym kodem, lecz gdzieś na pograniczu zespołów wytwarzania oprogramowania (Dev) i zarządzania systemami (Ops). Dzięki integracji i sprawnej współpracy między tymi dwoma działami firma może pracować nad swoimi produktami i wydawać aktualizacje znacznie szybciej i w bardziej spójny sposób niż w zwykłym modelu.
Patrick Debois, developer z Belgii, po raz pierwszy użył terminu DevOps szukając nazwy dla organizowanej przez siebie konferencji na temat zarządzania systemami. Zasadniczo wymyślił tę nazwę, łącząc słowa development i operations w jedno słowo. Nazwa DevOps szybko przyjęła się w branży, w wyniku czego powstał zupełnie nowy obszar specjalizacji.
Wielkie startupy z Doliny Krzemowej, takie jak Facebook, Uber i Spotify, bardzo szybko dostrzegły korzyści płynące z tworzenia zespołów DevOps w swoich strukturach i przyczyniły się do spopularyzowania tego ruchu. Ponieważ organizacje te były od samego początku tworzone z myślą o kulturze DevOps, ich struktura organizacyjna ewoluowała, dopasowując się do tego sposobu myślenia.
Te startupy odniosły sukces, ponieważ niekoniecznie postrzegają IT jako centrum kosztów, ale jako integralną część łańcucha, który dostarcza wartość dla klienta. W tym tkwi istota DevOps – odpowiedzialność za całe doświadczenie i zadowolenie klienta.
Wbrew powszechnemu wyobrażeniu DevOps to coś więcej niż połączenie ról development i operations w ramach jednego teamu. DevOps to bardziej filozofia pracy, sposób myślenia skupiony na dostarczaniu wartości dla klienta. Warto dodać, że Inżynierowie DevOps pełnią w firmie rolę odpowiedzialną za tzw. customer journey – budowanie wielopoziomowego doświadczenia klienta podczas kontaktu z firmą.
Prawo Conwaya z 1967 roku dość dobrze odzwierciedla tę koncepcję, mówiąc, że organizacje projektują systemy, w sposób który mimowolnie odzwierciedla lub naśladuje ich własną strukturę komunikacji wewnętrznej.
"Każda organizacja, która projektuje system (dowolny, szeroko rozumiany), stworzy coś, czego struktura jest kopią struktury komunikacyjnej organizacji." Melvin E. Conway
Średnia pensja dla developera Front-end w Stanach Zjednoczonych wynosi 110 490 USD rocznie. Ponadto programiści Front-end w Stanach Zjednoczonych mogą liczyć na dodatkowe 2500 USD rocznej premii rocznej.
Jak podaje portal Indeed.com, amerykańskie pensje na stanowiskach Back-end developer wynoszą średnio około 128 000 USD rocznie, w zależności od stażu pracy i lokalizacji. Najlepiej zarabiają specjaliści w stanach Kalifornia i Waszyngton, gdzie pensje sięgają nawet 151 tysięcy dolarów rocznie.
Według portalu indeed.com, programiści Full-stack z doświadczeniem w nowoczesnych technologiach chmurowych i React są bardzo poszukiwani i należą do najlepiej opłacanych specjalistów w swojej dziedzinie. Ich zarobki w Stanach Zjednoczonych wynoszą średnio około 111 468 dolarów rocznie i 4100 dolarów premii gotówkowej rocznie.
Wykwalifikowani inżynierowie DevOps są bardzo poszukiwani przez firmy informatyczne i w zależności od konkretnych obowiązków na stanowisku, pensje w Stanach Zjednoczonych oscylują wokół 125 000 USD rocznie, ale w niektórych stanach rosną do ponad 170 000 USD rocznie.
Praca zdalna bezpośrednio dla firmy ze Stanów kusi i faktycznie umożliwia otrzymywanie wymienionych kwot, jednak często oznacza bycie przysłowiowym “trybikiem” w maszynie i sprowadza się do nudnego “klepania kodu” oraz wypełniania raportów w Jirze. Nie ma miejsca na jakąkolwiek interakcję, rozwój, wymianę doświadczeń, wspólną kawę. Na dłuższą metę taka praca może spowodować stan silnej alienacji (wzmacnianej sytuacją covidowej pandemii) i wiąże się z brakiem poczucia przywiązania do firmy.
Chcąc zatem pracować i rozwijać się w Polsce - warto szukać polskich pracodawców realizujących projekty wyłącznie dla Klientów z USA. W takim modelu - można zarabiać świetne pieniądze porównywalne do stawek amerykańskich - bez konieczności relokacji i bez konieczności rezygnacji z jedzenia z kolegami na obiad (polskich) pierogów ruskich.
Mam nadzieję, że ten krótki przewodnik pozwoli Ci lepiej zrozumieć role poszczególnych członków zespołu: developerów Full-stack, Front-end, Back-end i DevOps.
Na zakończenie dodam, że choć umiejętności programistyczne i doświadczenie techniczne mają ogromne znaczenie, to jednak kompetencje miękkie są tym co najmocniej wpływa na efekty i jakość wspólnej pracy. Można mieć 10-letnie doświadczenie jako programista, jednak coś co wyróżnia ponadprzeciętnego developera na tle innych to nie jego twarde skille, lecz umiejętność otwartej i jasnej komunikacji, pokora, uśmiech oraz nieustający głód nauki i ciągła chęć samorozwoju.
Share:
Address
MasterBorn Sp. z o.o.
ul. Krupnicza 13,
50-075 Wrocław
Tax ID: 8992816601
Contact