Dlaczego programiści ciągle wyglądają na takich szczęśliwych? Odpowiedź na to pytanie jest prosta i przytłaczająca: dlatego, że pracują w pracy, którą kochają, i mają kupę pieniędzy.
Witaj w świecie programistów.
Wynagrodzenie programisty
Chcę opowiedzieć o zarobkach programistów. Jak w ogóle wygląda sprawa płac, gdzie lepiej iść pracować, a gdzie — nie. Jeśli nie jesteś programistą i spróbujesz samodzielnie rozgryźć ten temat, możesz uzyskać bardzo sprzeczne dane.
Chodzi o to, że głównym czynnikiem wpływającym na płacę programisty nie jest jego kwalifikacja, lecz miejsce pracy. Czasami przy takiej samej kwalifikacji różnica między dobrym a złym miejscem może sięgać 2–10 razy(!)
W danym momencie twoje kwalifikacje są stałe. Nie możesz w miesiąc stać się dwa razy bardziej doświadczony i dostawać dwa razy więcej. Ale możesz zmienić pracę w miesiąc i zarabiać dwa razy więcej. Wyjaśnijmy więc, gdzie najlepiej pracować.
Oto trzy czynniki, które bardzo silnie wpływają na poziom płac w firmach:
1) Czy tworzenie oprogramowania jest główną działalnością firmy.
2) Czy firma jest zorientowana na rynek międzynarodowy, czy wewnętrzny.
3) Czy właścicielem firmy jest zachodnia spółka, czy krajowa.
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 w grę wchodzą wymienione wyżej czynniki.
Konkretnie liczby
Trudno podać jakieś konkretne liczby dla całego świata. Opiszemy sytuację w Europie Wschodniej, która w dużej mierze odpowiada krajom, gdzie stosunkowo rozwinięty jest IT‑outsourcing/outstaff.
Oto ile może zarabiać Java Senior Developer z pięcioletnim doświadczeniem pracy, w zależności od poziomu firmy, w której pracuje:
| Poziom | Wynagrodzenie miesięcznie | Opis |
|---|---|---|
| 1 | $200 – $500 | Na samym dole są firmy, gdzie IT to kierunek niezwiązany z główną działalnością firmy, klientem jest rynek wewnętrzny, a właścicielem państwo. Na przykład dział IT w urzędzie skarbowym lub innej instytucji państwowej. |
| 2 | $500 – $1500 | Poniżej średniej są działy IT różnych prywatnych struktur: banków itp. |
| 3 | $1,000 – $2,500 | Średni poziom to firmy zajmujące się tworzeniem oprogramowania |
| 4 | $3,000 – $4,000 | Powyżej średniej — firmy tworzące oprogramowanie z klientami z Zachodu |
| 5 | $4,000 – $5,000 | Na samym szczycie — firmy tworzące oprogramowanie, których klienci są z Zachodu i właściciel również. Jest ich mało. Oferty pracy pojawiają się rzadko i trudno się tam dostać. Ale istnieją. |
Co jest najbardziej dziwne w zaistniałej sytuacji?
Połowa wszystkich programistów pracuje w firmach poziomu 1 i 2.
Chcesz wiedzieć, w czym jest haczyk?
Są setki otwartych ofert 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: są dwaj Java Juniorzy. Jeden z nich idzie pracować za $100 miesięcznie (do firmy poziomu 1), a drugi — za $1,000 miesięcznie (poziom 4). Po co zarabiać mniej?
Czego można osiągnąć, jeśli się nie obijać
Jeśli będziesz konsekwentnie rozwijać się w programowaniu, twoje wynagrodzenie, zaczynając od dziś, będzie zmieniać się mniej więcej tak (+/− kilkaset dolarów w zależności od miasta, w którym pracujesz):
Plan
0–3 miesiące (Uczeń)
Niewiele wiesz o programowaniu. Może uczyłeś się w szkole i/lub na uniwersytecie, ale bardzo powierzchownie.
Twoim zadaniem jest uczyć się programowania i poznawać Java.
Twoim celem jest dostać pracę jako Java Junior w firmie nie niższej niż poziom 3.
Pierwsze trzy miesiące w planie nic nie zarabiasz, ponieważ po prostu studiujesz programowanie. W przyszłości, gdy będziesz mieć rodzinę i mnóstwo kredytów, zmiana specjalizacji będzie znacznie trudniejsza. Aby naprawić błąd, będziesz musiał 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 twoje doświadczenie rośnie z każdym dniem. Nie obijaj się. Masz jeszcze dużo do zrobienia, zanim będziesz mógł odpocząć na laurach.
Twoim zadaniem jest poznawać technologie, które będą ci potrzebne jako developerowi poziomu Middle. Jakie dokładnie technologie? Świat się zmienia. Dajemy wskazówki, ale życie może wszystko zmienić. Znajdź w internecie kilka ofert pracy i zobacz, czego wymagają.
Twoim celem w pierwszym roku pracy jako Java Junior jest awansować do Java Middle. Nikt nie mówi, że to bardzo łatwe, ale jest możliwe dla osoby zmotywowanej. To od razu da skok pensji do około tysiąca pięciuset.
2‑gi rok pracy jako programista (Java Middle Developer, level 1)
Dobrze popracowałeś w poprzednim roku i teraz jesteś Java Middle Developerem. Z wynagrodzeniem około tysiąca pięciuset możesz żyć normalnie. W pracy dostajesz poważne zadania i twoje doświadczenie rośnie jak na drożdżach. Możesz awansować do Java Senior Developer w ciągu dwóch–trzech lat. Nie ma sensu przyspieszać tego procesu. Silnego skoku płacowego i tak nie dostaniesz.
Twoim zadaniem jest poznać wzorce projektowe, przeczytać „Code Complete” McConnella. Poprawiaj jakość swojego kodu i umiejętności pracy w zespole. Można przyjąć zasadę czytać co tydzień jedną książkę o IT. Wtedy przez rok będziesz mądrzejszy o 50 książek niż inni. Nie odkładaj tego na później: czasu wolnego nie będzie więcej. Bardzo prawdopodobne, że pojawi się rodzina lub powiększy się, jeśli już jest.
Twoim celem jest wybrać kilka technologii, w których będziesz się specjalizować jako Senior. Całego świata i tak nie opanujesz. Bycie ekspertem w wąskiej dziedzinie to dobre rozwiązanie.
3‑ci rok pracy jako programista (Java Middle Developer, level 2)
Jesteś już doświadczonym Middle developerem i myślisz o zostaniu Senior Developerem. To przyjemne i prestiżowe. Twoje wynagrodzenie przekracza 2 000 dolarów (dane dla Kijowa). Od tego momentu popyt na takich specjalistów jak ty przewyższa podaż. Zawsze będziesz mógł znaleźć pracę w parę dni i raczej nie będziesz zarabiać mniej niż teraz. O ile oczywiście nie popełnisz jakiejś głupoty.
Twoim zadaniem jest kontynuować naukę wybranych technologii. Pracuj lepiej. Nie dla pracodawcy, dla siebie. Proś o projekty z perspektywicznymi technologiami (takimi jak Big Data, na moment pisania tego artykułu). I tak spędzasz w biurze 8 godzin dziennie, więc dlaczego nie dostać za to trochę więcej pieniędzy i, co ważniejsze, cennego doświadczenia, które jeszcze ci się przyda.
Twoim celem jest zmienić pracę. Dobry zespół jest wszędzie. Spotkasz nowe projekty i technologie. Nie przywiązuj się za wcześnie do jednego miejsca. Jeśli nadal pracujesz w firmie trzeciego poziomu: pomyśl o przejściu na czwarty poziom. Poziom piąty, choć bardzo atrakcyjny, jest na razie nieosiągalny.
4‑ty rok pracy jako programista (Java Senior Developer, level 1)
Zostałeś Senior developerem. Gratulacje. Być może zasłużyłeś na to nie do końca i to czujesz. I tak gratulacje. Nieważne, czy teraz jesteś wart swojej pozycji, ważne, żebyś stał się do niej godny w przyszłości. Zgódź się, lepiej najpierw dostać dobrą pracę, a potem w ciągu roku dorosnąć do niej, niż najpierw awansować i czekać rok na dobrą pozycję.
Mam nadzieję, że nie zapomniałeś mojej rady i czytałeś jedną książkę tygodniowo — teraz każdy student może ci pozazdrościć. Pomyśl: masz poważne wynagrodzenie zbliżające się do trzech tysięcy dolarów. Najpewniej jesteś jeszcze młody. Cały świat jest u twoich stóp.
Twoim zadaniem jest ponownie przejrzeć wybrane technologie. Być może trzeba zmienić specjalizację. Świat się zmienił, technologie się zmieniły, a i wiedzy przybyło przez ostatnie dwa lata. To, na czym teraz postawisz, będzie twoim wyborem na kilka najbliższych lat. Najwyższy czas wybrać ulubione technologie.
Twoim celem jest wybrać kierunek, w którym mógłbyś się rozwijać dalej. Jest ich bardzo wiele, nikt nie wymieni wszystkich opcji, ale wybór trzeba podjąć już teraz. Jeśli dziś nieco zmienisz swoją teraźniejszość, to doprowadzi do dużych zmian w twojej przyszłości.
5‑ty rok pracy jako programista (Java Senior Developer, level 2)
Zdecydowałeś się na przyszłość i pracujesz nad realizacją swojego marzenia. Dobrze dobrany kierunek w połączeniu z chęcią iść naprzód — a rezultat nie każę długo czekać. Gratulacje. Cieszymy się, że jest nas o jedną szczęśliwą osobę więcej.
Jest jedna mądra prawda. Ludzie często przeceniają, co można osiągnąć w rok, i nie doceniają, czego można dokonać w pięć lat. Spójrz pięć lat wstecz. Tak właśnie jest.
Twoim zadaniem jest nie podejmować głupich decyzji i nie ulegać lenistwu.
Twoim celem jest wybrać kierunek i iść dalej. A myślałeś, że to koniec? Przypomnij sobie swoją klasę maturalną. 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 innych zawodów. Nie ma tu konieczności robienia kariery menedżera, żeby dobrze zarabiać. Częste są sytuacje, gdy starszy programista zarabia więcej niż jego szef‑menedżer. Im więcej zdobywasz doświadczenia, tym bardziej twoje relacje z przełożonymi przesuwają się od „przełożony‑pracownik” do relacji typu „gwiazda filmowa i jej menedżer”. Rozbestwieni, świadomi swojej wartości programiści przebierają projektami i ofertami pracy. Cieszmy się z ich sukcesów.
Co trzeba zrobić, żeby stać się takim wysokiej klasy i poszukiwanym na świecie programistą? Musisz mieć duże doświadczenie w najnowszych i poszukiwanych technologiach. Jak to osiągnąć? Odpowiedź poniżej.
Po tym, jak po raz pierwszy zatrudnisz się jako programista, zaczną dziać się z tobą dwie rzeczy, które, jak na ironię, 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 specjalizacji niż 5 lat studiów. Doświadczenie jest tak ważnym wskaźnikiem, że w ogłoszeniach IT często piszą „wymagany programista Java z trzema latami doświadczenia”.
2. Spędzasz 8 godzin dziennie na nauce nowych technologii, a za to jeszcze chętnie ci płacą. Znaczenia tego czynnika trudno przecenić. W niektórych przypadkach zdobyte umiejętności są tak ważne, że dla ich uzyskania można pracować za darmo, a nawet dopłacać. Jeśli mądrze wybierasz projekty, na które się zgadzasz, czeka cię zawrotna kariera programisty.
A więc co wybrać?
Często, jeśli nie wiesz, które technologie będą dla ciebie przydatne, zaczynasz wybierać je według zasady „lubię/nie lubię” albo „modne/niemodne”. Los decyduje. Lepiej wiedzieć wcześniej, dokąd chcesz trafić.
Ścieżek rozwoju programisty jest bardzo wiele, więc dla uproszczenia wyróżnimy kilka z nich i opiszemy nasze spojrzenie na sytuację. Nie traktuj tej schemy jako sztywnej prawdy, raczej jako uproszczony obraz, który ma wnieść choć trochę jasności.
Programista dwustuletni.
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 szansy.
Menedżer. Udało ci się, jesteś inny niż wszyscy.
Przeszedłeś na stronę „wroga”. Żartuję. Jeśli odkryłeś w sobie wyjątkowe zdolności organizacyjne, twoja ścieżka to Team Lead, a potem Project Manager. To da ci szansę zostać dyrektorem i pomoże przy zakładaniu własnego biznesu. W końcu tego chcesz, prawda?
Ukradnij traktor.
Jeśli masz rodzinę i dzieci, być może chcesz spokojnego i dostatniego życia w kraju o stabilnej gospodarce. Myślisz o przeprowadzce/immigracji do Kanady, USA, Szwajcarii lub nawet Australii. Masz świetne umiejętności i poszukiwany zawód. Nie będziesz musiał zaczynać od zmywaka. Na przykład możesz zacząć od Senior Java Developer. I to prawdopodobnie za wysokie wynagrodzenie. Nie jest źle.
Zobaczyć cały świat, oprócz Paryża, i nie umrzeć.
Jeśli nie masz jeszcze rodziny i chcesz podróżować — Upwork jest dla ciebie. Znajdź klienta, dogadaj stawki — od $20/godz., zabierz laptop i w drogę. Twoje zarobki powinny wystarczyć, by normalnie żyć w większości krajów. Czemu nie zacząć realizować marzeń już teraz?
GO TO FULL VERSION