Java to język wysokopoziomowy, który jest wydajny i wszechstronny. Stosuje się go w aplikacjach serwerowych, internetowych, mobilnych, a nawet aplikacjach sterujących urządzeniami. Według platformy Skillotron z Javy korzysta 22,4% programistów w Polsce, co czyni z niego najpopularniejszy język wysokopoziomowy. Java jest też najpopularniejszym językiem wg rankingu Tiobe (a pozycję tę utrzymuje już drugi rok!), według Stack Overflow jest 2. najczęściej tagowanym językiem, a na GitHub ma trzecią pozycję pod względem ilości napisanych projektów. Ma też ogromną społeczność, co znacznie ułatwia naukę oraz daje wsparcie podczas pracy.
Spis treści
- Junior Java Developer – początek kariery w branży
- Czy można być juniorem po 40-stce?
- Rozmowa kwalifikacyjna na Junior Java Developera – czego się spodziewać? Jakie pytania mogą paść?
- Dalszy rozwój zawodowy – MID DEV – kwalifikacje i kompetencje zawodowe
- SENIOR – nowe perspektywy i wyzwania
- Perspektywy rozwoju Senior Java Developera
- Od juniora do seniora - Java Developer i jego zarobki
- Nie tylko wynagrodzenie – na co jeszcze mogą liczyć developerzy Java?
JUNIOR JAVA DEVELOPER – początek kariery w branży
Język Java jest wykładany na wielu uczelniach na kierunkach informatycznych, dlatego stanowisko Junior Java Developera jest jednym z najczęściej wybieranych przez osoby, które chcą rozpocząć karierę jako programista.
Okazuje się jednak, że same studia zazwyczaj nie wystarczają, by uzyskać upragnione stanowisko. Wiedza z wykładów i projekty, które tworzy się na zaliczenie to za mało. Jeśli student poważnie myśli o karierze developera, już na II lub III roku powinien poszukać praktyk lub stażu. Organizuje je bardzo wiele firm i to nie tylko w okresie wakacyjnym, ale również przez cały rok.
Plusem praktyk jest możliwość pracy z doświadczonymi programistami, realizacja prawdziwych komercyjnych projektów i poznawanie w praktyce metodyk wytwarzania oprogramowania. To najlepsza opcja na start w branży.
Czy można być juniorem po 40-stce?
Programowanie to dziedzina, która przyciąga wielu. Są ku temu trzy podstawowe powody:
- atrakcyjne warunki wynagrodzenia,
- bardzo dużo ofert pracy,
- to, że praca ta jest ciekawa i twórcza.
Pozwala tworzyć coś, z czego korzystają inni użytkownicy, co ma nie tylko wirtualny, ale również realny wymiar.
Do branży informatycznej dołączają zatem osoby, które już dawno rozpoczęły karierę, ale w innym obszarze i w pewnym momencie zorientowały się, że to, co robią, nie do końca im odpowiada. Decydują na przebranżowienie. Czy można zostać juniorem Javy mając 30-40 lat? Okazuje się, że jest to możliwe, choć niełatwe. Kilkoma radami na temat tego, jak sobie radzić z obawami, dzieli się Maciej Wójcik, Java Developer w e-Service, który wcześniej przez 18 lat pracował jako… główny księgowy.
– Rozpoczęcie kariery jako Junior Java Developer w wieku prawie 40 lat nie jest proste. Odbijałem się od rozmów, widziałem zdziwione miny rekruterów i osób technicznych obecnych podczas rekrutacji. W CV nie podawałem wieku ani zdjęcia, a nie każdy zwrócił może uwagę na LinkedIn i zamieszczone tam zdjęcie. – wspomina Maciek. Zawsze pierwszym pytaniem podczas spotkania rekrutacyjnego było to, dlaczego zacząłem uczyć się programowania. Na to pytanie musiałem mieć gotową odpowiedź – śmieje się Maciej Wójcik. Trzeba się tym nie przejmować, pogłębiać wiedzę i próbować!
– Osoby, które są w takiej sytuacji, w jakiej ja byłem, powinny pamiętać o posiadaniu profilu na GitHub. Napisanie projektu microserwisu od początku do końca i umieszczanie na Git swojego kodu pokazuje pracodawcy jakie mamy kompetencje i czego się już nauczyliśmy. Daje wgląd w jakość kodu, jaki tworzymy, ale przede wszystkim pokazuje, że mamy motywację. Ważny jest też profil na LinkedIn. Niby jest to oczywiste, ale nie każdy o tym pamięta. W moim przypadku przynajmniej 3 na 10 rozmów o pracę były właśnie z LinkedIn – mówi specjalista.
– Własny fragment kodu, napisanie własnej aplikacji daje dodatkowy plus w czasie rozmów nie tylko dlatego, że sami coś zrobiliśmy, ale również dlatego, że w czasie pisania aplikacji napotkamy różne problemy, które sami rozwiążemy – a to już doskonały temat do rozmowy w czasie rekrutacji o naszych doświadczeniach z programowaniem – tłumaczy.
Rozmowa kwalifikacyjna na Junior Java Developera – czego się spodziewać? Jakie pytania mogą paść?
Wiele osób, które chcą rozpocząć karierę, napotyka barierę - okazuje się, że nie jest tak łatwo znaleźć pracę jako Junior Java Developer. Na jakie pytania warto znać odpowiedzi? Jak się przygotować do spotkania?
Dawid Rabicki, Java Developer w firmie eService mówi, że warto czuć się w Javie pewnie.
– Nie chodzi o to, by mieć kompilator w głowie, raczej być świadomym dostępnych rozwiązań i umieć w razie potrzeby doszukać sobie o nich informacji. – wyjaśnia. – Na pewno warto: rozumieć idee enkapsulacji, znać podstawy clean code, korzystać z jakiegoś framework’u (ja polecam oczywiście Springa), korzystać z systemu kontroli wersji (np. git). Z uwagi na to, że pracodawca jest zazwyczaj zainteresowany komercyjnym zastosowaniem oprogramowania, trzeba mieć podstawową wiedzę o aplikacjach biznesowych, czyli np. umieć połączyć się z bazą, wystawić API, wiedzieć, czym jest stopień pokrycia kodu itd. – dodaje.
Maciej Wójcik, Java Developer, wspomina, że pytano go o wzorce projektowe oraz pytania o bazy danych.
– W moim CV wpisane były tylko relacyjne bazy danych, dlatego zawsze dostawałem zadanie napisania prostego zapytania dowolnego dialektu SQL – mówi.
Jaki projekt warto mieć w portfolio? Możliwości jest wiele.
– Ważne, by projekt był dobry. Takim przykładem mogłaby być np. aplikacja, która potrafi korzystać z publicznego API, łączy się z bazą danych i do przetwarzania danych korzysta np. ze Streamów. – wyjaśnia Dawid Rabicki. – Do tego warto zadbać o to, by dodatkowe funkcjonalności były scalane z osobnych gałęzi (feature-branch), a nie wszystko na masterze oraz by w kodzie był ogólny, semantyczny porządek – to świadczy o tym, że junior zna dobre praktyki.
Obaj specjaliści z firmy eService podkreślają, że jest to dość spory próg wejścia dla osób dopiero uczących się języka i takich zagadnień często na studiach się nie porusza, trzeba zatem dokształcić się samemu.
Dalszy rozwój zawodowy – MID DEV – kwalifikacje i kompetencje zawodowe
Przejście z poziomu juniora na mid developera można poznać po tym, że developer samodzielnie realizuje powierzone zadania, nie myśli już jak rozwiązać pojedynczy problem, ale jak to rozwiązanie wpłynie na całą aplikację – jej wydajność, skalowalność, możliwość przyszłej rozbudowy, zmian, użyteczność. To również umiejętność stosowania różnych technologii i ich dopasowywania do określonych potrzeb.
SENIOR – nowe perspektywy i wyzwania
Dla potrzeb rekrutacji stanowisko seniora opisuje się przynajmniej 5-letnim doświadczeniem zawodowym. W praktyce jednak to poziom umiejętności i doświadczenia praktycznego, a nie konkretny staż pracy decyduje o tym, czy programista może już być seniorem.
– Z perspektywy managera zespołu bycie seniorem to nie tyle kwestia samego doświadczenia liczonego w latach, ile samodzielność w realizacji technicznej części małych projektów oraz zdolność do angażowania pozostałych członków zespołu w dyskusje na temat wyboru odpowiednich narzędzi, frameworków, architektury, poszukiwania nowinek technicznych czy też rozwiązań trudnych problemów. Dodatkowo nasi seniorzy potrafią podzielić zadania na kilku programistów (zwykle mniej doświadczonych) i w takim „teamie” dostarczać je w obiecanym przez siebie terminie. Senior musi więc wykazać się umiejętnością pracy w zespole i z zespołem – wyjaśnia Piotr Wiśniewski, Dyrektor Biura Rozwoju Usług IT w eService.

Senior jest osobą, która rozumie cel biznesowy aplikacji i potrafi się na nim skupić. Jest w stanie przełożyć nietechniczny język klienta, którym opisuje on swoje potrzeby na język kodu. Zdaniem seniorów najciekawszym elementem pracy są wyzwania, którym należy sprostać – na tyle nietypowe lub skomplikowane, że podpowiedzi nie da się łatwo znaleźć w internecie.
Perspektywy rozwoju Senior Java Developera
– Senior developer, który szuka zmian, ma dostępnych wiele różnych opcji. Może rozwijać się w zupełnie nowej technologii. A jeżeli jest otwarty na większą zmianę – staje przed perspektywą rozwoju, np. jako Architekt rozwiązań IT lub Lider techniczny. Ta ostatnia rola łączy aspekty pracy specjalisty z pracą menadżera odpowiedzialnego za efektywną pracę i motywację kilkuosobowego zespołu. – wyjaśnia Piotr Wiśniewski.
Od juniora do seniora – Java Developer i jego zarobki
Wynagrodzenia w branży rosną dynamicznie, choć początki wcale nie są aż tak różowe, jak wydaje się wielu kandydatom, którzy jeszcze nie rozpoczęli kariery.
Zarobki według Raportu Płacowego Hays (2019)**:
• Junior Java Developer (1-3 lat doświadczenia) 40 – 60 zł / godz. netto B2B
• Developer (3-5 lat doświadczenia) 60 – 110 zł / godz. netto
• Senior Developer (5+ lat doświadczenia) 90 – 120 zł / godz. netto
• TeamLeader (5+ lat doświadczenia) 125 – 140 zł / godz. netto
W branży technologicznej duża część specjalistów zatrudniana jest na podstawie kontaktu B2B. W przypadku umowy o pracę kwota brutto wynagrodzenia jest odpowiednio dopasowywana.
Raport płacowy CPL Jobs (2019 Salary Guide) prezentuje wynagrodzenia programistów Java w perspektywie lokalizacji. I tak Junior Developer zarobi***:
• w Krakowie 6 000 – 9 900 zł brutto (umowa o pracę)
• w Poznaniu 7 000 – 10 500 zł brutto
• we Wrocławiu 6 500 – 10 500 zł brutto
• w Warszawie 8 000 – 10 000 zł brutto
Mid Java Software Developer zaczyna wynagrodzenie od górnej stawki juniora, czyli:
• w Krakowie 9 900 – 14 000 zł brutto (umowa o pracę)
• w Poznaniu 10 500 – 15 000 zł brutto
• we Wrocławiu 10 500 – 16 000 zł brutto
• w Warszawie 10 000 – 16 000 zł brutto
Senior Java Software Developer:
• w Krakowie 14 000 – 18 000 zł brutto (umowa o pracę)
• w Poznaniu 15 000 – 20 000 zł brutto
• we Wrocławiu 16 000 – 19 500 zł brutto
• w Warszawie 16 000 – 20 000 zł brutto
Nie tylko wynagrodzenie – na co jeszcze mogą liczyć developerzy Java?
W tak konkurencyjnej branży dochodzi do sytuacji, która w Polsce jest rzadko spotykana – dla pracownika pierwszym kryterium wyboru pracodawcy przestaje być wysokość wynagrodzenia. Liczą się warunki pracy, możliwości rozwoju, to czego konkretnie będzie dotyczyła praca (jakie projekty będzie realizować developer, z kim będzie pracował w zespole, jaką metodykę tworzenia oprogramowania stosuje firma).
Firmy oferują zatem:
• budżety szkoleniowe,
• wyjazdy na konferencje i meetupy (również zagraniczne),
• dodatkowy czas na rozwój własnych projektów,
• świetnie wyposażone, nowoczesne biura.
Praca częściowo zdalna jest już popularnym benefitem w IT, a osoby z większym doświadczeniem (od poziomu MID) mogą liczyć również na opcję znalezienia pracy w pełni zdalnej, która pozwala np. na łączenie podróżowania z pracą i zostanie cyfrowym nomadem.
Inną ciekawą opcją jest możliwość pracy w niepełnym wymiarze godzin – to opcja dla tych, dla których wynagrodzenie jest kwestią drugorzędną, a chcą więcej czasu poświęcić bliskim lub na rozwój swojego hobby.
---
* Dane statystyczne od I 2017 roku do X.2019. Stanowiska Programista JAVA na wszystkich poziomach zaawansowania, (z wykluczeniem stanowisk dla programistów Java Script).
** Stawka netto w ramach kontraktu B2B.
*** Raporty Płacowe uwzględniają w wynagrodzeniu również wszelkiego rodzaju premie i dodatki. Podana kwota nie odzwierciedla zatem stricte miesięcznego wynagrodzenia podstawowego tylko całościowe wynagrodzenie roczne podzielone na 12 miesięcy.
Czytaj także: Kreatywność a AI. Czy pracownicy branż kreatywnych mogą wkrótce stracić pracę?