Proč by se správci systému, vývojáři a testeři měli učit postupy DevOps?

Proč by se správci systému, vývojáři a testeři měli učit postupy DevOps?

Kam s těmito znalostmi jít, co dělat v projektu a kolik vydělat, co říkat a ptát se na pohovoru - říká Alexander Titov, vedoucí partner Express 42 a autor online kurz „Postupy a nástroje DevOps“.

Ahoj! Přestože pojem DevOps existuje již od roku 2009, v ruské komunitě stále nepanuje shoda. Pravděpodobně jste si všimli, že někteří považují DevOps za specialitu, jiní za filozofii a další za soubor technologií. Už jsem mnohokrát vystupoval s přednášky o vývoji tohoto směru, proto se v tomto článku nebudu rozepisovat. Dovolte mi jen říci, že v Express 42 do něj zahrnujeme následující:

DevOps je specifická metodika, kultura tvorby digitálního produktu, kdy se na výrobě podílejí všichni specialisté v týmu.

V klasickém firemním vývoji jde vše sekvenčně: programování, testování a teprve potom provoz a rychlost tohoto procesu od nápadu po výrobu je 3 měsíce. To je celosvětový problém digitálních produktů, protože není možné rychle získat zpětnou vazbu od zákazníků.

V DevOps jsou nástroje a přístupy navrženy tak, aby zajistily, že vývojové, testovací a provozní procesy běží současně.

Co z tohoto přístupu vyplývá?

  • Nemůžete si najmout nějakého „inženýra“, který přijde a vyřeší všechny problémy s výrobou. Techniku ​​musí aplikovat celý tým.

    Proč by se správci systému, vývojáři a testeři měli učit postupy DevOps?

  • DevOps NENÍ další forma správce systému, na kterou lze upgradovat. „DevOps inženýr“ zní zhruba stejně jako „Agilní vývojář“.

    Proč by se správci systému, vývojáři a testeři měli učit postupy DevOps?

  • Pokud tým používá Kubernetes, Ansible, Prometheus, Mesosphere a Docker, neznamená to, že tam byly implementovány postupy DevOps.

    Proč by se správci systému, vývojáři a testeři měli učit postupy DevOps?

Život po DevOps už nikdy nebude stejný

Přístup DevOps je především jiný způsob myšlení, vnímání vývoje jako celku a svého místa v procesu. Náš online kurz jsme rozdělili do 2 bloků:

1. Sebeurčení

Nejprve podrobně prozkoumáme podstatu přístupu DevOps a studenti objeví nové role v týmu, uvidí, která z nich více reaguje, a sami určí, jakým směrem se vyvíjet.

2. Nástroje a postupy

Studenti ovládají konkrétní technologie z pohledu metody DevOps.

Nástroje DevOps lze použít jak v přístupu DevOps, tak v klasickém vývoji. Nejviditelnějším příkladem by bylo použití nástroje pro správu konfigurace Ansible. Byl vytvořen a koncipován za účelem implementace praxe DevOps „Infrastructure as Code“, což znamená, že jsou popsány různé stavy systému, od nastavení operačního systému až po aplikační software. Popis je rozdělen do vrstev a umožňuje spravovat komplexní, neustále se měnící konfiguraci. Ale inženýři často používají Ansible jako způsob, jak spouštět bash skripty na více strojích. To není ani špatné, ani dobré, ale musíte pochopit, že přítomnost Ansible nezaručuje přítomnost DevOps ve společnosti.

Jsme v procesu samozřejmě Budete ponořeni do procesu vývoje aplikace podobné slavnému Redditu, počínaje její monolitickou verzí, přesouvat se krok za krokem k mikroslužbám. Krok za krokem si osvojíme nové nástroje: Git, Ansible, Gitlab a dokončíme Kubernetes a Prometheus.

Co se týče praktik, budeme se držet taktiky tří cest popsaných v DevOps Handbook – kontinuální doručovací praktiky, zpětnovazební praktiky a podstatou celého kurzu je nácvik kontinuálního učení spolu s vaším systémem.

Co tyto znalosti dávají každému ze specialistů?

Pro systémové administrátory

Praxe vám umožní přejít od administrace směrem k vytvoření kontinuálního doručovacího kanálu a infrastruktury infrastruktury pro doručování softwaru. Jde o to, že vytváří produkt – infrastrukturní platformu pro vývojáře, která jim pomáhá rychle prosadit jejich změny do výroby.

Dříve byli systémoví administrátoři poslední baštou, po které jde vše do výroby. A v podstatě se zabývali nepřetržitým hašením požárů - ve světle čehož je poměrně obtížné ponořit se do potřeb podniku, přemýšlet o produktu a výhodách pro uživatele.
Díky metodě DevOps se myšlení mění. Správce systému rozumí tomu, jak převést konfiguraci do kódu, jaké postupy pro to existují.

To je důležité, protože společnosti si stále více uvědomují, že nepotřebují pouze vše automatizovat, tzn. na co byli v podstatě zvyklí správci systému ze staré školy, kteří navíc málo komunikovali a neinformovali tým o všech provedených změnách. Nyní týmy hledají ty, kteří se stanou výrobcem produktu interní infrastruktury a pomohou spojit oddělené procesy do jednoho.

Pro vývojáře

Vývojář přestává myslet pouze v algoritmech. Získává dovednost práce s infrastrukturou, dovednost architektonického povědomí o krajině. Takový vývojář rozumí tomu, jak aplikace funguje, jak prochází průběžným doručovacím potrubím, jak ji sledovat, jak ji registrovat, aby byla přínosem pro klienta. Ve výsledku vám všechny tyto znalosti umožňují psát relevantní kód.

Pro testery

Testování již dávno přechází do automatického režimu, všichni říkáme, že mnoho testů se nemá dělat, ale psát :) Testování se stává součástí celého zásobovacího potrubí vašeho produktu. Tester se potřebuje nejen naučit psát kód, ale také pochopit, jak jej integrovat do systémů nepřetržitého doručování, jak přijímat zpětnou vazbu od kódu ve všech fázích dodávání a jak neustále zlepšovat testování, aby bylo možné detekovat chyby jako co nejdříve.

Tak to dopadá všechny tři fáze probíhají současně. Může to vypadat například takto:

Vývojář napíše kód, okamžitě pro něj napíše testy a popíše kontejner dockeru pro kód, který by měl být spuštěn. Okamžitě také popisuje monitoring, který bude sledovat provoz této služby ve výrobě, a toto vše zavazuje.

Když se spustí nepřetržitá integrace, procesy běží současně. Služba se spustí a nakonfiguruje. Zároveň se spustí kontejner dockeru a zkontroluje se, že běží. Zároveň všechny informace jdou do logovacího systému. A tak dále v každé fázi vývoje – ukazuje se, že jde o skutečnou týmovou práci systémových administrátorů, vývojářů a testerů.

Studoval jsem DevOps, co dál?

Jak víte, jeden v poli není válečník. Pokud vaše společnost tuto metodu nepoužívá, získané dovednosti budou ležet ladem. A poté, co se seznámíte s přístupy DevOps, s největší pravděpodobností nebudete chtít být kolečkem ve firemním rozvoji. Může existovat jedna výjimka: jste správcem systému v týmu a můžete přestavět všechny procesy novým způsobem. Zde stojí za to dodat, že existuje mnoho společností, které tento přístup využívají a kterých se uzamčení netýká a hledají specialisty. Protože DevOps je o vytváření online produktů.

A teď k tomu dobrému: zvládnutí postupů a nástrojů DevOps je přibližně +30 % vaší hodnoty na trhu práce. Platy začínají od 140 tisíc rublů, ale jsou přirozeně určeny vaší hlavní specializací a funkčností.

Můžete se podívat na volná místa s označením „infrastructure-oriented“, kde je automatizace testování, vývoj aplikací mikroslužeb s využitím cloudových technologií, volná místa pro infrastrukturní inženýry a nejrůznější reference na DevOps. Jen si pamatujte, že každá firma si pod touto definicí myslí něco jiného – pozorně si přečtěte popis.

Při rozjezdu našeho kurzu mě napadlo – mnoho lidí po kurzu padne do pasti inženýra DevOps. Najdou volné místo s výše zmíněným názvem, dostanou dobrou nabídku a pak přijdou do práce a uvědomí si, že budou muset v Jenkinsovi udržovat třístránkový bash skript. Kde jsou Kubernetes, ChatOps, kanárková vydání a tak dále? Ale není o čem, protože firma DevOps jako metodiku nepotřebuje, ale využívá jednotlivé inovace.

To je důvod, proč od firmy intenzivně zjišťovat, jak funguje proces dodávky softwaru, technologický stack a jaké budete plnit povinnosti.

Pokud zaměstnavatel na vaše otázky odpovídá abstraktně, jako z knihy, bez podrobností, pak s největší pravděpodobností ve firmě zatím žádný proces DevOps neprobíhá, ale to není důvod k odmítnutí, prostudujte si společnost a její produkty, zda existují online služby, které společnost sama vyvíjí, mobilní aplikace, nápady na produkty.

Pokud ano, ujasněte si, zda budete muset pracovat přímo s těmito systémy, nebo zda existuje možnost horizontálního přesunu do týmů těchto služeb a zároveň prokázat dobré výsledky v postupech DevOps. Pokud ano, pak stojí za to jít a být aktivní a užitečný, a pokud náš kurz absolvujete, to druhé je zaručeno.

Je důležité poznamenat, že praktici Devops získávají skutečnou hodnotu pouze se zkušenostmi s vývojem/administrací/testováním. Jen tak nebudou znalosti abstraktní, ale obohatí odborníka (v každém smyslu). Myšlenka „učit se DevOps od nuly“ je tedy zhruba stejná jako naučit se „používat čočky od nuly“, pokud jste nikdy nedrželi fotoaparát v rukou nebo neřídili natáčení. Abychom vám pomohli rozhodnout, zda je kurz pro vás vhodný, připravili jsme vstupní test, který prověří vaši dostatečnou úroveň znalostí.

Myslím, že jeden z triků samozřejmě — že v průběhu výcviku si každý student sám určí, jakým směrem se chce rozvíjet. Často vidíme přechody, kdy se z vývojáře stane infrastrukturní inženýr a administrátor si uvědomí, že má zájem psát kód – poté jazyk dále studuje a doplňuje ho o získané dovednosti DevOps. Proto vítáme především ty, kteří mají pocit, že jejich kariéra uvízla na rozcestí. Kurz začíná 28. května, ale zapojit se můžete 2 týdny po začátku výuky. Můžete si prohlédnout program a udělat test по ссылке. Uvidíme se v OTUS!

Zdroj: www.habr.com

Přidat komentář