Wie is een DevOps-ingenieur, wat doet hij, hoeveel verdient hij en hoe kan hij er één worden?

DevOps engineers zijn multidisciplinaire specialisten die processen weten te automatiseren en weten hoe ontwikkelaars, QA en managers werken. Ze weten hoe ze moeten programmeren, beheersen complexe tools snel en staan ​​niet voor een onbekende taak. Er zijn weinig DevOps-ingenieurs - ze zijn bereid ze 200-300 duizend roebel te betalen, maar er zijn nog steeds veel vacatures.

Dmitry Kuzmin legt uit wat DevOps precies doet en wat je moet studeren om op zo’n functie te solliciteren. Bonus: belangrijke links naar boeken, video's, kanalen en professionele community.

Wat doet een DevOps engineer?

In een DevOps-situatie is het belangrijk om de termen niet te verwarren. Feit is dat DevOps geen specifiek werkterrein is, maar een professionele filosofie. Het is een methodiek die ontwikkelaars, testers en systeembeheerders helpt sneller en efficiënter te werken door middel van automatisering en naadloosheid.

Een DevOps-ingenieur is dan ook een specialist die deze methodiek in het werkproces implementeert:

  • In de planningsfase helpt een DevOps-ingenieur beslissen welke architectuur de applicatie zal gebruiken, hoe deze zal worden geschaald, en bij het kiezen van een orkestratiesysteem.
  • Vervolgens zet hij servers op, controleert en uploadt automatisch code en controleert de omgeving.
  • Vervolgens automatiseert het het testen en lost het implementatieproblemen op.
  • Na release is het belangrijk om feedback van gebruikers te verzamelen en verbeteringen door te voeren. DevOps zorgt ervoor dat gebruikers deze verbeteringen niet opmerken en dat het updateproces continu verloopt.
  • En tegelijkertijd lost het tientallen problemen op die het werksysteem van ontwikkelaars, QA, systeembeheerders en managers helpen verbeteren.

Alles wat hierboven is geschreven, gebeurt in projecten die bijna ideaal zijn. In de echte wereld moet je een project starten waarbij de planning werd gemist, de architectuur verkeerd was en je aan automatisering begon te denken toen alle projecten stopten. En al deze problemen begrijpen, oplossen en alles laten werken is een sleutelvaardigheid van een DevOps specialist.

Er is verwarring op de talentmarkt. Soms is een bedrijf op zoek naar DevOps-ingenieurs voor de functie van systeemingenieur, bouwingenieur of iemand anders. De verantwoordelijkheden veranderen ook afhankelijk van de grootte van het bedrijf en de richting - ergens zijn ze op zoek naar een persoon voor advies, ergens wordt hen gevraagd alles te automatiseren, en ergens moeten ze geavanceerde functies uitvoeren van een systeembeheerder die weet hoe te programmeren.

Wat je nodig hebt om te starten in het beroep

Het betreden van het beroep vereist een voorbereidende voorbereiding. Je kunt niet zomaar een cursus helemaal opnieuw volgen, zonder iets van IT te begrijpen, en op juniorniveau leren. Technische achtergrond vereist:

  • Ideaal als je zes maanden of langer werkt als systeembeheerder, operations of testspecialist. Of in ieder geval een idee hebben van hoe applicaties starten, in welke omgeving ze zich kunnen ontwikkelen en wat je moet doen als je een fout ziet. Als je geen werkervaring hebt, volg dan een cursus over Linux-beheer, waarbij je alles herhaalt wat er op je thuiscomputer gebeurt.
  • Begrijp hoe netwerktechnologieën werken - leer lokale en WAN-netwerken installeren, configureren en beheren.
  • Zie hoe en wat programmeren werkt - schrijf een paar scripts in Python of Go, probeer de principes van OOP (Object-Oriented Programming) te begrijpen, lees over de algemene productontwikkelingscyclus.
  • Kennis van technisch Engels zal nuttig zijn - het is niet nodig om over gratis onderwerpen te communiceren, het is voldoende om documentatie en interfaces te kunnen lezen.

Het is niet nodig om alles in detail te kennen; om DevOps te leren, is een minimaal trainingsniveau voldoende. Als je zo'n technische achtergrond hebt, probeer dan cursussen te volgen.

Wat DevOps moet weten

Een goede DevOps engineer is een multidisciplinaire specialist met een zeer brede blik. Om succesvol te kunnen werken, moet u meerdere IT-gebieden tegelijk begrijpen.

ontwerp

DevOps schrijft een script waarmee ontwikkelaars code op de server kunnen installeren. Zal een programma maken dat de responsiviteit van databases “on the fly” test. Zal een applicatie schrijven voor versiebeheer. Merk ten slotte eenvoudigweg een potentieel ontwikkelingsprobleem op dat op de server kan verschijnen.

Een sterke DevOps specialist kent meerdere talen die geschikt zijn voor automatisering. Hij begrijpt ze niet helemaal, maar hij kan snel een klein programma schrijven of de code van iemand anders lezen. Als je nog nooit eerder met ontwikkeling bent geconfronteerd, begin dan met Python - het heeft een eenvoudige syntaxis, het is gemakkelijk om met cloudtechnologieën te werken en er is veel documentatie en bibliotheken.

Besturingssystemen

Het is onmogelijk om alle mogelijkheden van elke versie van elk systeem te kennen; je zou duizenden uren aan dergelijke training kunnen besteden en het zou nutteloos zijn. In plaats daarvan begrijpt een goede DevOps de algemene principes van het werken op elk besturingssysteem. Hoewel, afgaande op de vermeldingen in vacatures, het merendeel inmiddels onder Linux werkt.

Een goede ingenieur begrijpt in welk systeem het beste een project kan worden geïmplementeerd, welke tools hij moet gebruiken en welke potentiële fouten kunnen optreden tijdens de implementatie of exploitatie.

wolken

Markt voor cloudtechnologie groeien gemiddeld met 20-25% per jaar - met een dergelijke infrastructuur kunt u de activiteiten van het testen van code, het samenstellen van applicaties uit componenten en het leveren van updates aan gebruikers automatiseren. Een goede DevOps begrijpt zowel volledig cloud- als hybride oplossingen.

De standaardvereisten voor engineers omvatten doorgaans GCP, AWS en Azure.

Dit omvat vaardigheid in CI/CD-tools. Meestal wordt Jenkins gebruikt voor continue integratie, maar analogen zijn het proberen waard. Er zijn er veel, bijvoorbeeld Buddy, TeamCity en Gitlab CI. Het zal nuttig zijn om Terraform te bestuderen - het is een declaratieve tool die u helpt op afstand infrastructuur in de cloud op te zetten en te configureren. EN Packer, die nodig is om automatisch OS-images te maken.

Orkestratiesystemen en microservices

Microservice-architectuur heeft veel voordelen: stabiliteit, mogelijkheid om snel te schalen, vereenvoudiging en hergebruik. DevOps begrijpt hoe microservices werken en kan anticiperen op potentiële problemen.

Kent Docker en Kubernetes door en door. Begrijpt hoe containers werken, hoe u een systeem kunt bouwen zodat u sommige ervan kunt uitschakelen zonder gevolgen voor het algehele systeem als geheel. Met Ansible kan hij bijvoorbeeld een Kubernetes-cluster bouwen

Wat moeten de toekomstige DevOps nog meer proberen?

De lijst met tools die nuttig kunnen zijn voor een DevOps-engineer is eindeloos. Sommigen werken aan projectorkestratie, anderen besteden het grootste deel van hun tijd aan het automatiseren van implementatie en testen, en anderen verbeteren de efficiëntie van configuratiebeheer. Tijdens het proces zal duidelijk worden waar te graven en welke projecten nuttig zullen zijn.

Hier is nog een klein minimum dat in het begin zal helpen:

  • Begrijp hoe Git en Github werken als je dat nog niet hebt gedaan. Installeer GitLab op uw server.
  • Maak kennis met de opmaaktalen JSON en YAML.
  • Installeer en probeer in databases te werken - niet alleen MySQL, maar ook NoSQL. Probeer MongoDB.
  • Begrijp hoe u de configuratie van meerdere servers tegelijk kunt beheren. Gebruik bijvoorbeeld Ansible.
  • Stel direct belastingmonitoring en logs in. Probeer de combinatie Prometheus, Grafana, Alertmanager.
  • Zoek naar de beste oplossingen voor implementatie voor verschillende talen - u hoeft ze alleen maar te leren kennen, implementeren en begrijpen tijdens een trainings- of werkproject.

Waarom je nu DevOps moet leren

Er is een tekort aan personeel op de markt voor DevOps engineers. Dit wordt voorwaardelijk bevestigd door de kwantiteit en kwaliteit van de vacatures:

  • Alleen al in Rusland zijn er op HeadHunter voortdurend meer dan tweeduizend banen beschikbaar voor dit zoekwoord.
  • En slechts 1 mensen plaatsten hun cv.

Gezien het feit dat het plaatsen van een cv niet betekent dat je actief op zoek gaat naar een baan, blijkt dat er voor één specialist twee of zelfs drie vacatures zijn - deze situatie bestaat zelfs niet op de populaire markt voor webontwikkeling. Voeg hier meer vacatures toe van Habr- en Telegram-kanalen - het tekort aan specialisten is enorm.

Wie is een DevOps-ingenieur, wat doet hij, hoeveel verdient hij en hoe kan hij er één worden?
Let op de salarisvereisten van sollicitanten

Er is wereldwijd niet minder vraag naar DevOps - als u naar de VS of Europa gaat verhuizen, dan alleen op de portal Glassdoor Ruim 34 duizend bedrijven zijn op zoek naar dergelijke specialisten. Veel voorkomende vereisten zijn onder meer 1-3 jaar ervaring, het vermogen om met clouds te werken en niet bang zijn voor adviesfuncties.

Er zijn vele malen minder aanbiedingen voor freelancen - DevOps-ingenieurs zijn vooral op zoek naar personeel en fulltime posities.

Wie is een DevOps-ingenieur, wat doet hij, hoeveel verdient hij en hoe kan hij er één worden?
Het vinden van een geschikt freelance project is lastig, maar het is wel mogelijk

Het conventionele carrièrepad van een DevOps-ingenieur kan ongeveer als volgt worden voorgesteld:

  • Hij werkt nu een half jaar tot een jaar als systeembeheerder bij een klein IT-bedrijf. Tegelijkertijd studeert hij een taal die geschikt is voor automatisering.
  • Ongeveer zes maanden lang studeert hij intensief aan cursussen.
  • Verhuist naar een andere baan - naar een bedrijf dat cloudoplossingen verkoopt, een tak van een groot bedrijf, aan ontwikkelaars van grote projecten. Simpel gezegd: daar waar behoefte is aan voortdurende automatisering en implementatie. In de beginpositie is het ongeveer 100 duizend roebel.
  • Hij werkt en studeert al een aantal jaren actief, waardoor zijn inkomen verschillende keren toeneemt.
  • Wordt een expert in de professionele gemeenschap en gaat over op advies. Of groeit door tot systeemarchitect of IT-directeur.

DevOps is moeilijk. Je moet de vaardigheden van verschillende beroepen tegelijk combineren. Word een persoon die klaar staat om verbetering te bieden waar andere IT-specialisten niet eens aan iets anders denken. Daar betalen ze veel voor, maar er is ook veel kennis voor nodig.

Hoeveel verdienen DevOps?

Volgens de gegevens voor het tweede kwartaal van 2019 ligt het gemiddelde gemiddelde salaris voor devops tussen de 90 en 160 duizend roebel. Er zijn goedkopere aanbiedingen - meestal 60-70 duizend.

Er zijn voortdurend aanbiedingen tot 200 duizend, en er zijn vacatures met salarissen tot 330 duizend roebel.

Wie is een DevOps-ingenieur, wat doet hij, hoeveel verdient hij en hoe kan hij er één worden?
Onder operationele professionals wordt DevOps hoger betaald dan anderen. Bron: Habr.Carrière

DevOps-ingenieurs, inclusief beginners, zijn nu nodig bij grote banken, bedrijven, clouddiensten, handelssystemen en andere organisaties die zich zorgen maken over het onderhouden van hun IT-oplossingen.

Een uitstekende kandidaat voor een junior vacature met een salaris van 60-90 duizend zou een beginnende systeembeheerder zijn met ongeveer een jaar ervaring en een gespecialiseerd diploma.
 
Wie is een DevOps-ingenieur, wat doet hij, hoeveel verdient hij en hoe kan hij er één worden?
Dergelijke statistieken bestaan ​​niet, maar het lijkt erop dat mensen die ervaring hebben met Linux meer betaald krijgen

Wat je moet kijken en lezen om te groeien in je beroep

Probeer verschillende informatiebronnen om in de wereld van DevOps te duiken:

  • Stichting Cloud Native Computing [YouTube, ENG] - veel video's van conferenties en educatieve webinars.
  • DevOps-kanaal [YouTube, RUS] - videoverslagen van de professionele DevOps-conferentie in Rusland.
  • Het DevOps-handboek [boek, RUS] is een van de populairste boeken over de DevOps-filosofie. Het boek bevat algemene principes van de methodologie; het vertelt waar u allereerst op moet letten bij het werken aan een project.
  • Thomas Limoncelli "De praktijk van systeem- en netwerkbeheer" [boek, RUS] - veel theorie en principes over hoe systeembeheer moet worden gestructureerd.
  • Devops wekelijks [boek, NL] - een wekelijks overzicht van nieuws over wat er wereldwijd gebeurt in DevOps.
  • Devops_deflope [Telegram, RUS] - branchenieuws, aankondigingen van conferenties, links naar nieuwe interessante artikelen en boeken.
  • Devops_nl [Telegram, RUS] - Russischtalige chat waar u om advies kunt vragen en hulp kunt vragen bij configuraties.
  • Devops.com is een grote internationale site met artikelen, webinars, podcasts en columns van de grootste bedrijven in de branche.
  • Hangops_Ru — Russischtalige gemeenschap van DevOps-ingenieurs en sympathisanten.
  • De beste boeken voor de taal die u gaat gebruiken voor ontwikkeling.

Waar kun je DevOps studeren?

Je kunt gestructureerde kennis opdoen tijdens de cursus “DevOps-ingenieur" in Netologie. Je leert de volledige cyclus van methodologie:

  • Leer hoe u code analyseert en snel versiebeheertools gebruikt.
  • Begrijp de best practices voor continue integratie, testen en bouwen.
  • Leer applicatiewijzigingen beheren en automatiseren.
  • Ga aan de slag met configuratie- en beheertools.
  • Wen er aan om onmiddellijk de benodigde services voor monitoring te selecteren en configureren.

Ontvang als bonus een Python-programmeercursus - je lost problemen nog sneller en gemakkelijker op. Alles is praktisch: we gebruiken AWS, GCP of Azure.
Dit is voldoende om van een beginnende engineer of systeembeheerder een gewilde DevOps te maken en je prijskaartje op de arbeidsmarkt aangenaam te verhogen.

Wie is een DevOps-ingenieur, wat doet hij, hoeveel verdient hij en hoe kan hij er één worden?

Bron: www.habr.com

Voeg een reactie