- O spoločnosti
- BENEFITY
- NAHLIADNI K NÁM
- NAŠE PRODUKTY
- Práve hľadáme
- Všetky pracovné pozície
- Podľa pracovnej oblasti
- Podľa lokality
- Práve hľadáme
- Všetky pracovné pozície
- msg IT KOMUNITA
- ČLÁNKY
- SLOVNÍK
- Práve hľadáme
- Všetky pracovné pozície
DevOps je jedným z pojmov, s ktorými sa budeš v IT sfére stretávať pomerne často. Ak teda premýšľaš nad tým, že odštartuješ kariéru programátora, testera či vývojára, je dôležité, aby si vedel, čo znamená. V tomto článku ti prezradíme všetko, čo o DevOps potrebuješ vedieť na začiatok. Vysvetlíme ti, čo to je, ako funguje a akým spôsobom ovplyvňuje úspešnosť celého tímu.

Zaujíma ťa, čo je DevOps? V jednoduchosti povedané, DevOps je princíp, ktorý spája dve kľúčové oblasti – vývoj (development) a prevádzku aplikácií (operations). Práve z týchto anglických slov pochádza aj jeho názov.
DevOps zahŕňa spôsob práce a kultúry, vďaka ktorému dokáže tím IT špecialistov dosahovať lepšie výsledky za výrazne kratší čas. V porovnaní s firmami, ktoré využívajú tradičné postupy, sú tímy pracujúce s DevOps efektívnejšie, robia menej chýb a vďaka úspore času dokážu znížiť svoje náklady.
Okrem toho DevOps predstavuje spôsob, akým IT špecialisti premýšľajú nad výsledným produktom. Nazerajú naň viac z pohľadu koncového zákazníka. Takto vznikajú aplikácie a softvéry, ktoré po testovaní potrebujú len minimálne úpravy a sú pripravené na okamžité používanie.
V minulosti fungovala práca v IT firmách veľmi oddelene, čo často komplikovalo a predlžovalo pracovné procesy. V praxi to vyzeralo tak, že vývojári vyvinuli aplikáciu, software alebo iný produkt, ktorý následne odovzdali ďalším IT špecialistom, napríklad testerom. Tí ho otestovali, odhalili chyby a vrátili ho späť vývojárom na opravu.
Tento postup práce bol však pre mnohé firmy neefektívny. Práve preto vznikol koncept DevOps, ktorý umožňuje, aby sa do procesu kontinuálne zapájali všetci odborníci z oblasti vývoja aj prevádzky.
Pre DevOps je kľúčové, aby jednotlivé oblasti a odborníci medzi sebou spolupracovali. V opačnom prípade nebude práca efektívna ani úspešná. Otvorená komunikácia a zdieľaná zodpovednosť za výsledný produkt vedú k:
Je dôležité poznať základné princípy DevOps a vedieť, ako vyzerá jeho cyklus.
Cyklus DevOps sa skladá zo štyroch fáz:
Ide o kľúčovú fázu, od ktorej sa tímy odrážajú a posúvajú ďalej. Počas nej sa navrhuje aplikácia alebo systém, na ktorom sa bude pracovať. Definuje sa, ako bude vyzerať, aké bude funkcie mať a aký cieľ má spĺňať – teda na čo sa bude používať.
Vo všetkých fázach (vrátane plánovania) sú prítomní všetci odborníci, aby sa zabezpečilo, že každý člen tímu bude s aplikáciou oboznámený.
Na plánovanie sa používajú rôzne nástroje na tvorbu to-do listov a vizualizáciu procesov, ktoré výrazne zjednodušujú prácu. Medzi obľúbene patria napríklad Trello, Jira, Asana či Azure DevOps.
Ďalšia dôležitá fáza cyklu DevOps je vývoj (development), ktorý zahŕňa samotné písanie kódu. Túto úlohu majú na starosti vývojári využívajúci verziovacie tooly, ako je napríklad Git.
Aby bola spolupráca na projekte kontinuálna a mohli sa do nej zapojiť všetci členovia tímu, vývojári nový kód integrujú priebežne – nie iba raz za určitý čas, napríklad týždeň alebo mesiac. Ostatní odborníci tak môžu nájsť a odstrániť prípadnú chybu oveľa rýchlejšie, čím šetria čas aj financie.
DevOps tímy sú známe tým, že sa snažia pracovať rýchlo a efektívne, no nie na úkor kvality. Práve preto využívajú mnohé pokročilé nástroje, ktoré automatizujú opakujúce sa kroky.
Po tom, ako programátor napíše kód, je potrebné, aby ho tester otestoval a zistil, či sa v ňom nenachádza chyba. Testy sa pritom vykonávajú priebežne – vždy, keď príde nejaká zmena alebo pribudne ďalšia časť nového kódu.
Okrem funkčných testov sa často využíva aj security testing, ktorého cieľom je preveriť, či nový kód neobsahuje bezpečnostné medzery. Včasné odhalenie zraniteľností pomáha predísť problémom, ktoré by mohli ohroziť celú aplikáciu.
Cieľom priebežného testovania je teda čo najrýchlejšie odhaliť chyby – technické aj bezpečnostné – ktoré by mohli spôsobiť komplikácie na strane koncového používateľa a viesť k jeho nespokojnosti.
Keď je kód úspešne otestovaný a vyzerá, že nemá žiadne chyby, môže dôjsť k jeho nasadeniu do praxe. To znamená, že výsledná aplikácia alebo softvér sa posunie používateľom, ktorí ho môžu naplno využívať.
V tomto kroku je dôležité, aby sa produkt neustále monitoroval a overovalo sa, či funguje tak, ako má. V prípade menšej či väčšej chyby je potrebné okamžite zasiahnuť.
V rámci DevOps sú kľúčové aj dva základné postupy, ktoré úzko súvisia so spomínanými fázami a ktoré sme už mierne načrtli.
Kontinuálna integrácia, v angličtine známa ako continuous integration (CI), je základným pilierom DevOps. V bežných tímoch jednotliví špecialisti pracujú na svojich úlohách a častiach kódu. Všetky zmeny sa následne zlučujú až na konci, kde často vznikajú viaceré problémy. Niektoré komponenty nespolupracujú tak, ako majú, objavujú sa nečakané chyby, vzniká chybný kód a podobne.
DevOps špecialista tomuto chaosu predchádza tým, že každý odborník síce pracuje na svojich úlohách, no zmeny integruje do hlavného kódu (main code) postupne, po menších častiach. Ak sa objaví problém, zvyčajne nie je taký závažný a dá sa okamžite opraviť.
S kontinuálnou integráciou úzko súvisí aj kontinuálne nasadzovanie, v angličtine continuous delivery (CD). Po tom, ako sa nová časť kódu integruje do „hlavnej vetvy”, sa otestuje a overí, že je všetko v poriadku a dochádza k jej nasadeniu priamo do aplikácie alebo softvéru.
Kontinuálne nasadzovanie je v súčasnej rýchlej dobe dôležité najmä preto, aby sa nové funkcie a vylepšenia aplikácie dostali ku koncovým zákazníkom v čo najkratšom čase a aby výsledný produkt fungoval plynulo, spoľahlivo a bez chýb. Prečítaj si aj článok o CI CD v testingu.
Výhod DevOps je veľké množstvo, pričom niektoré sme už spomenuli. Ak však stále premýšľaš, či je tento prístup vhodný pre teba a tvoj tím, tu je zhrnutie jeho najväčších benefitov:
Vďaka DevOps dokážu tímy pracovať efektívnejšie, čo automaticky vedie k rýchlejšiemu dodaniu softvéru alebo aplikácie koncovému zákazníkovi. Spolu s časom sa šetria aj financie a energia, ktorú IT špecialisti môžu investovať do vývoja nových funkcií alebo do celkového vylepšovania softvéru.
Veľkým plusom DevOps tímov je aj to, že dokážu oveľa pružnejšie a lepšie reagovať na spätnú väzbu od zákazníkov či potreby trhu. Navyše vedia rýchlejšie odstraňovať nečakané chyby, ktoré by mohli komplikovať používanie aplikácie.
DevOps špecialisti vo veľkej miere využívajú automatizáciu, napríklad na monitoring hotovej aplikácie alebo na vykonávanie testov. Takýmto spôsobom sa vyhýbajú vzniku menších ľudských chýb, čo vedie k stabilnejšiemu a spoľahlivejšiemu softvéru.
Automatizovaný monitoring aplikácie navyše zachytáva chyby, ktoré by si človek nemusel všimnúť, a umožňuje opraviť ich ešte skôr, než by sa s nimi stretli koncoví používatelia.
V tradične nastavených firmách tímy spravidla fungujú ako samostatné jednotky, medzi ktorými je komunikácia minimálna. To často vedie k zbytočným chybám, ktorým by sa dalo veľmi jednoducho predísť.
DevOps prepája tímy a znižuje riziko vzniku komunikačného šumu. Komunikácia medzi špecialistami je otvorenejšia, čo podporuje riešenie problémov aj rýchlejšie rozhodovanie.
Napokon netreba zabúdať ani na to, že DevOps výrazne šetrí náklady a znižuje riziká. Je to najmä vďaka kombinácii týchto faktorov:
DevOps nástrojov (DevOps tools) je viacero. Ich výber závisí od toho, na čo ich chceš použiť:
Verziovacie nástroje, vďaka ktorým môže tím špecialistov spolupracovať a sledovať, aké zmeny urobili vývojári či programátori. Najčastejšie sa na tieto účely používa GitHub, GitLab alebo Bitbucket.
Ich hlavnou úlohou je automatizovať proces integrácie a nasadzovania kódu. Populárne sú napríklad Jenkins, GitLab CI/CD alebo CircleCI.
Na kontajnerizáciu sa zvyčajne používa Docker a na orchestráciu Kubernetes.
Slúžia na sledovanie výkonu, bezpečnosti a chýb softvéru. Z aplikácií sa najčastejšie využívajú Prometheus alebo Grafana.
Systém či kultúra DevOps sa dá využiť v rôznych oblastiach. Skvelo pomáha napríklad v startupoch, ktorým umožňuje rýchlo a efektívne nasadzovať nové funkcie. Takto dokážu držať krok s neustále sa meniacim trhom.
Podobne je to aj vo veľkých korporáciách, kde DevOps spája viaceré sektory a znižuje riziko vzniku problémov aj pri zložitejších projektoch.
Nástroje DevOps nájdu uplatnenie aj v cloud computingu, kde podporujú automatizáciu procesov a ich škálovanie. Aplikácie sa tak dajú nasadzovať kedykoľvek a kdekoľvek veľmi rýchlo.
Rozdiely medzi DevOps a agilným vývojom sú celkom jasné. Agile sa zameriava predovšetkým na vývoj softvéru (software development) a rieši komunikáciu a spoluprácu medzi vývojármi, ktorá by mala byť plynulá a efektívna. DevOps naopak spája dve oblasti – vývoj a prevádzku – a jeho cieľom je urýchliť proces vzniku softvéru bez zníženia kvality.
Súčasťou DevOps sú spravidla viacerí odborníci, predovšetkým vývojári a testeri. Ďalej sem patria bezpečnostní experti, ktorí sledujú zraniteľnosti softvéru, a IT Operations špecialisti, ktorí spravujú cloud, servery, infraštruktúru a ďalšie komponenty.
Nie, DevOps nie je určený len pre programátorov. Sú jeho súčasťou aj testeri, bezpečnostní odborníci či IT Operations špecialisti. Okrem toho je DevOps vhodný aj pre UI/UX dizajnérov či produktových manažérov, ktorí zisťujú požiadavky zákazníkov a získavajú spätnú väzbu.
IT špecialista je všeobecný pojem, ktorý zahŕňa rôzne profesie – od administrátorov cez vývojárov až po bezpečnostných expertov. Naopak, DevOps špecialista je konkrétna rola, ktorá prepája vývoj a prevádzku. Jeho úlohou je automatizovať procesy, zavádzať CI/CD a dohliadať na to, aby celý vývojový cyklus prebiehal rýchlo, spoľahlivo a bez zbytočných chýb.
DevOps engineer je špecialista, ktorý prepája vývoj softvéru a jeho prevádzku. Stará sa o to, aby nové verzie aplikácií vznikali rýchlo, spoľahlivo a dali sa jednoducho nasadzovať. Využíva automatizáciu, cloudové služby a nástroje ako Docker či Kubernetes, nastavuje procesy pre testovanie a nasadzovanie kódu, sleduje chod aplikácií a rieši prípadné problémy. Výsledkom jeho práce je hladký a stabilný chod softvéru od napísania kódu až po jeho používanie v praxi.
DevOps prináša množstvo výhod, medzi ktoré patria úspora času, energie a financií, zefektívnenie vývoja aplikácií, zlepšenie kvality a spoľahlivosti softvéru či podpora spolupráce medzi viacerými tímami.
Medzi najväčšie prekážky patria návyky pracovníkov, ktorí sú zvyknutí pracovať oddelene. Problémom môže byť aj nedostatok znalostí a skúseností, zastarané procesy či slabá podpora vedenia. Ak chceš implementovať DevOps do svojho tímu, je nevyhnutné, aby s ním všetci súhlasili. V opačnom prípade nebude systém taký efektívny, ako by si si želal.
DevOps dnes už nie je len trend, ale osvedčený prístup, ktorý pomáha firmám aj jednotlivcom tvoriť kvalitnejší softvér, nasadzovať ho rýchlejšie a udržiavať ho spoľahlivejší. Ak sa pohybuješ vo svete IT alebo doň práve vstupuješ, porozumenie DevOps ti otvorí dvere k efektívnejšej práci a lepšej spolupráci v tíme. V konečnom dôsledku ide o kultúru, ktorá spája ľudí, procesy a technológie – a práve to je základ, na ktorom stojí moderný vývoj softvéru.
V msg life Slovakia sa starám o firemnú kultúru, eventy a som súčasťou marketingového tímu. Mám rada prácu, kde môžem byť kreatívna a prispieť k tomu, aby sa kolegovia v msg cítili dobre. Pravidelne pre teba pripravujem
nielen novinky a zaujímavosti zo sveta informačných technológií a poisťovníctva, ale aj zo zákulisného diania v spoločnosti msg life Slovakia.
Pozri sa, na čom spoločne pracujeme, kto sú ľudia za naším kódom a ako sme rástli. Zistíš, ako vyzerá naša práca zblízka a čo nás spája aj mimo kancelárie.
Naozaj sa chceš odhlásiť z msg IT komunity?
Mrzí nás, že uvažuješ o odchode. Ak však chceš pokračovať, zadaj svoj e-mail, ktorým si sa do komunity prihlásil, aby sme dokončili tvoje odhlásenie. Následne si skontroluj e-mailovú schránku a svoju voľbu potvrď.Ak máš aj naďalej technické problémy, neváhaj nás kontaktovať na e-mailovej adrese: info.sk@msg.group
Tvoja žiadosť o odhlásenie bola odoslaná
Do e-mailu sme ti poslali odkaz s potvrdením odhlásenia. Ak ti e-mail neprišiel, skontroluj aj sekciu spamu. Ak máš aj naďalej technické problémy, neváhaj nás kontaktovať na e-mailovej adrese: info.sk@msg.group
Bol si odhlásený z msg IT komunity
Je nám ľúto, že si sa rozhodol odísť. Údaje, ktoré si nám poskytol pri registrácii boli automaticky odstránené. Ak si svoje rozhodnutie rozmyslíš, môžeš sa k nám kedykolvek vrátiť. Ak máš akékolvek otázky alebo potrebuješ pomoc, neváhaj nás kontaktovať na e-mailovej adrese: info.sk@msg.group
Odkaz je už neplatný
Tento odkaz bol už použitý a si odhlásený z msg IT komunity.Naozaj sa chceš odhlásiť z odoberania IT noviniek?
Nebudeš dostávať žiadne IT novinky, výber IT podujatí, info o našich nových podcastoch a súťažiach.
Nastala chyba pri odhlasovaní z newsletteru
Ak máš aj naďalej technické problémy, neváhaj nás kontaktovať na e-mailovej adrese: info.sk@msg.group
Odhlásenie z odoberania IT noviniek bolo úspešné
Mrzí nás že odchádzate