Kim jest i czym się zajmuje DevOps Engineer? Jak wygląda praca jako Inżynier DevOps?

DevOps to nazwa metodologii prowadzenia projektów, która powstała z połączenia angielskich słów development i operations. Stanowisko DevOps Engineer zostało utworzone w celu utrzymania współpracy między działami wytwarzania oprogramowania oraz zarządzania systemami. Odpowiednio zarządzany dział DevOps wspiera współpracę pomiędzy tymi dwoma działami w firmie, co pomaga uniknąć konfliktów, a w rezultacie umożliwia szybsze pojawienie się produktu na rynku.

Metodyka DevOps opiera się na budowaniu oprogramowania, biorąc pod uwagę pełny obraz sytuacji (z ang. big picture perspective). Oznacza to, że wszelkie decyzje, jakie podejmowane są przez DevOps bazują na wiarygodnych, udokumentowanych danych, a nie tylko na prognozach. Dzięki takim zabiegom końcowe produkty powstają szybciej oraz lepiej wpasowują się w rynkowe trendy, a opieranie się na twardych danych minimalizuje ryzyko wypuszczenia nieprzydatnego dla użytkowników oprogramowania.

 

Jakie umiejętności powinien posiadać DevOps?

Specjalista na tym stanowisku to osoba, która biegle zna cykl rozwoju oprogramowania oraz potrafi go usprawnić, używając do tego narzędzi do automatyzacji. Do najczęściej wykorzystywanych narzędzi na stanowisku DevOps można zaliczyć:

  • git – narzędzie umożliwiające zapisywanie różnych wersji kodu źródłowego. Służy do współpracy i eksperymentów, ponieważ umożliwia tworzenie osobnych gałęzi, pozwalających na wdrożenie nowych funkcji.
  • puppet – narzędzie pozwalające na zarządzanie infrastrukturą jako kodem. Dzięki automatyzacji zarządzaniem, umożliwia dostarczanie oprogramowania szybciej i bezpieczniej. Zapewnia takie funkcje jak raporty w czasie rzeczywistym, zarządzanie wieloma zespołami i zasobami.
  • kubernetes – narzędzie pomagające zarządzać, skalować i automatyzować tzw. aplikacje kontenerowe.
  • jenkins – serwer CI/CD typu open source, który pozwala automatyzować różne etapy procesu dostarczania produktu. Narządzie to jest popularne głównie ze względu na ogromną ilość wtyczek, których jest ponad tysiąc, a to sprawia, że integruje się z praktycznie wszystkimi narzędziami DevOps.

Jeżeli chodzi o twarde umiejętności to do najczęstszych wymagań, jakie pojawiają się ofertach pracy na to stanowisko, należą znajomość Python, Linux oraz Docker, a także .NET i AWS. Z miękkich umiejętności za ważne można uznać biegłą znajomość języka angielskiego, komunikatywność, umiejętność pracy pod presją czasu oraz sprawne radzenie sobie z wielozadaniowością. Niezwykle ważna jest również otwartość na ciągłe kształcenie się.

Oferty pracy dla DevOps

Ofert pracy na stanowisko DevOps Engineer jest wiele. Wielu pracodawców oferuje benefity pracownicze. Do tych powtarzających się  najczęściej, jakie deklarowane są w ogłoszeniach o pracę dla DevOps należą m.in.: wysokie wynagrodzenie, rekrutacja w formie online czy stała długość kontraktu. Ponadto w niektórych ofertach proponowane są budżety doszkalające, płatne urlopy na kontrakcie B2B oraz możliwość rozpoczęcia pracy od zaraz.

Średnie zarobki dla DevOps, zatrudnionych na umowę o pracę w zależności od stanowiska to: 6 700 – 10 000 zł dla juniora, 14 000 – 20 000 zł dla mida oraz 16 000 – 23 200 zł dla seniora.

Czy doświadczenie w pracy jako DevOps jest ważne? Oczywiście. Jak w każdej branży, można spodziewać się, że ze wszystkich specjalistów aplikujących na dane stanowisko, na osobę posiadającą doświadczenie, będzie patrzeć się najprzychylniej. Nie oznacza to jednak, że osoby bez doświadczenia w tej branży są bez szans, gdyż przede wszystkim liczy się wiedza, jaką posiada kandydat, a firma być może będzie chciała ją sprawdzić poprzez zadania rekrutacyjne w danej technologii.