bookmark_borderIle ofert pracy mają programiści i dlaczego dwie na rok?

Jest taki stary, suchy dowcip, że bezrobocie programisty to najgorsze piętnaście minut w jego życiu. Pracuj.pl tworzy specjalny sub-portal z ofertami pracy dla IT. JustJoin.it i No Fluff Jobs konkurują od lat i wyświetlają nam setki ofert pracy dla programistów. Co więc ja tutaj bredzę w click-baitowym tytule, zapytacie?

Otóż ofert jest mnóstwo, to prawda. W chwili pisania tego artykułu JustJoin.it zwraca ich 1385. Do pewnego stopnia prawdą jest też, że programista szukający pracy dość szybko jest w stanie ją znaleźć, o ile jest doświadczony i ma nieco umiejętności autoprezentacji.

Tyle jednak, że jeśli jest się specjalistą, osobą która posiada rozbudowane doświadczenie w jakimś obszarze, adekwatne do tego oczekiwania finansowe i chęć rozwoju oraz pracy z narzędziami, które się zna, w tym, w czym się jest ekspertem, to te omal półtora tysiąca ofert może się skurczyć do jednej, dwóch na rok.

Po pierwsze, technologie. Wspomniane JustJoin.it wyświetla na głównej stronie następujące filtry: JavaScript, HTML, PHP, Ruby, Python, Java, .NET, Scala, C. Jest ich dziewięć.

Po drugie, specjalizacje. Ful-stack developer, front-end developer, back-end developer, mobile, tester, devops, embedded, security, game. Kolejne dziewięć.

Po trzecie, miasta. Warszawa, Łódź, Kraków, Wrocław, Poznań, Trójmiasto, Śląsk, Białystok, Bydgoszcz, Toruń, Rzeszów – można by jeszcze kilka średniej wielkośći miast dodać, ale poprzestańmy na tym. Mamy ich jedenaście.

Klikamy więc, wybieramy Pythona i Białystok. Mamy jedną ofertę. Druga próba – Scala, Trójmiasto. Zero ofert. PHP Śląsk – trzy oferty, w tym jedna dla backendowca.

Podzielmy więc, na głupio, oferty przez miasta – z 1385 robi się 125. Podzielmy dalej przez technologie. Mamy 13. Dalej przez specjalizacje i mamy 1.5. I prawdę mówiąc uśredniając tyle mniej więcej wychodzi. W Warszawie pewnie pięć, w Rzeszowie zero, o ile nie mamy szczęścia.

Fragmentacja branży, mam wrażenie postępuje od lat. Kiedyś web master znał HTML, CSS i trochę JavaScript. Dziś mamy już front-end developera z React, z Angularem albo Vue, a full-stack „to już w ogóle” cytując klasyka – front React, back .NET, front Vue, back Java, front Angular, back .NET, front Angular, back Python itd.

Z jednej strony pompuje to stawki osób, które są w dobrym miejscu i z dobrą specjalnością, ale z drugiej rujnuje życie osób, które w tym miejscu nie są, a przede wszystkim projekty. Osobiście byłem świadkiem angażowania backendowców doświadczonych w .NET do pisania frontu w React. Niestety ani oni szczęśliwi nie byli, ani transpilator TypeScriptu nie mdlał z zachwytu nad tym, co musiał przetwarzać. Za to doświadczona React deweloperka, która z tym kodem musiała potem pracować była momentami bliska mdłości.

Gorącą mam nadzieję, że wkrótce firmy pójdą po rozum do portfela i praca zdalna stanie się tą słynną już nową normalnością. Otworzy to projekty na prawdziwych specjalistów, nasze płuca na świeższe powietrze bez spalin w miastach, a może przy okazji zlikwiduje nieco bezproduktywnych spotkań w niedotlenionych salkach konferencyjnych z grzybem w klimatyzacji.

bookmark_borderNadciąga tsunami juniorów! Czy to koniec eldorado w IT?

Opowieści o końcu eldorado w polskim IT powtarzają się regularnie, jak książki i artykuły o upadku Chin w zachodniej publicystyce. I tak jak od dwudziestu lat Chiny upaść nie chcą, a wręcz coraz mocniej prężą muskuły, tak od lat rosną wynagrodzenia w polskim IT. Czy nie czeka nas jednak potop?

Kto przez ostatnie lata nie siedział w piwnicy, ale rozmawiał z kimkolwiek zajmującym się rekrutacją w IT wie, że ilość CV nadsyłanych na juniorskie oferty pracy dochodzi do 300 (słownie: trzystu). Jednocześnie ilość ofert dla młodszych programistów skurczyła się do tak znikomych ilości, że w zasadzie ciężko je gdziekolwiek znaleźć.

Tymczasem firmy obsesyjnie rekrutują seniorów za coraz wyższe stawki. Dwa lata temu praktycznie nie pojawiały się oferty przekraczające 20 000 PLN netto na B2B, dziś w takich ofert jest już sporo, a w Warszawie można odnieść wrażenie, że co trzecia ma górne widełki dochodzące do 20k.

Jak to mówią – biedni biednieją, bogaci się bogacą.

Pytanie, jakie powinni sobie zadać seniorzy brzmi: czy jest coś co obroni nas przed tsunami juniorów?

Znam wielu, którzy słysząc takie słowa spoglądają pobłażliwie i odpowiadają serią epitetów w kierunku nowych adeptów programowania – ci juniorzy nic nie umieją, trzeba ich za rączkę, uczyć ich trzeba, tylko przeszkadzają…

Warto byłoby jednak na wspomniane pytanie odpowiedzieć sobie szczerze, bez przesadnej buty. Doświadczenie w programowaniu jest cenne, ale mało która branża równie dynamicznie się rozwija, co sprawia, że seniority to szybko staje się bezwartościowe. Wystarczy wymienić Visual Basic, Flash, czy ASP classic. Nowości pojawiają się nieustannie, a kiedy przychodzi nam zajmować się wychowaniem dzieci i pielęgnacją rodziców, ilość czasu na edukację spada. Maleje też zdolność przyswajania wiedzy. Starzenie się zabija elastyczność.

Każdy, kto dostatecznie długo pracuje zna smutek w oczach starszego programisty, gdy pojawia się bystrzejszy junior, który dowodzi seniorowi, że jego czas się skończył.

To jednak normalna wymiana pokoleniowa i rzecz jak świat stara. Są jednak zjawiska ciekawsze. Od paru co najmniej lat ekonomiści i ludzie z ulicy zastanawiają się, kiedy dodruk pieniądza spowoduje inflację. Banki centralne drukują i drukują, a inflacja nie eksploduje. Podobnie jest z juniorami w IT.

Tsunami juniorów, ich olbrzymia, biblijna ilość, bierze się oczywiście z kuszących stawek w IT. Każdy czytał i słyszał o artykułach chwalących wynagrodzenia programistów. Dla mnóstwa osób jest to praca marzeń. Na tej nadziei budują swoje biznesy bootcampy, szkoły programowania i kursy on-line, obiecujące adeptom sztuki kodzenia wejście na obfity rynek pracy.

Jak długo branża IT wytrzyma napór tego tsunami juniorów? Nie wiem. Nikt nie wie. Ja bym jednak budował arkę.

W okolicznych krajach widać jasno podział rynków na takie, w których programista zarabia jak każdy i takie, gdzie jest królem. Europa Wschodnia to królestwo IT. Zachodnia, z pewnymi wyjątkami, to obszar, gdzie programista jest jak każdy. Warto zauważyć, że kraje bardziej rozwinięte zwykle nie wynagradzają programistów nadzwyczaj dobrze w stosunku do innych zawodów (Japonia, Niemcy, Skandynawia, Singapur), to regiony outsourcingu (Europa Wschodnia) i kraje innowacyjne (USA, Szwajcaria) doceniają koderów. Polska nie jest przesadnie innowacyjną gospodarką, a możliwe, że w ciągu dekady, dwóch, z wolna zacznie dołączać do krajów bardziej rozwiniętych.

Logika podpowiada, że duża ilość junior developerów nie może się w końcu nie odbić na wynagrodzeniach w branży. Spadek najpewniej nastąpi. A przynajmniej zbliżenie zarobków do średniej krajowej.

Będąc doświadczonym programistą zastanawiałbym się, jakie działania podjąć, by nie zostać ponuro zaskoczonym nadchodzącą zmianą…

bookmark_borderDlaczego programiści tak dużo zarabiają?

Zarobki programistów w Polsce obrosły legendą. Gazety rozpisują się o nich regularnie. Bywa, że w tonie chwalebnym, bywa, że w tonie nagannym. Jedni ich bronią, twierdząc, że programiści to pożyteczni specjaliści. Inni atakują – wyczekują pęknięcia „bańki” i zrównania zarobków z innymi zawodami. Wiele osób zadaje sobie jednak pytanie – dlaczego programiści zarabiają tak dużo?

O zarobkach programistów więcej w mojej książce – Programista. Przewodnik po zawodzie.

Sytuacja w Polsce

Zacząć by należało od tego, że sytuacja w Polsce jest dość specyficzna. Większość osób zajmujących się w naszym kraju oprogramowaniem pracuje dla zagranicznych klientów. Napływ kapitału (głównie z Europy zachodniej) wzmożył popyt na programistów i w naturalny sposób podniósł cenę ich pracy. Kwestią otwartą jest, jak długo sytuacja ta potrwa, ale na pewno jest korzystna dla Polskiej gospodarki w tym sensie, że eksportujemy nasz talent techniczny otrzymując w zamian, mówiąc językiem PRLu, dewizy – czyli zagraniczne waluty, a także przy okazji importujemy zachodnie praktyki zarządzania projektami, doświadczenie organizacyjne i nawiązujemy kontakty biznesowe z bogatszymi krajami wspólnoty europejskiej.

Często mówi się, że w przeciwieństwie do innych zawodów, programiści w Polsce, pracując dla zagranicznych klientów zarabiają „po zachodniemu”. Prawdę powiedziawszy jest nawet lepiej. Pensje programistów w Portugalii, czy Włoszech są wręcz niższe, niż w Warszawie, czy innych dużych miastach Polski. Z drugiej strony średnie wynagrodzenia są nadal niższe niż w Berlinie, Paryżu, czy – szczególnie – Zurychu lub Nowym Jorku.

Sukces Polski (oraz szerzej – Europy wschodniej) wynika z wysokiego poziomu edukacji, bliskości kulturowej z krajami zachodu, niewielkiej odległości geograficznej, niezłej znajomości angielskiego oraz oczywiście niższych wynagrodzeń. Na chwilę obecną sytuacja wygląda tak, że kluczowe projekty odbywają się w centrach korporacji, te mniej istotne w krajach takich jak Polska, czy Rumunia, a te najbardziej kosztowo zoptymalizowane w Indiach. Ulotki dla inwestorów prezentują Europę środkową jako kompromis między jakością i ceną.

Z drugiej strony istnieje w Polsce pokaźna grupa programistów, którzy pracują za kwoty co prawda wyższe od średniej krajowej, ale również dalekie od słynnych 20 000 PLN. Grupa ta nadal jest słabiej wynagradzana od kolegów z krajów zachodu. Lepiej rzecz jasna od wielu zawodów w Polsce, jednak ciężko ją uznać za realnie zamożną.

 Sytuacja w Europie

Programiści w Europie zarabiają bez wątpienia nieźle, jednak w stosunku do innych grup zawodowych ośmielę się stwierdzić, że nie odbiegają od średniej tak jak specjaliści w Polsce. W pewnej mierze wynika to z konkurencji środkowo-europejskiej. W pewnych krajach niemile widziane jest duże rozwarstwienie dochodów. W innych po prostu miejsc pracy dla programistów nie ma aż tak wielu, bo bardziej opłacalnym i „wygodnym” jest bycie zarządcą – a sporo krajów Europy zachodniej stoi wyżej w światowym podziale pracy.

Kraje, które w stosunku do kosztów życia płacą programistom najlepiej to Szwajcaria, Wielka Brytania, Niemcy i Francja. Kraje, w których być programista się nie opłaca to na przykład Włochy, czy Portugalia.

Sytuacja na świecie

Na dwa kraje warto zwrócić szczególnie baczną uwagę: USA i Chiny.

Na USA z uwagi na tzw. military-industrial complex, czyli nieformalny sojusz pomiędzy przemysłem zbrojeniowym, a armią. Na Chiny z podobnego powodu, ale o tym za chwilę.

stany Zjednoczone dysponują nowoczesną – w wielu obszarach najnowocześniejszą na świecie – armią. Jest to armia nieustannie modernizowana, przesiąknięta nowinkami technicznymi, wyposażona w sprzęt pełen elektroniki.

Dość powiedzieć, że GPS był opracowany na potrzeby armii USA. Dla pełni obrazu można wspomnieć o dronach oraz przypomnieć, że roboty Boston Dynamics budowane były na zamówienie DARPA – agencji zaawansowanych projektów badawczych w obszarze obronności.

Ma to niebagatelny wpływ na rynek pracy inżynierów oprogramowania w USA. Boston Dynamics, Lockheed Martin, Facebook – wszystkie te firmy i wiele innych, zatrudniających setki tysięcy programistów stanowi fundament obronności kraju. Od automatycznych systemów jak drony, czy roboty, po wywiad i cyberbezpieczeństwo, tworzą one ogromny popyt na programistów za oceanem.

Z wolna podobnie sytuacja zaczyna się kształtować w Państwie Środka. Wzrost Chin powodujący inflację ambicji chińskiego narodu sprawił, że przywództwo zaczęło stawiać śmiałe cele. Jednym z kluczowych obszarów w Chińskich planach jest sztuczna inteligencja. Innym, oczywistym, jest rozwój armii. Rzut oka na oferty pracy w Szanghaju, czy Shenzhen pokazuje, jak mocno Chiny stawiają na AI.

Wbrew powszechnej w Polsce opinii, że Chińczycy pracują „za miskę ryżu” wynagrodzenia programistów z ofert pracy w większym mieście posiadającym przedsiębiorstwa z branży militarnej (Chengdu) oscylują wokół 20 000 RMB miesięcznie (ok 11 200 PLN). Daleko im oczywiście do wynagrodzeń oferowanych w Stanach, ale z powodu tych samych czynników, co w USA, można się spodziewać wzrostu popytu.

Dlaczego to się opłaca?

Nie rozumiem, czemu programista zarabia 15 000, kiedy ja zarabiam 4 000 – powie osoba spoza branży.

Tymczasem to proste.

Informatyzacja robi w zasadzie dwie rzeczy:

  1. automatyzuje pewne czynności sprawiając, że można zatrudnić mniej osób
  2. czyni możliwym rzeczy wcześniej nieosiągalne

Punkt pierwszy, przykład – swego czasu by sporządzić raport sprzedaży w jakimkolwiek sklepie, trzeba było usiąść przed stosem kartek i wykonać dziesiątki, setki operacji matematycznych. Dziś wystarczy kilka kliknięć i mamy wartości i wykresy, a to wszystko w kilka sekund. Jeśli w jakimś przedsiębiorstwie istniała osoba zajmująca się przygotowywaniem raportów (będących powtarzalnymi operacjami przetwarzania danych) można ją zwolnić. Raz opracowane narzędzie do generowania raportów posłuży tysiącom przedsiębiorstw, zaś wykonanie i aktualizacja tych narzędzi zajmuje o wiele mniej czasu i wymaga mniej etatów od tych, które dzięki owemu narzędziu stały się zbędne.

To tylko najbardziej prymitywny przykład automatyzacji. Dużo lepszym są choćby roboty spawające szkielety samochodów w fabrykach:

Zaprogramowany raz robot wykonuje pracę za darmo. Spawacz za każdą minutę bierze pieniądze.

Punkt drugi dotyczy nowych możliwości. Przykłady można mnożyć. Najlepszym bodaj będzie smartfon. Dzięki pracy między innymi programistów możemy dziś nawigować w terenie, słuchać muzyki, komunikować się ze światem i robić dziesiątki innych rzeczy na kilkuset gramowym urządzeniu wielkości połowy banana. Płacimy za nie producentom nieraz tysiące złotych. Dla wyprodukowania takiego cudeńka warto zatrudnić programistów.

Programowanie jest kluczowym narzędziem trzeciej rewolucji przemysłowej. Prawidłowo użyte, wykorzystane z głową potrafi podnieść produktywność przedsiębiorstwa o rzędy wielkości. Przykładem niech będzie Amazon. W porównaniu do tradycyjnego sklepu, Wal-Mart, generuje on dwukrotnie więcej dochodu na pracownika.

Najbardziej wydajną firmą, złożoną głównie z programistów, jest Apple. Jeden jej pracownik zarabia dla firmy prawie dwa miliony dolarów rocznie.

Źrodło: https://businessinsider.com.pl/international/these-tech-companies-make-the-most-revenue-per-employee/xh60rk9

Właśnie dlatego programiści mogą zarabiać dużo. Nie tylko nie ma ich nadmiaru na rynku pracy, lecz także są w stanie generować dla firm zysk o wiele większy, niż przedstawiciele pozostałych profesji.