DevOps – jak zacząć karierę?
Tegoroczna odsłona Raportu z Badania Społeczności IT po raz kolejny potwierdziła, że w polskiej branży IT przybywa DevOpsów. Sprawdźmy zatem, jak dziś kształtują się standardy ich pracy, zarobki, a przede wszystkim – odpowiedzmy na pytanie, jak stać się DevOpsem.
DevOps, czyli kto? A może co?
Dziś jako DevOps lub Administrator IT deklaruje się 11% biorących udział w Badaniu. Choć może się to wydawać niewiele, tak od wielu lat ta wartość systematycznie rośnie. Na przykład w zeszłym roku było to dopiero 9,9%.
Mimo rosnącej popularności tej specjalizacji wciąż zdarzają się przypadki mało precyzyjnego myślenia o niej. Nie jest to, jak się czasem uważa, konkretne stanowisko, choć stosowanie nazwy stanowiska Inżynier czy Programista DevOps, „DevOps Engineer” czy DevOps Developer jest jak najbardziej uzasadnione. W czym więc rzecz?
DevOps to przede wszystkim kultura pracy. Sporo mówi sama nazwa, która łączy develompent i operations. Kultura DevOps zakłada więc zatarcie granic i połączenie zespołu zajmującego się tworzeniem aplikacji z zespołem, który odpowiedzialny jest za deployment i jej utrzymanie. Często w znacznie ściślejszej integracji niż w tradycyjnej kulturze pracy pozostają zespoły odpowiedzialne za testowanie czy bezpieczeństwo aplikacji. Ma się to przekładać na wytwarzanie oprogramowania wyższej jakości, większej terminowości oraz trafniejszemu odpowiadaniu na potrzeby klienta.
Rzecz jasna przyjęcie takiej organizacji pracy ma ważne skutki dla pracy samych developerów. Wdrożenie DevOps oznacza, że pojedynczy programiści, zamiast skupiać się na pracy wynikającej ze swojej wąskiej specjalizacji, muszą mieć w głowie szerszy obraz całego procesu tworzenia i utrzymania aplikacji. Często mówi się, że DevOps developer musi mieć świadomość, nie tylko tego, nad czym pracuje on sam, ale także tego, co w tym czasie dzieje się na stacjach roboczych jego kolegów.
Tak właśnie należy rozumieć wspomniane już stanowiska, np. DevOps Engineer. Aplikując na to stanowisko, należy zdawać sobie sprawę, że pracodawca będzie wymagał większego zaangażowania w cały proces budowy, rozwoju i wdrażania projektów, niż tylko skupianiu się kandydata na swoim wąskim wycinku tej osi.
DevOps – praca i zarobki w Polsce
Jeśli interesuje cię właśnie takie podejście do pracy, to zapewne chcesz wiedzieć, jak wygląda praca Inżyniera DevOps w polskiej branży IT oraz jak plasują się faktyczne zarobki.
Jak nietrudno się domyślić, praca na stanowisku Inżyniera DevOps to kiepski wybór dla samotnych wilków. Aż 87% ankietowanych w naszym badaniu ściśle współpracuje z innymi DevOpsami bądź przynajmniej w ramach zespołu projektowego.
Kolejną przydatną informacją dla osób rozważających tę ścieżkę kariery jest to, że należy być gotowym na pracę nad wieloma projektami w tym samym czasie – pracuje tak 67% badanych. Na tle innych specjalizacji wyróżnia się w przypadku zespołów DevOps wysoki odsetek zautomatyzowanych procesów i konfiguracji. Jest to zazwyczaj od 51 do aż 90%.
No dobrze, ale ile na tym wszystkim można zarobić? Oczywiście zależy to od doświadczenia oraz formy współpracy. Wykonując obowiązki w ramach umowy o pracę DevOps może liczyć średnio na 9 102 zł, przy czym umowa B2B to już 20 490 zł – mimo kwotę tę należy pomniejszyć o podatki i ZUS, to prowadzenie własnej działalności gospodarczej często okazuje się bardziej opłacalne. W przypadku umów cywilnoprawnych DevOps może liczyć średnio na 7 220 zł.
Wysokość pensji znacznie różnicuje się jednak ze względu na doświadczenie. I tak najmniej doświadczeni juniorzy zarabiają na umowie o pracę 4 776 zł, DevOps na poziomie mid może już liczyć na 7 100 zł, zaś senior zarabia średnio 10 105 zł. W przypadku współpracy w ramach B2B kwoty te analogicznie wynoszą kolejno 8 569 zł, 14 688 zł i 21 432 zł.
DevOps – technologie
Utarło się, że złotym trio pracy DevOpsa są trzy technologie: Linux, Python i chmura. Zdecydowanie potwierdzają to nasze badania. Na tle innych specjalizacji DevOpsi silnie wyróżniają się jako użytkownicy Linuksa – korzysta z niego w codziennej pracy aż 86% badanych.
Aż 73% na co dzień pisze w Pythonie – na dalszych miejscach plasuje się SQL (46%), Java (27%) czy Java Script (22%). Dominacja Pythona jest więc wyraźna. Nieco bardziej zrównoważone są preferencje w obszarze dostawców usług chmurowych – choć na pierwszym miejscu plasuje się Amazon Web Services (48%), to już 40% wybiera Microsoft Azure. Ponadto – co może zaskakiwać – aż 20% ankietowanych nie korzysta w pracy z usług chmurowych.
Rzecz jasna nic nie stoi na przeszkodzie, aby DevOps wykorzystywał środowisko windowsowe, niemniej powszechnie uważa się, że obsługa narzędzi wykorzystywanych w codziennej pracy często okazuje się Linux. Podobnie jest z programowaniem – Pythona uważa się za wybór najbardziej uniwersalny i cieszy się coraz większym uznaniem, jednak może się okazać, że równie dobrym (a może nawet lepszym) wyborem okaże się np. Ruby.
Coraz częściej, także poza kulturą pracy DevOps wykorzystywane są środowiska chmurowa oraz szeroko pojęta wirtualizacja oraz konteneryzacja. W przypadku DevOpsów ich powszechność jest jeszcze bardziej zauważalna. Aż 77% badanych pracuje już w chmurze. Wśród wykorzystywanych tam narzędzi króluje Docker (83%). Do wirtualizacji najchętniej wykorzystywane są produkty VMware, łącznie z darmowym VirtualBoksem.
Ważnym elementem pracy DevOpsa bywa także korzystanie z orkiestacji. Wśród tej kategorii narzędzi prym wiedzie Kubernetes, z którego korzysta aż 66% DevOpsów. Dalej plasuje się Docker Swarm (13%) i Rancher z 9,9%. Dość duży odsetek, bo aż 28% w ogóle nie korzysta z orkiestracji.
Przydatne informacje
W ramach bonusu do artykułu dorzucamy garść przydatnych linków, z którymi warto się zapoznać przed rozpoczęciem poszukiwań pracy w roli Inżyniera DevOps czy, jak kto woli, DevOps Developera:
- DevOps w Badaniu Społeczeności IT,
- Oferty pracy dla DevOpsów,
- Jak zostałem DevOpsem, John Fall, Dark Writer LLC,
- Procesy i narzędzia DevOps na przykładzie retail, Jacek Wyżnikiewicz, Accenture Sp. z o.o.