Kas yra „DevOps“ inžinierius, ką jis veikia, kiek uždirba ir kaip juo tapti

„DevOps“ inžinieriai yra įvairių sričių specialistai, kurie žino, kaip automatizuoti procesus ir žino, kaip dirba kūrėjai, kokybės užtikrinimas ir vadovai. Jie moka programuoti, greitai įsisavina sudėtingus įrankius ir nepalieka nuostolių, kai susiduria su nepažįstama užduotimi. „DevOps“ inžinierių yra nedaug – jie nori jiems mokėti 200–300 tūkstančių rublių, tačiau laisvų darbo vietų vis dar yra daug.

Dmitrijus Kuzminas paaiškina, ką tiksliai veikia „DevOps“ ir ką reikia mokytis norint pretenduoti į tokias pareigas. Premija: svarbios nuorodos į knygas, vaizdo įrašus, kanalus ir profesinę bendruomenę.

Ką veikia „DevOps“ inžinierius?

„DevOps“ situacijoje svarbu nepainioti terminų. Faktas yra tas, kad „DevOps“ nėra konkreti veiklos sritis, o profesionali filosofija. Tai metodika, padedanti kūrėjams, testuotojams ir sistemų administratoriams dirbti greičiau ir efektyviau, nes tai yra automatizuota ir sklandi.

Atitinkamai, „DevOps“ inžinierius yra specialistas, diegiantis šią metodiką darbo procese:

  • Planavimo etape „DevOps“ inžinierius padeda nuspręsti, kokią architektūrą programa naudos, kaip jos mastelis bus, ir pasirinkti orkestravimo sistemą.
  • Tada jis nustato serverius, automatizuotą kodo tikrinimą ir įkėlimą bei aplinkos tikrinimą.
  • Tada jis automatizuoja testavimą ir išsprendžia diegimo problemas.
  • Po išleidimo svarbu surinkti vartotojų atsiliepimus ir įdiegti patobulinimus. „DevOps“ užtikrina, kad vartotojai nepastebėtų šių patobulinimų ir kad atnaujinimo procesas būtų nuolatinis.
  • Ir tuo pačiu išsprendžia dešimtis problemų, kurios padeda tobulinti kūrėjų, kokybės užtikrinimo, sistemų administratorių ir vadovų darbo sistemą.

Viskas, kas parašyta aukščiau, vyksta projektuose, kurie yra artimi idealui. Realiame pasaulyje jūs turite pradėti projektą, kai planavimas buvo praleistas, architektūra buvo neteisinga ir jūs pradėjote galvoti apie automatizavimą, kai visi projektai sustojo. O visų šių problemų supratimas, jų sprendimas ir viskas, kad viskas veiktų, yra pagrindinis „DevOps“ specialisto įgūdis.

Talentų rinkoje tvyro sumaištis. Kartais įmonė ieško „DevOps“ inžinierių sistemų inžinieriaus, statybos inžinieriaus ar kito asmens pareigoms. Atsakomybės taip pat kinta priklausomai nuo įmonės dydžio ir krypties – kai kur ieškoma žmogaus konsultacijai, kai kur prašoma viską automatizuoti, o kai kur reikalaujama atlikti pažangias, programuoti išmanančio sistemos administratoriaus funkcijas.

Ko reikia norint pradėti profesiją

Norint pradėti profesiją, reikia išankstinio pasiruošimo. Negalėsite tiesiog lankyti kursų nuo nulio, nieko nesuprasdami apie IT ir mokytis iki jaunesniojo lygio. Reikalingas techninis išsilavinimas:

  • Idealiai tinka, jei dirbate šešis mėnesius ar ilgiau sistemos administratoriumi, operacijų ar testavimo specialistu. Arba bent jau turėkite idėją, kaip paleidžiamos programos, kokioje aplinkoje jos gali vystytis ir ką daryti, jei matote klaidą. Jei neturite darbo patirties, eikite į bet kurį Linux administravimo kursą, kartodami viską, kas vyksta jūsų namų kompiuteryje.
  • Supraskite, kaip veikia tinklo technologijos – išmokite įdiegti, konfigūruoti ir valdyti vietinius ir plačiuosius tinklus.
  • Pažiūrėkite, kaip ir koks programavimas veikia – parašykite keletą scenarijų Python ar Go, pabandykite perprasti OOP (Object-Oriented Programming) principus, skaitykite apie bendrą produkto kūrimo ciklą.
  • Techninės anglų kalbos žinios pravers – nebūtina bendrauti laisvomis temomis, pakanka mokėti skaityti dokumentaciją ir sąsajas.

Nebūtina visko detaliai žinoti, norint pradėti mokytis DevOps, pakanka minimalaus mokymo lygio. Jei turite tokį techninį išsilavinimą, pabandykite užsiregistruoti į kursus.

Ką „DevOps“ turėtų žinoti

Geras „DevOps“ inžinierius yra įvairių sričių specialistas, turintis labai platų požiūrį. Norėdami sėkmingai dirbti, turėsite iš karto suprasti kelias IT sritis.

Vystymasis

„DevOps“ parašys scenarijų, kuris padės kūrėjams įdiegti kodą serveryje. Sukurs programą, kuri patikrins duomenų bazių reagavimą „skraidydamas“. Parašys paraišką versijų kontrolei. Galiausiai tiesiog pastebėkite galimą plėtros problemą, kuri gali atsirasti serveryje.

Stiprus DevOps specialistas moka kelias automatizavimui tinkamas kalbas. Jis jų nesupranta iki galo, bet gali greitai parašyti nedidelę programą arba perskaityti kažkieno kodą. Jei dar niekada nesusidūrėte su kūrimu, pradėkite nuo Python – jis turi paprastą sintaksę, lengva dirbti su debesų technologijomis, yra daug dokumentacijos ir bibliotekų.

OS

Neįmanoma žinoti visų kiekvienos sistemos versijos galimybių – tokiam mokymui galėtumėte skirti tūkstančius valandų ir iš to nebūtų jokios naudos. Vietoj to, geras „DevOps“ supranta bendruosius darbo su bet kuria OS principus. Nors, sprendžiant iš paminėjimų apie laisvas darbo vietas, dauguma dabar dirba Linux sistemoje.

Geras inžinierius supranta, kurioje sistemoje geriausia diegti projektą, kokius įrankius naudoti ir kokios galimos klaidos gali atsirasti diegimo ar veikimo metu.

Debesys

Debesų technologijų rinka auga vidutiniškai 20-25% per metus - tokia infrastruktūra leidžia automatizuoti kodo testavimo, programų surinkimo iš komponentų ir atnaujinimų pateikimo vartotojams operacijas. Geras „DevOps“ supranta ir visiškai debesų, ir hibridinius sprendimus.

Standartiniai reikalavimai inžinieriams paprastai apima GCP, AWS ir Azure.

Tai apima CI / CD įrankių įgūdžius. Paprastai Jenkins naudojamas nuolatinei integracijai, tačiau verta pabandyti analogus. Jų yra daug, pavyzdžiui, Buddy, TeamCity ir Gitlab CI. Bus naudinga studijuoti Terraform – tai deklaratyvus įrankis, padedantis nuotoliniu būdu nustatyti ir konfigūruoti infrastruktūrą debesyse. IR Pakeris, reikalingas automatiškai sukurti OS vaizdus.

Orkestravimo sistemos ir mikropaslaugos

„Microservice“ architektūra turi daug privalumų – stabilumą, galimybę greitai keisti mastelį, supaprastinimą ir pakartotinį naudojimą. „DevOps“ supranta, kaip veikia mikropaslaugos, ir gali numatyti galimas problemas.

Puikiai pažįsta Docker ir Kubernetes. Supranta, kaip veikia konteineriai, kaip sukurti sistemą, kad kai kuriuos iš jų galėtumėte išjungti be pasekmių visai sistemai. Pavyzdžiui, jis gali sukurti Kubernetes klasterį naudodamas Ansible

Ką dar turėtų išbandyti būsimi „DevOps“?

Įrankių, kurie gali būti naudingi „DevOps“ inžinieriui, sąrašas yra begalinis. Kai kurie dirba su projekto orkestravimu, kiti didžiąją laiko dalį praleidžia automatizuodami diegimą ir testavimą, o kiti pagerina konfigūracijos valdymo efektyvumą. Proceso metu paaiškės, kur kasti ir kokie projektai bus naudingi.

Štai dar vienas mažas minimumas, kuris padės pradžioje:

  • Supraskite, kaip veikia „Git“ ir „Github“, jei dar to nepadarėte. Įdiekite „GitLab“ savo serveryje.
  • Susipažinkite su JSON ir YAML žymėjimo kalbomis.
  • Įdiekite ir pabandykite dirbti duomenų bazėse – ne tik MySQL, bet ir NoSQL. Išbandykite MongoDB.
  • Supraskite, kaip vienu metu valdyti kelių serverių konfigūraciją. Pavyzdžiui, naudojant Ansible.
  • Nedelsdami nustatykite apkrovos stebėjimą ir žurnalus. Išbandykite Prometheus, Grafana, Alertmanager derinį.
  • Ieškokite geriausių diegimo sprendimų skirtingoms kalboms – tereikia juos susipažinti, įgyvendinti ir suprasti mokymo ar darbo projekte.

Kodėl turėtumėte pradėti mokytis „DevOps“ dabar

„DevOps“ inžinierių rinkoje trūksta darbuotojų. Tai sąlyginai patvirtina laisvų darbo vietų kiekis ir kokybė:

  • Rusijoje vien „HeadHunter“ pagal šį raktinį žodį nuolat yra daugiau nei 2 tūkst.
  • Ir tik 1 žmonių paskelbė savo gyvenimo aprašymą.

Atsižvelgiant į tai, kad gyvenimo aprašymo talpinimas nereiškia aktyvios darbo paieškos, paaiškėja, kad vienam specialistui yra dvi ar net trys laisvos darbo vietos – tokios situacijos nėra net populiarioje interneto svetainių kūrimo rinkoje. Pridėkite čia daugiau laisvų darbo vietų iš Habr ir Telegram kanalų – specialistų trūkumas didžiulis.

Kas yra „DevOps“ inžinierius, ką jis veikia, kiek uždirba ir kaip juo tapti
Atkreipkite dėmesį į kandidatų atlyginimo reikalavimus

„DevOps“ yra ne mažiau paklausus pasaulyje - jei ketinate persikelti į JAV ar Europą, tada tik portale Stiklinės durys Tokių specialistų ieško daugiau nei 34 tūkst. Dažni reikalavimai – 1–3 metų patirtis, gebėjimas dirbti su debesimis, nebijoti konsultavimo funkcijų.

Pasiūlymų laisvai samdomiems darbuotojams yra daug kartų mažiau – „DevOps“ inžinieriai daugiausia ieško darbuotojų ir etatų.

Kas yra „DevOps“ inžinierius, ką jis veikia, kiek uždirba ir kaip juo tapti
Sunku rasti tinkamą laisvai samdomą projektą, bet tai įmanoma

Įprastą „DevOps“ inžinieriaus karjeros kelią galima įsivaizduoti maždaug taip:

  • Mažoje IT įmonėje jis dirba sistemos administratoriumi nuo šešių mėnesių iki metų. Tuo pat metu jis mokosi automatizavimui tinkamos kalbos.
  • Apie šešis mėnesius jis intensyviai mokosi kursuose.
  • Persikelia į kitą darbą – į debesų sprendimais prekiaujančią įmonę, didelės korporacijos filialą, didelių projektų vystytojams. Paprasčiau tariant, ten, kur reikia nuolatinio automatizavimo ir diegimo. Pradinėje padėtyje tai yra maždaug 100 tūkstančių rublių.
  • Jis jau keletą metų aktyviai dirba ir mokosi, kelis kartus didina pajamas.
  • Tampa profesionalų bendruomenės ekspertu ir pereina prie konsultavimo. Arba išauga iki sistemų architekto ar IT direktoriaus.

„DevOps“ yra sunku. Vienu metu reikia derinti kelių profesijų įgūdžius. Tapkite žmogumi, pasiruošusiu pasiūlyti tobulėjimą ten, kur kiti IT specialistai net negalvoja apie nieką kitą. Už tai jie moka daug, bet reikalauja ir daug žinių.

Kiek uždirba „DevOps“?

2019 metų antrojo ketvirčio duomenimis, vidutinis devopso atlyginimo mediana yra nuo 90 iki 160 tūkstančių rublių. Yra ir pigesnių pasiūlymų – daugiausia 60-70 tūkst.

Nuolat yra pasiūlymų iki 200 tūkst., Yra laisvų darbo vietų, kurių atlyginimai siekia iki 330 tūkst.

Kas yra „DevOps“ inžinierius, ką jis veikia, kiek uždirba ir kaip juo tapti
Tarp operacijų profesionalų „DevOps“ moka didesnį atlyginimą nei kiti. Šaltinis: Habr.Karjera

„DevOps“ inžinieriai, įskaitant pradedančiuosius, dabar reikalingi dideliuose bankuose, korporacijose, debesų paslaugose, prekybos sistemose ir kitose organizacijose, kurioms rūpi IT sprendimų priežiūra.

Puikus kandidatas į laisvą jaunesniojo darbo vietą, kurio atlyginimas siekia 60–90 tūkst., būtų pradedantis sistemos administratorius, turintis maždaug metų patirtį ir turintis specialybės diplomą.
 
Kas yra „DevOps“ inžinierius, ką jis veikia, kiek uždirba ir kaip juo tapti
Tokios statistikos nėra, bet panašu, kad Linux patirties turintiems žmonėms mokama daugiau

Ką žiūrėti ir skaityti, kad augtumėte savo profesijoje

Norėdami pasinerti į „DevOps“ pasaulį, išbandykite kelis informacijos šaltinius:

  • „Cloud Native Computing Foundation“ [YouTube, ENG] – daug vaizdo įrašų iš konferencijų ir edukacinių internetinių seminarų.
  • „DevOps“ kanalas [YouTube, RUS] – vaizdo reportažai iš profesionalios DevOps konferencijos Rusijoje.
  • „DevOps“ vadovas [knyga, RUS] yra viena populiariausių knygų apie DevOps filosofiją. Knygoje pateikiami bendrieji metodikos principai, nurodoma, į ką pirmiausia reikia atkreipti dėmesį dirbant su bet kokiu projektu.
  • Thomas Limoncelli "Sistemos ir tinklo administravimo praktika" [knyga, RUS] – daug teorijos ir principų, kaip turėtų būti struktūrizuotas sistemos administravimas.
  • Devops Weekly [knyga, ENG] – savaitinė naujienų apie tai, kas vyksta DevOps visame pasaulyje, apžvalga.
  • Devops_deflope [Telegram, RUS] – pramonės naujienos, konferencijų pranešimai, nuorodos į naujus įdomius straipsnius ir knygas.
  • Devops_lt [Telegram, RUS] - pokalbis rusų kalba, kuriame galite paprašyti patarimo ir paprašyti pagalbos dėl konfigūracijų.
  • Devops.com yra didelė tarptautinė svetainė su straipsniais, internetiniais seminarais, podcast'ais ir stulpeliais iš didžiausių pramonės įmonių.
  • Hangops_Ru — rusakalbių „DevOps“ inžinierių ir simpatijų bendruomenė.
  • Geriausios knygos kalbai, kurią naudosite plėtrai.

Kur studijuoti DevOps

Struktūruotų žinių galite įgyti kurse “„DevOps“ inžinierius“ Netologijoje. Išmoksite visą metodikos ciklą:

  • Sužinokite, kaip analizuoti kodą ir greitai naudoti versijų valdymo įrankius.
  • Supraskite geriausią nuolatinio integravimo, testavimo ir kūrimo praktiką.
  • Išmokite valdyti ir automatizuoti programų pakeitimus.
  • Pasinaudokite konfigūravimo ir valdymo įrankiais.
  • Įpraskite iš karto pasirinkti ir konfigūruoti reikalingas stebėjimo paslaugas.

Kaip premiją gaukite Python programavimo kursą – problemas išspręsite dar greičiau ir lengviau. Viskas praktiška – naudojame AWS, GCP arba Azure.
To pakanka, kad pradedantysis inžinierius ar sistemos administratorius taptų paklausiu DevOps ir maloniai pakeltų savo kainą darbo rinkoje.

Kas yra „DevOps“ inžinierius, ką jis veikia, kiek uždirba ir kaip juo tapti

Šaltinis: www.habr.com

Добавить комментарий