Python na topie, wszyscy lubią Rust, fajnie jest być DevOpem – nowy raport Stack Overflow

Strona główna Aktualności
Python na topie, wszyscy lubią Rust, fajnie jest być DevOpem – nowy raport Stack Overflow
Python na topie, wszyscy lubią Rust, fajnie jest być DevOpem – nowy raport Stack Overflow

O autorze

Znany każdemu programiście świata Stack Overflow opublikował wyniki corocznej ankiety. Tym razem wzięło w niej udział prawie 90 tys. programistów z różnych krajów. Poza ulubionymi środowiskami frameworkami i językami Stack Overflow zbadał też stopień zadowolenia z pracy w różnych obszarach programowania.

Wszyscy kochają Pythona i Rust

Pod względem popularności języków programowania zaskoczenia nie ma. Python od lat cieszy się sporą popularnością i jest lubiany przez osoby pracujące w branży. W rankingu najpopularniejszych języków programowania wyprzedził Javę. Na szczycie niezmiennie znajduje się JavaScript, C++ traci.

Ranking najbardziej lubianych języków programowania wygląda zupełnie inaczej niż lista najczęściej używanych. Pierwsze miejsce niezmiennie zajmuje tu Rust – język rzadko używany, ale bardzo wysoko oceniany pod względem wygody i elegancji. Drugie miejsce zajął Python, w górę pnie się Kotlin (nie jest to zaskoczeniem, programy pisane w nim pachną bardzo przyjemnie). Zyskuje też WebAssembly – niskopoziomowy język, którego kod można uruchomić w przeglądarce, po skompilowaniu z C, C++ lub Rusta.

Na liście języków nielubianych widać schemat – trafia tam sporo języków specjalistycznych (R przeznaczony jest bardziej do analizy danych niż programowania), starszych (Objective-C zapewne wypada tak kiepsko przez porównanie do Swifta) bądź sprawiających problemy z bezpieczeństwem (VBA, C). Sporo języków budzi mieszane uczucia, na przykład wspomniany wcześniej R, Clojure i Erlang.

Fajnie jest pracować w DevOps albo SRE

W tym roku Stack Overflow pytał uczestników badania także o ich zadowolenie z pracy. Najbardziej zadowoleni okazali się pracujący w działach DevOps i Site Reliability Engineering (SRE). Te osoby są też najmniej skłonne w najbliższym czasie szukać nowej pracy. Dlaczego?

DevOps to pojęcie relatywnie nowe w inżynierii oprogramowania, choć sama rola istnieje dość długo. To połączenie administracji systemami i programowania. Do ich zadań należy między innymi tworzenie skryptów i oprogramowania do automatyzacji testowania, budowania i wdrożenia. DevOpów można porównać do smarowniczych, którzy, choć nie tworzą ani nie obsługują maszyn, zapewniają im płynne działanie przez cały czas. Osoby na tym stanowisku nie realizują zamówień i nie dostarczają produktu, z którym wchodzi w interakcje klient bądź odbiorca końcowy. To na pewno jeden z podnoszących ich zadowolenie z pracy, mimo że spoczywa na nich ogromna odpowiedzialność. Praca DevOpa jest też na pewno ciekawsza niż tworzenie interfejsów użytkownika do aplikacji korporacyjnych.

Praca w dziale SRE jest blisko spokrewniona z DevOps, ale ich obowiązki leżą w nieco innych domenach. Zadaniem SRE jest dbanie o skalowalność rozwiązań dostarczanych klientowi i minimalizowanie czasu, gdy infrastruktura nie jest dostępna. Zadanie to nie należy do łatwych. Moim zdaniem kluczem do ich ponadprzeciętnego szczęścia są ciekawe wyzwania, których brakuje programistom na stanowiskach leżących bliżej klienta.

Warto też dodać, że osoby pracujące na tych stanowiskach należą zwykle do najbardziej doświadczonych w danej firmie, co na pewno podnosi ich poziom pewności siebie i kwoty przelewów od pracodawcy. Nazwy stanowisk są może nowe, ale automatyzacja powtarzalnych procesów jest niemal tak stara, jak samo programowanie (jeśli nie starsza – jest to też jedna z podwalin nowoczesnego przemysłu). Być może do zadowolenia z pracy na takich stanowiskach dokłada się też poczucie odpowiedzialności za płynną pracę całej firmy i wpływu na całokształt produktu, które równoważy wysoki poziom stresu.

Dzieciaki kodują wcześniej w krajach rozwiniętych, Polska na równi z Rosją i Brazylią

StackOverflow zbadał także demografię programistów i ich doświadczenia. Połowa ankietowanych napisała pierwszą linię kodu przed ukończeniem 16 roku życia, za co zapewne odpowiada coraz powszechniejsza nauka programowania w szkołach. Sporo zależy jednak od kraju, w którym osoba dorasta, oraz płci.

Średni wiek osoby pracującej jako programista jest najwyższy w Wielkiej Brytanii i Australii. W Wielkiej Brytanii na pewno przyczyniły się do tego komputery BBC Micro, Acorn i podobne maszyny „dla każdego” oraz liczne programy edukacyjne, wprowadzone przez rząd Margaret Thatcher. Nie bez powodu Cambridge jest domem Raspberry Pi, choć przynajmniej jedno pokolenie uczyło się używać oprogramowania, zamiast je tworzyć. Intensywna nauka kodowania wróciła do brytyjskich szkół w 2014 roku.

Stany Zjednoczone, mimo że mają Dolinę Krzemową i uczelnie techniczne, są nieco za nimi. W Środku tabeli znalazły się Francja i Niemcy. Polska jest minimalnie za Rosją i Brazylią, za co zapewne odpowiadają warunki ekonomiczne i polityczne. Jak łatwo się domyślić, najmniej doświadczeni programiści pochodzą z Indii, co nie przeszkadza temu krajowi dynamicznie się rozwijać w zakresie IT i kształcenia programistów. Wiele młodych osób w tym kraju wierzy, że to bilet w jedną stronę do świetnej kariery, jaką zrobił Satya Nadella.

Wciąż widoczna jest przepaść między płciami. Dziewczynki zaczynają programować później niż chłopcy, mimo że równie entuzjastycznie podchodzą do techniki i nauk ścisłych. Widać to nawet w krajach rozwiniętych, ale im niższe są dochody w kraju, tym większa różnica. Niestety nie wiemy, jak opóźnienie wpływa na dalszą karierę kobiet. Zajmują takie same stanowiska, jak mężczyźni, od dyrektorskich po kodowanie na najniższych szczeblach, ale w branży jest ich wciąż mniej. To samo można powiedzieć o cyberbezpieczeństwie. Podczas gdy dla mężczyzn w pracy największym problemem są zadania niezwiązane z programowaniem, kobiety skarżą się na toksyczne środowisko pracy.

Pełny raport możecie zobaczyć na blogu Stack Overflow.

© dobreprogramy