CodeGym /Kursy /JAVA 25 SELF /Droga programisty

Droga programisty

JAVA 25 SELF
Poziom 13 , Lekcja 0
Dostępny

Dlaczego programiści chodzą ciągle tacy szczęśliwi? Odpowiedź na to pytanie jest prosta i rozbrajająca: bo pracują w ukochanym zawodzie i mają mnóstwo pieniędzy.

Witamy w świecie programistów.

Wynagrodzenie programisty

Chciałbym opowiedzieć o wynagrodzeniach programistów. Jak to właściwie wygląda, gdzie lepiej iść do pracy, a gdzie — nie. Jeśli nie jesteś programistą i spróbujesz samodzielnie wgryźć się w temat, możesz trafić na bardzo sprzeczne dane.

Chodzi o to, że głównym czynnikiem wpływającym na wynagrodzenie programisty nie są jego kwalifikacje, lecz miejsce pracy. Czasem, przy identycznych kwalifikacjach, różnica między dobrym a złym miejscem może sięgać 2–10 razy(!)

W danej chwili twoje kwalifikacje są stałe. Nie możesz w miesiąc stać się dwa razy bardziej doświadczony i zarabiać dwa razy więcej. Za to zmienić pracę w ciągu miesiąca i otrzymywać dwa razy więcej — jak najbardziej możesz. Sprawdźmy więc, gdzie najlepiej pracować.

Oto trzy czynniki, które bardzo mocno wpływają na poziom wynagrodzeń w firmach:

1) Czy rozwój oprogramowania jest podstawowym biznesem firmy.

2) Czy firma jest zorientowana na rynek międzynarodowy, czy na rynek wewnętrzny.

3) Czy właścicielem firmy jest podmiot z Zachodu, czy krajowy.

Zwróć uwagę, że miasto, w którym mieszkasz, nie odgrywa decydującej roli. Tzn. jeśli zarabiasz 10 razy mniej, mieszkając w Dreźnie, niż twój znajomy w Nowym Jorku, to znaczy, że w grę weszły powyższe czynniki.

Konkretne liczby

Trudno podać jakieś konkretne liczby dla całego świata. Opiszmy sytuację w Europie Wschodniej, która generalnie jest zbliżona we wszystkich krajach, gdzie w miarę rozwinięty jest IT outsourcing/outstaffing.

Oto ile może zarabiać Java Senior Developer z pięcioletnim doświadczeniem, w zależności od poziomu firmy, w której pracuje:

Poziom Wynagrodzenie miesięczne Opis
1 $200 — $500 Na samym dole znajdują się firmy, w których IT to niekluczowy obszar działalności, rynek — wewnętrzny, a właściciel — państwo. Na przykład dział IT w urzędzie skarbowym lub innej instytucji państwowej.
2 $500 — $1500 Poniżej średniej znajdują się działy IT różnych struktur niepaństwowych: banków itd.
3 $1,000 — $2,500 Poziom średni — firmy zajmujące się tworzeniem oprogramowania.
4 $3,000 — $4,000 Powyżej średniego — firmy tworzące oprogramowanie, których klienci pochodzą z Zachodu.
5 $4,000 — $5,000 Na samym szczycie — firmy rozwijające oprogramowanie, mają klientów z Zachodu i zachodniego właściciela. Jest ich niewiele. Otwarte wakaty pojawiają się rzadko i trudno się tam dostać. Ale są.

Co w tej sytuacji jest najdziwniejsze?

Połowa wszystkich programistów pracuje w firmach poziomu 1 i 2.

Chcecie wiedzieć, gdzie jest haczyk?

Są setki otwartych wakatów dla programistów w firmach poziomu 3 i 4. Te firmy są gotowe zaoferować wyższe wynagrodzenia i zwykle — znacznie lepsze warunki pracy.

Sytuacja z życia: jest dwóch Java Juniorów. Jeden z nich idzie pracować za $100 miesięcznie (firma poziomu 1), a drugi — za $1,000 miesięcznie (poziom 4). Po co brać mniej?

Co można osiągnąć, jeśli nie będziesz się obijać

Jeśli będziesz stale pracować nad samorozwojem w dziedzinie programowania, twoje wynagrodzenie od dziś będzie się zmieniało mniej więcej tak (± kilkaset dolarów w zależności od miasta, w którym pracujesz):

Plan

0–3 miesiące (Uczeń)

Wiesz o programowaniu bardzo niewiele. Może uczyłeś się w szkole i/lub na studiach, ale bardzo powierzchownie.

Twoje zadanie — uczyć się programowania i poznawać Javę.

Twój cel — dostać pracę jako Java Junior w firmie nie niższej niż poziom 3.

Przez pierwsze trzy miesiące z planu nic nie zarabiasz, ponieważ po prostu uczysz się programowania. W przyszłości, gdy będziesz mieć rodzinę i masę kredytów, zmiana specjalizacji będzie znacznie trudniejsza. Aby naprawić błąd, trzeba będzie odłożyć pieniądze na rok normalnego życia. Nie popełniaj głupich błędów.

3–15 miesięcy (Java Junior Developer)

Już pracujesz jako programista i z każdym dniem rośnie twoje doświadczenie. Nie obijaj się. Wciąż masz sporo do zrobienia, zanim będziesz mógł spocząć na laurach.

Twoje zadanie — uczyć się technologii, które przydadzą ci się jako developer Middle. Jakie konkretnie technologie? Świat się zmienia. Dziś coś doradzimy, a życie i tak wszystko zmieni. Znajdź w internecie kilka ofert pracy i zobacz, czego wymagają. Koniecznie przeczytaj książkę Bruce’a Eckla „Thinking in Java”.

Twoim celem w pierwszym roku pracy jako Java Junior jest awans do poziomu Java Middle. Nikt nie mówi, że to bardzo łatwe, ale dla ambitnej osoby jest to jak najbardziej możliwe. To od razu podbije wynagrodzenie do około 1500 dolarów.

2. rok pracy jako programista (Java Middle Developer, level 1)

Porządnie popracowałeś w ubiegłym roku i teraz jesteś Java Middle Developerem. Z pensją rzędu półtora tysiąca można normalnie żyć. W pracy dostajesz poważne zadania, a twoje doświadczenie rośnie jak na drożdżach. Do poziomu Java Senior Developer dorośniesz za dwa–trzy lata. Nie ma sensu przyspieszać tego procesu. Znacznego wzrostu wynagrodzenia i tak nie uzyskasz.

Twoje zadanie — poznać wzorce projektowe i przeczytać „Code Complete” McConnella. Poprawiaj jakość swojego kodu i umiejętności pracy zespołowej. Możesz przyjąć zasadę: co tydzień jedna książka o IT. Wtedy po roku będziesz o 50 książek mądrzejszy od innych. Nie odkładaj tego na później: wolnego czasu nie przybędzie. Całkiem możliwe, że założysz rodzinę albo się powiększy, jeśli już ją masz.

Twój cel — wybrać kilka technologii, w których będziesz się specjalizować jako Senior developer. Wszystkiego i tak nie opanujesz. Bycie guru w niewielkiej dziedzinie to dobre rozwiązanie.

3. rok pracy jako programista (Java Middle Developer, level 2)

Jesteś już doświadczonym developerem Middle i myślisz o tym, by zostać Senior Developerem. To miłe i prestiżowe. Twoje wynagrodzenie przekracza 2 tysiące dolarów (dane dla Kijowa). Od tego momentu popyt na takich specjalistów jak ty przewyższa podaż. Zawsze znajdziesz pracę w kilka dni i raczej nie będziesz zarabiać mniej niż teraz. O ile oczywiście nie zrobisz jakiejś głupoty.

Twoje zadanie — kontynuować naukę wybranych technologii. Pracuj lepiej. Nie dla pracodawcy, dla siebie. Staraj się o projekty z perspektywicznymi technologiami (takimi jak Big Data, w momencie pisania tego tekstu). I tak będziesz spędzać w biurze 8 godzin dziennie, więc czemu nie zarobić na tym trochę więcej, a co znacznie ważniejsze — zdobyć bezcenne doświadczenie, które jeszcze ci się przyda.

Twój cel — zmienić pracę. Dobry zespół jest wszędzie. Zmierzysz się z nowymi projektami i technologiami. Nie przyrastaj za wcześnie do krzesła. Jeśli wciąż pracujesz w firmie trzeciego poziomu, rozważ przejście na czwarty. Piąty poziom, choć bardzo atrakcyjny, jest na razie nieosiągalny.

4. rok pracy jako programista (Java Senior Developer, level 1)

Zostałeś Senior developerem. Gratulacje. Być może trochę niezasłużenie — i to czujesz. I tak gratulacje. Nieważne, czy teraz w pełni zasługujesz na swoje stanowisko, ważne, byś zasłużył na nie w przyszłości. Zgódź się: lepiej najpierw dostać dobrą pracę, a w ciągu roku do niej dorosnąć, niż najpierw dorosnąć do dobrej pozycji i czekać na nią kolejny rok.

Mam nadzieję, że nie zapomniałeś mojej rady i czytałeś po jednej książce tygodniowo — teraz twoim możliwościom pozazdrości każdy student. Ba, gotów byłby się o nie modlić. Pomyśl: masz solidną pensję, zbliżającą się do trzech tysięcy dolarów. Najprawdopodobniej jesteś jeszcze młody. Cały świat leży u twych stóp.

Twoje zadanie — jeszcze raz przejrzeć wybrane technologie. Być może powinieneś zmienić specjalizację. Świat się zmienił, technologie się zmieniły, a i twoja wiedza przez ostatnie dwa lata znacząco wzrosła. To, na czym zatrzymasz się teraz, będzie twoim wyborem na kilka najbliższych lat. To najlepszy moment, by wybrać ulubione technologie.

Twój cel — wybrać kierunek, w którym mógłbyś rozwijać się dalej. Jest ich bardzo dużo, nikt nie wymieni wszystkich opcji, ale wyboru trzeba dokonać już teraz. Jeśli dziś choć trochę zmienisz teraźniejszość, doprowadzi to do dużych zmian w twojej przyszłości.

5. rok pracy jako programista (Java Senior Developer, level 2)

Określiłeś swoją przyszłość i pracujesz nad realizacją marzenia. Właściwie obrany kierunek w połączeniu z chęcią parcia naprzód — i rezultat nie każe na siebie czekać. Gratulacje. Cieszymy się, że na świecie przybyło jeszcze jedna szczęśliwa osoba.

Jest pewna mądra prawda. Ludzie często przeceniają to, co można osiągnąć w rok, i nie doceniają tego, co można osiągnąć w pięć lat. Spójrz wstecz na ostatnie pięć lat. Tak właśnie jest.

Twoje zadanie — nie podejmować głupich decyzji i nie ulegać lenistwu.

Twój cel — wybrać kierunek i iść dalej. A myślałeś, że to koniec? Pomyśl o swojej klasie maturalnej. To nie koniec, to dopiero początek.

Przyszła specjalizacja

Możesz rozwijać się jako specjalista techniczny (górna gałąź), jako menedżer (dolna gałąź) lub jako najemny profesjonalista/niezależny konsultant (środkowa gałąź). Wszystko zależy od twoich preferencji.

Kariera programisty

Zawód programisty różni się od wielu innych. Nie ma tu konieczności robienia kariery menedżera, aby dobrze zarabiać. Nierzadkie są sytuacje, gdy starszy programista zarabia więcej niż jego szef–menedżer. Im więcej zdobywasz doświadczenia, tym bardziej relacje z przełożonym przesuwają się z układu „szef–pracownik” w stronę relacji typu „gwiazda filmowa i jej menedżer”. Rozpuszczeni, znający swoją wartość programiści przebierają i w projektach, i w ofertach. Cieszmy się z tego.

Co trzeba, aby stać się tak wysokiej klasy i poszukiwanym na świecie programistą? Musisz mieć duże doświadczenie w najnowszych i najbardziej pożądanych technologiach. Jak to osiągnąć? Odpowiedź poniżej.

Po tym, jak po raz pierwszy zatrudnisz się jako programista, zaczynają się dziać dwie rzeczy, które, o dziwo, nie zawsze rzucają się w oczy.

1. Zaczynasz szybko zdobywać doświadczenie w realnych projektach. Jeden rok pracy jako programista może dać ci więcej wiedzy i umiejętności w twojej specjalności niż 5 lat studiów. Doświadczenie to tak istotny wskaźnik, że w ogłoszeniach IT często pisze się „wymagany programista Java z trzyletnim doświadczeniem”.

2. Przez 8 godzin dziennie poznajesz nowe technologie, a jeszcze hojnie ci za to płacą. Znaczenia tego czynnika trudno przecenić. W niektórych przypadkach zdobyte umiejętności są tak ważne, że dla ich pozyskania można by pracować nawet za darmo, a i dopłacić. Jeśli mądrze wybierasz projekty, na które się godzisz, czeka cię zawrotna kariera programisty.

Tylko co wybrać?

Często, jeśli nie wiesz, jakie technologie będą dla ciebie użyteczne, zaczynasz wybierać je na zasadzie „podoba się, nie podoba się” albo „modne, niemodne”. Jak się trafi. Dlatego lepiej wiedzieć z wyprzedzeniem, dokąd chcesz dojść.

Dróg rozwoju programisty jest bardzo dużo, więc dla prostoty wyodrębnimy kilka i opiszemy nasze spojrzenie na sytuację. Nie traktuj tej schematycznej mapy jako sztywnej pozycji, raczej jako uproszczone spojrzenie mające wnieść odrobinę jasności.

Dwustuletni programista.

Jeśli najbardziej lubisz programować, twoja ścieżka to Senior Developer, potem Tech Lead Developer i architekt. Możesz też po prostu pracować jako programista przez 50 lat. Często pensje starszych programistów i tech leadów przewyższają pensje ich menedżerów. Nie przegap tej drogi.

Menedżer. Masz szczęście — nie jesteś jak wszyscy.

Przeszedłeś na stronę wroga. Żartuję. Jeśli objawiły się u ciebie niemałe zdolności organizacyjne, twoja ścieżka to Team Lead, a następnie Project Manager. Da ci to szansę zostać dyrektorem i pomoże przy zakładaniu własnej firmy. Przecież właśnie tego chcesz, prawda?

Ukraść traktor.

Jeśli masz już rodzinę i dzieci, być może chcesz spokojnego i dostatniego życia w kraju o stabilnej gospodarce. Rozważasz przeprowadzkę/imigrację do Kanady, USA, Szwajcarii lub nawet Australii. Masz świetne umiejętności i poszukiwany zawód. Nie będziesz zaczynać od zmywaka. Na przykład od stanowiska Senior Java Developer. I to pewnie za większe pieniądze. Nie brzmi źle.

Zobaczyć cały świat poza Paryżem i nie umrzeć.

Nie masz jeszcze rodziny i chcesz podróżować. Upwork — to wasze wszystko. Znajdź zleceniodawcę, ustal z nim stawki — od $20/h, weź laptop i w drogę. Twojej pensji powinno wystarczyć, by normalnie żyć w dowolnym kraju świata. Dlaczego więc nie zacząć spełniać marzeń już teraz?

Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION