Cine este inginer DevOps, ce face, cât câștigă și cum să devină unul

Inginerii DevOps sunt specialiști multidisciplinari care știu să automatizeze procesele și știu cum funcționează dezvoltatorii, QA și managerii. Ei știu să programeze, să stăpânească rapid instrumente complexe și nu sunt în pierdere atunci când se confruntă cu o sarcină necunoscută. Sunt puțini ingineri DevOps - sunt dispuși să le plătească 200-300 de mii de ruble, dar există încă o mulțime de posturi vacante.

Dmitry Kuzmin explică ce anume face DevOps și ce trebuie să studiezi pentru a aplica pentru o astfel de poziție. Bonus: linkuri importante către cărți, videoclipuri, canale și comunitatea profesională.

Ce face un inginer DevOps?

Într-o situație DevOps, este important să nu confundați termenii. Cert este că DevOps nu este un domeniu specific de activitate, ci o filozofie profesională. Este o metodologie care ajută dezvoltatorii, testerii și administratorii de sistem să lucreze mai rapid și mai eficient prin automatizare și fluiditate.

În consecință, un inginer DevOps este un specialist care implementează această metodologie în procesul de lucru:

  • În etapa de planificare, un inginer DevOps ajută la deciderea ce arhitectură va folosi aplicația, cum se va scala și alege un sistem de orchestrare.
  • Apoi instalează servere, verifică și încărcă codul automat și verifică mediul.
  • Apoi automatizează testarea și rezolvă problemele de implementare.
  • După lansare, este important să colectați feedback de la utilizatori și să implementați îmbunătățiri. DevOps se asigură că utilizatorii nu observă aceste îmbunătățiri, iar procesul de actualizare este continuu.
  • Și, în același timp, rezolvă zeci de probleme care ajută la îmbunătățirea sistemului de lucru al dezvoltatorilor, QA, administratorilor de sistem și managerilor.

Tot ce este scris mai sus se întâmplă în proiecte care sunt aproape de ideal. În lumea reală, trebuie să începeți un proiect în care planificarea a fost ratată, arhitectura a fost greșită și ați început să vă gândiți la automatizare când toate proiectele s-au oprit. Și înțelegerea tuturor acestor probleme, rezolvarea lor și ca totul să funcționeze este o abilitate cheie a unui specialist DevOps.

Există confuzie pe piața talentelor. Uneori, o companie caută ingineri DevOps pentru postul de inginer de sisteme, inginer de construcție sau altcineva. Responsabilitățile se schimbă și în funcție de dimensiunea companiei și de direcție - undeva se caută o persoană pentru consultanță, undeva li se cere să automatizeze totul, iar undeva li se cere să îndeplinească funcții avansate ale unui administrator de sistem care știe să programeze.

Ce ai nevoie pentru a începe în profesie

Intrarea în profesie necesită pregătire prealabilă. Nu veți putea să urmați pur și simplu cursuri de la zero, fără să înțelegeți nimic despre IT și să învățați la nivel de juniori. Este nevoie de cunoștințe tehnice:

  • Ideal dacă lucrați timp de șase luni sau mai mult ca administrator de sistem, specialist în operațiuni sau testare. Sau cel puțin să aveți o idee despre cum pornesc aplicațiile, în ce mediu se pot dezvolta și ce să faceți dacă vedeți o eroare. Dacă nu aveți experiență de lucru, urmați orice curs despre administrarea Linux, repetând tot ce se întâmplă pe mașina dvs. de acasă.
  • Înțelegeți cum funcționează tehnologiile de rețea - învățați să instalați, să configurați și să gestionați rețelele locale și extinse.
  • Vedeți cum și ce funcționează programarea - scrieți câteva scripturi în Python sau Go, încercați să înțelegeți principiile OOP (Object-Oriented Programming), citiți despre ciclul general de dezvoltare a produsului.
  • Cunoașterea limbii engleze tehnice va fi utilă - nu este necesar să comunicați pe subiecte libere, este suficient să puteți citi documentația și interfețele.

Nu este necesar să cunoașteți totul în detaliu; pentru a începe să învățați DevOps, este suficient un nivel minim de pregătire. Dacă aveți o astfel de experiență tehnică, încercați să vă înscrieți la cursuri.

Ce ar trebui să știe DevOps

Un bun inginer DevOps este un specialist multidisciplinar cu o perspectivă foarte largă. Pentru a lucra cu succes, va trebui să înțelegeți mai multe domenii IT deodată.

desen

DevOps va scrie un script care va ajuta dezvoltatorii să instaleze codul pe server. Va crea un program care testează capacitatea de răspuns a bazelor de date „din mers”. Va scrie o aplicație pentru controlul versiunilor. În cele din urmă, observați pur și simplu o potențială problemă de dezvoltare care poate apărea pe server.

Un specialist DevOps puternic cunoaște mai multe limbi potrivite pentru automatizare. Nu le înțelege pe deplin, dar poate scrie rapid un program mic sau poate citi codul altcuiva. Dacă nu ați mai întâlnit niciodată dezvoltare, începeți cu Python - are o sintaxă simplă, este ușor să lucrați cu tehnologii cloud și există o mulțime de documentație și biblioteci.

Sisteme de operare

Este imposibil să cunoști toate capacitățile fiecărei versiuni a fiecărui sistem - ai putea petrece mii de ore pe un astfel de antrenament și nu ar fi de niciun folos. În schimb, un DevOps bun înțelege principiile generale de lucru pe orice sistem de operare. Deși, judecând după mențiunile din posturile vacante, majoritatea lucrează acum în Linux.

Un inginer bun înțelege în ce sistem este cel mai bine implementat un proiect, ce instrumente să folosească și ce erori potențiale pot apărea în timpul implementării sau funcționării.

nori

Piața tehnologiei cloud creste în medie cu 20-25% pe an - o astfel de infrastructură vă permite să automatizați operațiunile de testare a codului, asamblarea aplicațiilor din componente și furnizarea de actualizări utilizatorilor. Un DevOps bun înțelege atât soluțiile complet cloud, cât și soluțiile hibride.

Cerințele standard pentru ingineri includ de obicei GCP, AWS și Azure.

Aceasta include competența în instrumentele CI/CD. De obicei, Jenkins este folosit pentru integrare continuă, dar analogii merită încercați. Există multe dintre ele, de exemplu Buddy, TeamCity și Gitlab CI. Va fi util să studiați Terraform - este un instrument declarativ care vă ajută să configurați și să configurați de la distanță infrastructura în cloud. ȘI Packer, care este necesar pentru a crea automat imagini OS.

Sisteme de orchestrare și microservicii

Arhitectura de microservicii are multe avantaje - stabilitate, capacitate de scalare rapidă, simplificare și reutilizare. DevOps înțelege cum funcționează microserviciile și poate anticipa potențialele probleme.

Cunoaște temeinic Docker și Kubernetes. Înțelege cum funcționează containerele, cum să construiești un sistem astfel încât să poți dezactiva unele dintre ele fără consecințe pentru întregul sistem. De exemplu, el poate construi un cluster Kubernetes folosind Ansible

Ce altceva ar trebui să încerce viitorul DevOps?

Lista instrumentelor care pot fi utile unui inginer DevOps este nesfârșită. Unii lucrează la orchestrarea proiectelor, alții își petrec cea mai mare parte a timpului automatizând implementarea și testarea, iar alții îmbunătățesc eficiența în gestionarea configurației. În acest proces, va deveni clar unde să sape și ce proiecte vor fi utile.

Iată un alt minim minim care va ajuta la început:

  • Înțelegeți cum funcționează Git și Github dacă nu ați făcut-o deja. Instalați GitLab pe serverul dvs.
  • Familiarizați-vă cu limbajele de marcare JSON și YAML.
  • Instalați și încercați să lucrați în baze de date - nu numai MySQL, ci și NoSQL. Încercați MongoDB.
  • Înțelegeți cum să gestionați configurația mai multor servere simultan. De exemplu, folosind Ansible.
  • Configurați imediat monitorizarea sarcinii și jurnalele. Încercați combinația Prometheus, Grafana, Alertmanager.
  • Căutați cele mai bune soluții de implementare pentru diferite limbi - trebuie doar să le cunoașteți, să le implementați și să le înțelegeți într-un proiect de formare sau de lucru.

De ce ar trebui să începi să înveți DevOps acum

Există o lipsă de personal pe piață pentru inginerii DevOps. Acest lucru este confirmat condiționat de cantitatea și calitatea posturilor vacante:

  • În Rusia, numai pe HeadHunter, peste 2 mii de locuri de muncă sunt disponibile în mod constant pentru acest cuvânt cheie.
  • Și doar 1 de persoane și-au postat CV-urile.

Având în vedere că postarea unui CV nu înseamnă căutarea activă a unui loc de muncă, se dovedește că pentru un specialist sunt două sau chiar trei posturi vacante - această situație nu există nici măcar pe piața populară de dezvoltare web. Adaugă aici mai multe posturi vacante de pe canalele Habr și Telegram - deficitul de specialiști este uriaș.

Cine este inginer DevOps, ce face, cât câștigă și cum să devină unul
Acordați atenție cerințelor salariale ale solicitanților

DevOps nu este mai puțin solicitat în lume - dacă aveți de gând să vă mutați în SUA sau Europa, atunci numai pe portal Glassdoor Peste 34 de mii de companii caută astfel de specialiști. Cerințele frecvente includ 1–3 ani de experiență, capacitatea de a lucra cu cloud și să nu vă fie frică de funcțiile de consultanță.

Există de multe ori mai puține oferte pentru freelancing - inginerii DevOps caută în principal personal și posturi cu normă întreagă.

Cine este inginer DevOps, ce face, cât câștigă și cum să devină unul
Găsirea unui proiect independent potrivit este dificilă, dar este posibil

Calea de carieră convențională a unui inginer DevOps poate fi imaginată cam așa:

  • Lucrează ca administrator de sistem într-o mică companie IT de șase luni până la un an. În același timp, studiază un limbaj potrivit pentru automatizare.
  • Învață intens pe cursuri timp de aproximativ șase luni.
  • Se mută la un alt loc de muncă - la o companie care vinde soluții cloud, o ramură a unei mari corporații, dezvoltatorilor de proiecte mari. Mai simplu spus, acolo unde este nevoie de automatizare și implementare constantă. La poziția inițială este de aproximativ 100 de mii de ruble.
  • De câțiva ani lucrează și studiază activ, crescându-și veniturile de mai multe ori.
  • Devine expert în comunitatea profesională și trece în consultanță. Sau devine arhitect de sistem sau director IT.

DevOps este greu. Trebuie să combinați abilitățile mai multor profesii simultan. Deveniți o persoană care este gata să ofere îmbunătățiri acolo unde alți specialiști IT nici măcar nu se gândesc la nimic altceva. Ei plătesc foarte mult pentru asta, dar necesită și o cantitate mare de cunoștințe.

Cât câștigă DevOps?

Potrivit datelor pentru al doilea trimestru al anului 2019, salariul mediu mediu pentru devop este între 90 și 160 de mii de ruble. Există oferte mai ieftine - mai ales 60-70 mii.

Există în mod constant oferte de până la 200 de mii și există posturi vacante cu salarii de până la 330 de mii de ruble.

Cine este inginer DevOps, ce face, cât câștigă și cum să devină unul
Printre profesioniștii în operațiuni, DevOps este plătit mai mult decât alții. Sursă: Habr.Cariera

Inginerii DevOps, inclusiv începătorii, sunt acum necesari în băncile mari, corporații, serviciile cloud, sistemele de tranzacționare și alte organizații cărora le pasă să-și mențină soluțiile IT.

Un candidat excelent pentru un post vacant junior cu un salariu de 60–90 de mii ar fi un administrator de sistem debutant cu aproximativ un an de experiență și o diplomă de specialitate.
 
Cine este inginer DevOps, ce face, cât câștigă și cum să devină unul
Nu există astfel de statistici, dar se pare că oamenii care au experiență în Linux sunt plătiți mai mult

Ce să urmărești și să citești pentru a crește în profesia ta

Pentru a vă scufunda în lumea DevOps, încercați mai multe surse de informații:

  • Fundația Cloud Native Computing [YouTube, ENG] - multe videoclipuri de la conferințe și seminarii web educaționale.
  • Canalul DevOps [YouTube, RUS] - rapoarte video de la conferința profesională DevOps din Rusia.
  • Manualul DevOps [carte, RUS] este una dintre cele mai populare cărți despre filozofia DevOps. Cartea conține principii generale ale metodologiei; spune la ce să acordați atenție în primul rând atunci când lucrați la orice proiect.
  • Thomas Limoncelli „Practica administrării sistemelor și rețelelor” [carte, RUS] - o mulțime de teorii și principii despre modul în care ar trebui să fie structurată administrarea sistemului.
  • Devops Săptămânal [carte, ENG] - o revizuire săptămânală a știrilor despre ceea ce se întâmplă în DevOps în întreaga lume.
  • Devops_deflope [Telegram, RUS] - știri din industrie, anunțuri de conferințe, link-uri către articole și cărți noi interesante.
  • Devops_ru [Telegram, RUS] - Chat în limba rusă unde poți cere sfaturi și ajutor pentru configurații.
  • Devops.com este un mare site internațional cu articole, seminarii web, podcasturi și rubrici de la cele mai mari companii din industrie.
  • Hangops_Ru — Comunitate de limbă rusă de ingineri și simpatizanți DevOps.
  • Cele mai bune cărți pentru limba pe care o vei folosi pentru dezvoltare.

Unde să studiezi DevOps

Puteți obține cunoștințe structurate la curs „Inginer DevOps" în Netologie. Veți învăța întregul ciclu de metodologie:

  • Aflați cum să analizați codul și să utilizați rapid instrumentele de control al versiunilor.
  • Înțelegeți cele mai bune practici pentru integrarea, testarea și construirea continuă.
  • Învățați să gestionați și să automatizați modificările aplicațiilor.
  • Începeți-vă cu instrumentele de configurare și management.
  • Obișnuiți-vă imediat să selectați și să configurați serviciile necesare pentru monitorizare.

Obțineți un curs de programare Python ca bonus - veți rezolva problemele și mai repede și mai ușor. Totul este practic - folosim AWS, GCP sau Azure.
Acest lucru este suficient pentru a transforma un inginer începător sau un administrator de sistem într-un DevOps căutat și pentru a vă crește plăcut prețul pe piața muncii.

Cine este inginer DevOps, ce face, cât câștigă și cum să devină unul

Sursa: www.habr.com

Adauga un comentariu