
Prije nekoliko godina pojavila se nova profesija u IT-u - DevOps inženjer. Ona je brzo postala jedna od najpopularnijih i najtraženijih na tržištu. No, tu je paradoks - dijelom popularnost DevOps-a objašnjava se time da kompanije koje zapošljavaju takve stručnjake često ih miješaju s predstavnicima drugih profesija.
Ovaj članak je posvećen razmatranju nijansi profesije DevOps, trenutnoj situaciji na tržištu i perspektivama. Istražili smo ovo složeno pitanje uz pomoć dekana u online univerzitetu GeekUniversity Dmitrija Burkovskog.
Dakle, što je zapravo DevOps?
Sam pojam se tumači kao Development Operations. To nije toliko profesija, koliko pristup organizaciji rada u srednjoj ili velikoj kompaniji prilikom pripreme proizvoda ili usluge. Naime, tijekom pripreme sudjeluju različiti odjeli jedne kompanije, a njihovo usklađivanje često nije dobro koordinirano.
Na primjer, programeri ne znaju uvijek o problemima koji se javljaju kod korisnika koji rade s objavljenim programom ili uslugom. Tehnička podrška sve odlično zna, ali može biti neupućena u ono što se događa "unutra" softvera. Tu na scenu stupa DevOps inženjer, koji pomaže u koordinaciji procesa razvoja, olakšava automatizaciju procesa i poboljšava njihovu prozirnost.
DevOps koncept spaja ljude, procese i alate.
Što bi DevOps inženjer trebao znati i umjeti?
Prema mišljenju jednog od najpoznatijih zagovornika koncepta DevOps, Joea Sancheza, predstavnik ove profesije treba dobro razumjeti nijanse same koncepta, imati iskustvo u administraciji i Windows i Linux sustava, razumjeti programski kod napisan na različitim jezicima, raditi s Chefi, Puppet, Ansible. Naravno, za analizu koda potrebno je poznavati nekoliko programskih jezika, i ne samo poznavati, već i imati iskustvo u razvoju. Također, poželjno je imati iskustvo u testiranju gotovih softverskih proizvoda i usluga.
No, to je u idealu, takav nivo iskustva i znanja neće se naći kod svake osobe u IT sektoru. Evo skupa minimalno potrebnog znanja i iskustva za dobrog DevOps-a:
- OS GNU/Linux, Windows.
- Najmanje jedan programski jezik (Python, Go, Ruby).
- Jezik skripti komandne ljuske - bash pri radu s Linuxom i powershell u slučaju Windowsa.
- Sistem za kontrolu verzija - Git.
- Sustavi za upravljanje konfiguracijom (Ansible, Puppet, Chef).
- Bar jedna od platformi za orkestraciju kontejnera (Kubernetes, Docker Swarm, Apache Mesos, Amazon EC2 Container Service, Microsoft Azure Container Service).
- Sposobnost rada s pružateljima usluga u oblaku (poput: AWS, GCP, Azure i dr.) koristeći Terraform, znati kako se aplikacija implementira u oblak.
- Sposobnost postavljanja CI/CD cjevovoda (Jenkins, GitLab), ELK staka, sustava za nadzor (Zabbix, Prometheus).
Evo popisa vještina koje najčešće navode stručnjaci za DevOps na Habr karijeri.

Osim toga, DevOps stručnjak treba razumjeti potrebe i zahtjeve poslovanja, vidjeti svoju ulogu u procesu razvoja i znati kako organizirati proces uzimajući u obzir interese naručitelja.
A što je s ulaznom barijerom?
Popis znanja i iskustava nije bez razloga naveden gore. Sada je lakše razumjeti tko može postati DevOps stručnjak. Ispada da su predstavnicima drugih IT specijalnosti, posebno sistemskim administratorima i programerima, najlakše preći u ovu profesiju. Oboje brzo mogu steći nedostajući volumen iskustva i znanja. Polovica potrebnog skupa već im je dostupna, a često i više od polovice.
Također, odlični DevOps inženjeri dolaze iz redova QA inženjera. Oni znaju što i kako funkcionira, upoznati su s manama i nedostacima softvera i „hardvera“. Može se reći da je QA inženjer koji poznaje programske jezike i zna pisati programe — polu-DevOps.
No, predstavniku netehničke struke, koji nikada nije imao posla ni s razvojem ni sa sistemskim administriranjem, bit će teško. Naravno, ništa nije nemoguće, no novaci trebaju adekvatno procijeniti svoje sposobnosti. Trebat će dosta vremena za stjecanje potrebnog „bagaža“.
Gdje se može zaposliti DevOps?
U veliku tvrtku čija je djelatnost izravno ili neizravno povezana s razvojem aplikacija i administracijom „hardvera“. Najveći nedostatak DevOps inženjera imaju tvrtke koje pružaju velik broj usluga krajnjim potrošačima. To su banke, telekomunikacijski operateri, najveći pružatelji internetskih usluga itd. Među tvrtkama koje aktivno zapošljavaju DevOps inženjere su Google, Facebook, Amazon, Adobe.
Uvođenje DevOps-a i startupa s malim poslovima, no ipak za mnoge od tih kompanija zapošljavanje DevOps inženjera više je trend nego stvarna potreba. Naravno, postoje i iznimke, ali ih nije mnogo. Malim kompanijama više je potreban ‘i šuster, i žetelac, i svirač’, tj. osoba koja može raditi na više područja. Dobar CTO sposoban je to sve obaviti. Radi se o tome da malom poslu brzina rada i optimizacija poslovnih procesa kritično važne za srednji i veliki biznis.
Evo nekoliko oglasa za posao (novosti možete pratiti na Habr Karijeri po ):
Plaće DevOps-a u Rusiji i svijetu
U Rusiji prosječna plaća DevOps inženjera iznosi oko 132 tisuće rubalja mjesečno. To su procjene iz kalkulatora plaća servisa Habr Karijera, izrađene na temelju 170 upitnika za drugo polugodište 2020. godine. Da, uzorak nije baš velik, ali kao ‘prosječna temperatura u bolnici’ sasvim je prihvatljiv.
Ima plaća od 250 tisuća rubalja, tu su i one oko 80 tisuća i malo ispod. Sve ovisi o kompaniji, kvalifikaciji i samom stručnjaku, naravno.
Što se tiče drugih zemalja, statistika o plaćama također je poznata. Stručnjaci Stack Overflowa odradili su dobar posao analizirajući upitnike oko 90 tisuća ljudi — ne samo DevOps, već i općenito predstavnike tehničkih struka. Ispostavilo se da Engineering Manager i DevOps zarađuju najviše.
DevOps inženjer godišnje zarađuje oko 71 tisuću dolara. Prema podacima s resursa Ziprecruiter.com, plaća profesionalca u ovoj oblasti kreće se od 86 tisuća dolara godišnje. A servis Payscale.com pokazuje još ugodnije brojke — prosječna plaća DevOps stručnjaka, prema podacima servisa, premašuje 91 tisuću dolara. A to je plaća za junior stručnjaka, dok stariji može zarađivati 135 tisuća.
Na kraju se može reći da potražnja za DevOps-om postupno raste, potražnja za stručnjacima svih razina premašuje ponudu. Dakle, ako postoji želja — možete probati u ovoj oblasti. Međutim, treba imati na umu da sama želja nije dovoljna. Potrebno je stalno se razvijati, učiti i raditi.
Izvor: habr.com
