Hvad er en DevOps-ingeniør, hvad laver han, hvor meget tjener han, og hvordan bliver man det?

DevOps-ingeniører er alsidige specialister, der kan automatisere processer og ved, hvordan udviklere, QA og ledere arbejder. De kan programmere, lærer hurtigt komplekse værktøjer at kende og står ikke tilbage for en ukendt opgave. Der er få DevOps-ingeniører — derfor er de villige til at betale 200–300.000 rubler, men der er stadig mange ledige stillinger.

Dmitrij Kuzmin forklarer, hvad DevOps rent faktisk gør, og hvad man skal lære for at kunne ansøge om en sådan stilling. Som bonus — vigtige links til bøger, videoer, kanaler og professionelle fællesskaber.

Hvad laver en DevOps-ingeniør?

I forbindelse med DevOps er det vigtigt ikke at forveksle termerne. DevOps er ikke en specifik aktivitet, men en professionel filosofi. Det er en metodologi, der hjælper udviklere, testere og systemadministratoren med at arbejde hurtigere og mere effektivt gennem automatisering og seamless integration.

Derfor er en DevOps-ingeniør en specialist, der implementerer denne metodologi i arbejdsprocessen:

  • I planlægningsfasen hjælper DevOps-ingeniøren med at beslutte, hvilken arkitektur applikationen skal bruge, hvordan den skal skaleres, og vælge orkestreringssystem.
  • Derefter konfigurerer han servere, automatiserede kontroller og upload af kode, samt validering af miljøet.
  • Derefter automatiserer han testning og håndterer deployment-opgaver.
  • Efter frigivelsen er det vigtigt at indsamle feedback fra brugerne og implementere forbedringer. DevOps sørger for, at brugerne ikke bemærker disse forbedringer, og at opdateringsprocessen er uafbrudt.
  • Og samtidig løser han dusinvis af opgaver, der hjælper med at etablere et velfungerende system for udviklere, QA, systemadministratorer og ledere.

Alt det, der er skrevet ovenfor, sker i næsten ideelle projekter. I den virkelige verden må man imidlertid starte i et projekt, hvor planlægning er blevet overset, arkitekturen er fejlagtig, og automatisering kun er blevet overvejet, når alle projekter står stille. At få løst disse problemer og sikre, at alt fungerer, er en nøglefærdighed for en DevOps-specialist.

Der jobmarked er forvirrende. Nogle gange søger virksomheder DevOps-ingeniører til stillinger som systemingeniør, build-ingeniør eller andre roller. Ansvarsområderne varierer afhængigt af virksomhedens størrelse og retning — nogle steder søger de en person til konsulentarbejde, andre beder om automatisering, mens nogle kræver, at man udfører udvidede funktioner som en systemadministrator, der kan programmere.

Hvad der kræves for at starte i professionen

At træde ind i professionen kræver forberedelse. Det er ikke nok bare at møde op til kurserne uden nogen forståelse for IT og lære sig op til junior-niveau. Du har brug for en teknisk baggrund:

  • Ideelt set har du arbejdet mindst seks måneder som systemadministrator, driftspecialist eller tester. Eller du har i det mindste en idé om, hvordan applikationer starter, hvilken miljø de kan udvikle sig i, og hvad du skal gøre, hvis du ser en fejl. Hvis du ikke har nogen arbejdserfaring, så tag et kursus i Linux-administration og gentag alt, der sker, på din egen maskine.
  • Forstå, hvordan netværksteknologier fungerer — lær at installere, konfigurere og administrere lokale og globale netværk.
  • Se på, hvordan og hvad programmering består af — skriv nogle scripts i Python eller Go, prøv at forstå principperne for OOP (Objektorienteret programmering), og læs om den almindelige produktudviklingscyklus.
  • Det vil være nyttigt at kende teknisk engelsk — det er ikke nødvendigt at kunne kommunikere frit, det er tilstrækkeligt at kunne læse dokumentation og grænseflader.

Det er ikke nødvendigt at vide alt dette i detaljer; for at starte med at lære DevOps er det tilstrækkeligt med et minimumsniveau af forberedelse. Hvis du har denne tekniske baggrund, så prøv at tilmelde dig kurser.

Hvad DevOps skal vide

En god DevOps-ingeniør er en alsidig specialist med en meget bred horisont. For at arbejde succesfuldt skal du forstå adskillige IT-strømme.

Udvikling

DevOps skriver et script, der hjælper udviklere med at installere kode på serveren. De laver et program, der "live" tester responsen fra databaser. De skriver en applikation til versionskontrol. Endelig vil de simpelthen bemærke potentielle problemer i udviklingen, der kan opstå på serveren.

En stærk DevOps-specialist kender flere sprog, der er velegnede til automatisering. De behersker dem ikke nødvendigvis i dybden, men kan hurtigt skrive et lille program eller læse andres kode. Hvis du aldrig har arbejdet med udvikling før, så start med Python — det har en enkel syntaks, er let at arbejde med i cloud-teknologier, og der findes mange dokumentation og biblioteker.

Operativsystemer

At kende alle funktionerne i hver version af ethvert system er umuligt — det ville kræve tusindvis af timers undervisning uden reelt udbytte. I stedet for forstår en god DevOps-specialist de grundlæggende principper for arbejde med ethvert OS. Ifølge jobopslag arbejder de fleste dog nu til dags i Linux.

En god ingeniør forstår, i hvilket system det er bedst at implementere et projekt, hvilke værktøjer der bør anvendes, og hvilke potentielle fejl der kan opstå under implementering eller drift.

Cloud-løsninger

Markedspladsen for cloud-teknologier vokser i gennemsnit med 20-25% om året — sådan en infrastruktur gør det muligt at automatisere testoperationer af kode, opbygning af applikationer fra komponenter, og levering af opdateringer til brugerne. En god DevOps-specialist har indsigt i både fuldt cloud-baserede og hybridløsninger.

I de typiske krav til ingeniører nævnes ofte GCP, AWS og Azure.

Herunder falder også kendskab til CI/CD-værktøjer. Jenkins anvendes typisk til kontinuerlig integration, men det kan være nyttigt at afprøve alternativer. Der er mange, eksempelvis Buddy, TeamCity og GitLab CI. Det er også værdifuldt at studere Terraform — et deklarativt værktøj, der hjælper med at opstille og konfigurere infrastruktur i skyen. Og Packer, som er nødvendig for automatisk at oprette OS-billeder..

Orkestreringssystemer og mikrotjenester

Mikrotjenestearkitekturen har mange fordele — stabilitet, mulighed for hurtig skalering, forenkling og genbrug. DevOps-forståelse for, hvordan mikrotjenester fungerer, kan hjælpe med at forudse potentielle problemer.

Kender Docker og Kubernetes indgående. Forstår, hvordan containere fungerer, og hvordan man bygger et system, så man kan slukke for dele af dem uden konsekvenser for det samlede system. For eksempel ved, hvordan man bygger et Kubernetes-kluster ved hjælp af Ansible.

Hvad mere kan en kommende DevOps-specialist prøve?

Der er uendeligt mange værktøjer, som kan være nyttige for en DevOps-ingeniør. Nogen arbejder med orkestrering af projekter, andre bruger det meste af tiden på automatisering af deployment og test, mens tredje gruppe fokuserer på at øge effektiviteten i konfigurationsstyring. Undervejs vil det blive klart, hvor der skal graves, og hvilke projekter der vil være nyttige.

Her er et lille minimum, der kan hjælpe dig i starten:

  • Sæt dig ind i, hvordan Git og GitHub fungerer, hvis du ikke allerede har gjort det. Installer GitLab på din server.
  • Bliv bekendt med markup-sprogene JSON og YAML.
  • Installer og prøv at arbejde med databaser — ikke kun i MySQL, men også NoSQL. Prøv MongoDB.
  • Forstå, hvordan man administrerer konfigurationen af flere servere samtidigt. For eksempel ved hjælp af Ansible.
  • Sørg straks for at opsætte overvågning af belastning og logfiler. Prøv en kombination af Prometheus, Grafana og Alertmanager.
  • Søg efter de bedste løsninger til deployment til forskellige sprog — det er ofte nok at sætte sig ind i det, og så kan du lære under trænings- eller arbejdsprojekter.

Hvorfor du bør begynde at studere DevOps nu

Markedet for DevOps-ingeniører lider under mangel på kvalificerede medarbejdere. Det understøttes af mængden og kvaliteten af jobopslag:

  • I Rusland er der konstant mere end 2.000 ledige stillinger på HeadHunter inden for dette nøgleord.
  • Og kun 1.900 mennesker har sendt deres CV.

Da det at sende et CV ikke nødvendigvis betyder, at man aktivt søger arbejde, viser det sig, at der er to eller tre stillinger per specialist — en situation, der ikke engang findes på det populære marked for webudvikling. Tilsæt endnu flere stillinger fra Habr og Telegram-kanaler — manglen på specialister er enorm.

Hvad er en DevOps-ingeniør, hvad laver han, hvor meget tjener han, og hvordan bliver man det?
Vær opmærksom på lønkravene fra ansøgerne

DevOps-specialister er også eftertragtede i resten af verden — hvis du overvejer at flytte til USA eller Europa, så er der på portalen Glassdoor over 34.000 virksomheder, der søger sådanne specialister. Blandt de hyppige krav er 1-3 års erfaring, evnen til at arbejde med 'cloud'-løsninger og ikke være bange for konsulentopgaver.

På freelancesiden er der betydeligt færre tilbud — DevOps-ingeniører søges primært til faste ansættelser og fuldtidsstillinger.

Hvad er en DevOps-ingeniør, hvad laver han, hvor meget tjener han, og hvordan bliver man det?
Det er svært at finde passende projekter som freelancer, men det er muligt

Den typiske karrierevej for en DevOps-ingeniør kan se således ud:

  • I et halvt år til et år arbejder som systemadministrator i et lille IT-firma. Samtidig studerer vedkommende et sprog, der er velegnet til automatisering.
  • Vedkommende studerer intensivt på kurser, cirka et halvt år.
  • Overgår til et andet job — i et firma, der sælger cloud-løsninger, en filial af en stor virksomhed, der udvikler store projekter. For at sige det enkelt, dertil hvor der er behov for konstant automatisering og implementering. På en startposition drejer det sig om cirka 100.000 rubler.
  • I flere år arbejder og studerer vedkommende aktivt og forøger sin indtægt flere gange.
  • Bliver ekspert i det professionelle fællesskab og skifter til konsulentarbejde. Eller avancerer til systemarkitekt eller IT-direktør.

DevOps er svært. Man skal kombinere færdigheder fra flere erhverv. Blive en person, der er klar til at foreslå forbedringer, hvor andre IT-specialister slet ikke tænker på andet. Der betales godt for dette, men mængden af nødvendig viden er stor.

Hvor meget tjener DevOps

Den gennemsnitlige medianløn ifølge data fra andet kvartal 2019 for DevOps ligger mellem 90.000 og 160.000 rubler. Der er tilbud til lavere priser — hovedsageligt 60–70.000.

Der er konstant tilbud op til 200.000, og man ser stillinger med løn op til 330.000 rubler.

Hvad er en DevOps-ingeniør, hvad laver han, hvor meget tjener han, og hvordan bliver man det?
Blandt specialister inden for DevOps er lønnen højere end for andre. Kilde: Habr.Kariera

DevOps-ingeniører, også begyndere, er i øjeblikket eftertragtede i store banker, virksomheder, cloud-tjenester, handelssystemer og andre organisationer, der passer på deres IT-løsninger.

En fremragende kandidat til en junior stilling med en løn på 60–90.000 vil være en nyuddannet systemadministrator med cirka et års erfaring og en relevant eksamen.
 
Hvad er en DevOps-ingeniør, hvad laver han, hvor meget tjener han, og hvordan bliver man det?
Der findes ingen sådan statistik, men efter oplevelserne får folk med erfaring i Linux ofte højere løn.

Hvad man skal læse og se for at vokse i professionen

For at dykke ned i DevOps-verdenen, prøv flere informationskilder med det samme:

  • Cloud Native Computing Foundation [YouTube, ENG] — mange videoer fra konferencer og uddannelseswebinarer.
  • DevOps Channel [YouTube, RUS] — videoer fra faglige præsentationer på DevOps-konferencen i Rusland.
  • The DevOps Handbook [bog, RUS] — en af de mest populære bøger om DevOps-filosofien. Bogen indeholder generelle principper for metoden og beskriver, hvad man bør fokusere på i første omgang ved arbejde med ethvert projekt.
  • Thomas Limoncelli «The Practice of System and Network Administration» [bog, RUS] — meget teori og principper om, hvordan systemadministration bør være indrettet.
  • Devops Weekly [bog, ENG] — ugentlig oversigt over nyheder om, hvad der sker i DevOps verden over.
  • Devops_deflope [Telegram, RUS] — nyheder fra branchen, konferenceannoncer, links til nye interessante artikler og bøger.
  • Devops_ru [Telegram, RUS] — russisktalende chat, hvor man kan stille spørgsmål og få hjælp til konfigurationer.
  • Devops.com — en stor international side med artikler, webinars, podcasts og kolonner fra de største virksomheder i branchen.
  • Hangops_Ru — et russisktalende samfund af DevOps-ingeniører og sympatisører.
  • De bedste bøger om det sprog, du vil bruge til udvikling.

Hvor man kan lære DevOps

Man kan få struktureret viden gennem kurset «DevOps-ingeniør» i Netology. Du vil lære den komplette cyklus i metoden:

  • Du vil lære at analysere kode og hurtigt bruge versionskontrolværktøjer.
  • Du vil forstå de bedste praksisser for kontinuerlig integration, test og bygning.
  • Du vil lære at styre ændringer i applikationer og automatisere dem.
  • Du vil praktisk lære at bruge værktøjer til konfigurering og styring.
  • Du vil straks vænne dig til at vælge og konfigurere de nødvendige tjenester til overvågning.

Som en bonus får du et kursus i programmering i Python — så du kan løse opgaver hurtigere og lettere. Alt på praktisk niveau — vi bruger AWS, GCP eller Azure.
Dette er tilstrækkeligt til at forvandle en ny ingeniør eller systemadministrator til en eftertragtet DevOps og behageligt hæve din pris på arbejdsmarkedet.

Hvad er en DevOps-ingeniør, hvad laver han, hvor meget tjener han, og hvordan bliver man det?

Kilde: habr.com

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster