DevOps to jedno ze słów, które od pewnego czasu robi zawrotną karierę. Co dokładnie oznacza? Nawet w świecie IT wiele osób ma wątpliwości, istnieje bowiem co najmniej kilka definicji. Pewne jest jednak, że popyt na DevOpsów rośnie i coraz więcej firm chce mieć dziś tych specjalistów w swoich zespołach. Przyjrzyjmy się, co kryje się za terminem DevOps? Czym się zajmuje inżynier środowisk IT i na jakie zarobki może liczyć? Jakie umiejętności i doświadczenie są konieczne do wykonywania tej profesji?
Dwa w jednym
Pojęcie DevOps powstało z połączenia dwóch słów: Development oraz Operations a swoją nazwę zawdzięcza Patrickowi Debois, który w 2009 roku zorganizował w Gandawie pierwszą konferencję z serii DevOps Days. Najważniejszą cechą tego modelu pracy jest to, że zwraca uwagę na bardzo bliską współpracę obszaru utrzymania IT oraz rozwoju oprogramowania. To zbiór praktyk, których celem jest zintegrowanie w jednym procesie: rozwoju, wdrażania, utrzymania i obsługi produktu z zachowaniem odpowiedniej jakości. Korzyści wynikające z takiego podejścia, trudno przecenić. Połączenie kompetencji developera i administratora nie tylko pozwala skrócić czas i obniżyć koszty procesu wytwarzania oprogramowania, ale również zmniejszyć zbędną biurokrację. Nie trzeba dodawać, że to daje firmom przewagę nad konkurencją.
Jakie umiejętności trzeba posiadać?
Rola DevOpsa wymaga połączenia kompetencji technicznych i nietechnicznych. Przede wszystkim, kluczowa jest tu praktyczna znajomość środowisk Linux lub Windows, a także umiejętność tworzenia skryptów w Python, Perl, Bash, Go lub Ruby. Pracodawcy niejednokrotnie wymagają również przynajmniej podstawowej znajomości jednego z języków programowania, takich jak C, C++, Java, .NET lub PHP. Oprócz doświadczenia z zakresu developmentu i administracji, na stanowisku inżyniera środowisk IT konieczna jest również umiejętność posługiwania się narzędziami do automatyzacji (Puppet, Jenkins, Ansible, Hudson), które, zgodnie z ideą DevOps, pozwalają na zminimalizowanie zaangażowania człowieka w proces tworzenia i uruchamiania aplikacji oraz jej wszystkich komponentów. Idealny kandydat powinien również mieć doświadczenie z pracą w chmurze obliczeniowej (Amazon Web Services, Azure). Spośród miękkich kompetencji najważniejsze są natomiast komunikatywność, otwartość na nowe idee oraz chęć rozwoju.
Perspektywy finansowe
Wysokość wynagrodzenia na stanowisku DevOps Engineer różni się w zależności od znajomości konkretnych narzędzi oraz doświadczenia . Nie bez znaczenia jest również forma zatrudnienia. W ramach współpracy B2B firmy oferują zwykle więcej niż w przypadku umowy o pracę. Stawki dla początkujących DevOpsów zaczynają się od kilku tysięcy złotych i rosną wraz z liczbą umiejętności, jakie posiada kandydat. Zarobki specjalistów z wieloletnią praktyką oraz doświadczeniem w obszarze chmury obliczeniowej mogą przekroczyć nawet 30 tys. zł.
Z perspektywy biznesowej, metodologia DevOps niesie ze sobą mnóstwo korzyści. Nic dziwnego, że popyt na inżynierów środowisk IT rośnie z roku na rok. Jednocześnie liczba dostępnych specjalistów wciąż jest niewystarczająca, aby zaspokoić te potrzeby. To sprawia, że DovOps może być dla programistów atrakcyjnym kierunkiem rozwoju, który warto rozważyć.