+ BLOG

Kim jest DevOps Engineer?

zjedź niżej
Kim jest DevOps Engineer?

Kim jest DevOps Engineer?

 

DevOps to suma dwóch słów: development i operations. To nie technologia. To metodyka, która dotyczy nie tylko tworzenia oprogramowania, ale także konfiguracji i utrzymania infrastruktury. Skupia się głównie na końcowym produkcie i procesach - od pisania kodu, testowania go - aż do utrzymania. Od 2008 roku zyskuje na popularności nie tylko wśród programistów, ale także w biznesie, który dostrzega w tej metodyce realne korzyści finansowe. To między innymi właśnie dzięki jej wdrożeniu Amazon oszczędza miliony dolarów, dzięki błyskawicznym testom A/B a Netflix skutecznie chroni się przed awariami, zapewniając dostęp do aplikacji bez przerwy.

 

Czym zajmuje się osoba pracująca na stanowisku DevOps Engineer?

 

Pojęcie DevOps zostało po raz pierwszy zaprezentowane przez Patricka Debois podczas konferencji w Belgii w 2009 roku i opisuje ono metodykę wytwarzania oprogramowania bazującą na komunikacji i lepszym systemie zależności pomiędzy utrzymaniem i rozwojem oprogramowania. W tej metodyce kładzie nacisk na dobrą współpracę i zwinne zarządzanie projektami, co przekłada się na efektywność i redukcję ilości możliwych błędów.

 

DevOps Engineer jest łącznikiem między wszystkimi zespołami technicznymi, zaangażowanymi w proces wytwarzania danego produktu, a biznesem i użytkownikami. Dodatkowo jest odpowiedzialny między innymi za tworzenie infrastruktury, przygotowywanie środowisk pracy dla developerów czy testerów, tworzenie pipeline’ów CI/CD, zarządzanie pracą z repozytorium kodu, monitoring aplikacji i infrastruktury, automatyzację reakcji na incydenty czy implementację metryk dotyczących infrastruktury.

 

Inżynier DevOps odpowiada także za komunikację między poszczególnymi zespołami i za efektywną ich współpracę, która ma owocować możliwie bezbolesnym procesem przejścia od pomysłu do stabilnie działającej produkcyjnej aplikacji.

 

W projekcie, w którym jest DevOps najczęściej korzysta się ze zwinnych metodyk wytwarzania oprogramowania (Agile Software Development). Jego zadaniem jest dbałość o płynny przepływ informacji, tworzenie infrastruktury projektowej, dobór odpowiedniej technologii czy kontrola iteracji projektowych i wdrożeń.

 

Narzędzia, z których korzysta DevOps:

 

W procesach związanych z tworzeniem oprogramowania:

Apache Ant - narzędzie służące do zautomatyzowania procesu budowy oprogramowania.

Maven - narzędzie automatyzujące budowę oprogramowania na platformę Java.

Gradle - narzędzie do automatyzacji kompilacji do tworzenia oprogramowania w wielu językach (np. Java, C / C ++ i JavaScript).

Git - rozproszony system kontroli wersji. Stworzył go Linus Torvalds.

JIRA- oprogramowanie firmy Atlassian, służące do śledzenia błędów oraz zarządzania projektami.

Confluence - oprogramowanie firmy służące do tworzenia dokumentacji

MSBuild, dotnet CLI – narzędzie do kompilowania kodu .NET


W procesach związanych z testowaniem:

JUnit, NUnit, CppUnit  - narzędzia służące do tworzenia powtarzalnych testów jednostkowych.


W procesach związanych z wydaniem:

Jenkis, Bamboo, TeamCity , Azure Devops, Octopus Deployment, Circle CI i wiele, wiele innych- serwer automatyzacji. Pomaga zautomatyzować części tworzenia oprogramowania związane z budowaniem, testowaniem i wdrażaniem, ułatwiając ciągłą integrację i ciągłe dostarczanie.


W procesach związanych z deploymentem:

Puppet - menadżer konfiguracji serwerów.

Ansible - otwarte oprogramowanie służące do wdrażania, konfiguracji i zarządzania.

Saltstack – narzędzie oparte na Pythonie. Oprogramowanie typu open source do automatyzacji IT sterowanej zdarzeniami, zdalnego wykonywania zadań i zarządzania konfiguracją.

Docker - otwarte oprogramowanie służące do realizacji wirtualizacji na poziomie systemu operacyjnego, działające jako platforma dla programistów i administratorów do tworzenia, wdrażania i uruchamiania aplikacji rozproszonych.

Terraform – oprogramowanie do tworzenia infrastruktury programowalnie

PowerShell, Bash – języki skryptowe


W procesach związanych z monitoringiem:

Nagios - program do monitorowania sieci, urządzeń sieciowych, aplikacji oraz serwerów, działający w systemach Linux i Unix rozpowszechniany na podstawie licencji GPL.

APM (Application Performance Monitoring)  – Dynatrace, Azure Application Insights, New Relic etc – rozbudowane narzędzia monitorowania aplikacji

ELK, Azure Log Analitycs itp – agregatory logów

 

Cechy i umiejętności miękkie pożądane u inżyniera DevOps:

✅    wszechstronność i chęć ciągłego rozwoju w takich obszarach IT jak: programowanie, cyberbezpieczeństwo infrastruktury, działania systemów operacyjnych, technologie chmurowe czy testowanie oprogramowania;
✅    zdolność uważnego słuchania oraz formułowania jasnych komunikatów;
✅    umiejętność radzenia sobie z konfliktami, negocjacji i wypracowywania kompromisów;
✅    umiejętność pracy w zespole.

 

Wynagrodzenie oferowane specjalistom DevOps

Zarobki w kategorii DevOps kształtują się na poziomie od 6 000 do 25 000 zł brutto na umowie o pracę, a w przypadku kontraktu B2B wynoszą one od 12 600 do 27 720 zł netto (+ VAT)*.

 

Wysokość oferowanych zarobków dla specjalisty DevOps ze względu na stopień zaawansowania zawodowego

 

Widełki na stanowiska juniorskie wynoszą od 6 000 do 12 000 zł brutto na UoP i 12 600 do 16 800 zł netto (+VAT) na B2B. U Midów wartość ta wzrasta już do 12 000 – 19 000 zł brutto na UoP i 16 800 do 21 840 zł netto (+ VAT) w przypadku kontraktu B2B. Natomiast Seniorzy mogą liczyć na wynagrodzenie od 19 000 do 25 000 zł brutto na Umowie o pracę, a przy umowie B2B widełki wynoszą 21 840 – 27 720 zł netto (+ VAT).

 

DevOps Engineer – praca dla specjalistów z doświadczeniem

 

DevOps to kategoria wymagająca od kandydatów sporego doświadczenia. Potwierdzają to dane z portalu z ogłoszeniami No Fluff Job, z którego wynika, że zaledwie 3% ofert w tej specjalizacji skierowanych jest do juniorów, a przeważająca większość, bo aż 62,8% dotyczy seniorów.

 

 

 

DevOps w przyszłości. Trendy na 2021 rok

 

DevOps z każdym rokiem rośnie w siłę. Potwierdzają to wnioski z raportu Podejście DevOps w przedsiębiorstwie (2020–2021) przygotowanego przez Microsoft i Sogeti, które obejmują ponad 250 implementacji chmury w przedsiębiorstwie (2020–2021). DevOps zdaniem autorów publikacji jest siłą napędową do rozwoju biznesu i z pewnością będzie stanowić źródło przewagi konkurencyjnej firmy.

 

 

*Dane pochodzą z raportu Wynagrodzenia IT w 2020, który został stworzony na podstawie danych o oczekiwaniach finansowych blisko 3000 kandydatów z całej Polski. Dane dotyczą wywiadów przeprowadzonych z respondentami w okresie od 1 stycznia do 31 grudnia 2020 roku.

 

 

Autor: Paweł Zawadzki, DevOps Architect @DCG
__________________________________________________

Paweł Zawadzki, DevOps Architect @DCG Paweł Zawadzki - Geek oraz fascynat technologii, który swoje młodzieńcze hobby programistyczne przekuł w swoją ścieżkę zawodową. Praktyk wielu języków programowania, który największym uczuciem zapałał do programowania obiektowego oraz .NET'a. Po wielu latach wytwarzania oprogramowania w różnych dziedzinach (drogownictwo, bankowość, farmaceutyka) zmienił kierunek swojej kariery i zajął się całościowym spojrzeniem na cały cykl życia aplikacji i automatyzacji poszczególnych jego części. Praktyk metodologii DevOps, starający się tworzyć mosty pomiędzy różnymi częściami firmy. Obecnie zajmuje się architekturą całej platformy opartej o chmurę Azure, począwszy od budowania paczek, poprzez wdrażanie automatyczne kodu oraz infrastruktury, skalowanie oraz monitorowanie. Absolwent informatyki na Politechnice Warszawskiej oraz zarządzania na Uniwersytecie Warszawskim.
DevOps, Engineer, IT
Zobacz również

Dane spółki: DCG Sp. z o.o., ul. Towarowa 28, 00-839 Warszawa                                                     

REGON: 141316780

NIP: 5222877930

KRS: 0001067305

Obserwuj nas:
UE