Vodič za buduće DevOps inženjere

Mainstream

10.06.2022

Karijera u developmentu ili operacijama? DA.

Sigurno znaš da je naziv DevOps nastao spajanjem reči development i operations. Ali, ova metodologija razvoja softvera obuhvata mnogo više, što uključuje i dobre izglede za uspešnu karijeru. Jer, dragoceni DevOps ekspet objedinjuje više IT disciplina. Pored toga što je zadužen za automatizaciju, sistemske poslove, skaliranje, prilagođavanje servisa i objavljivanje gotovog proizvoda (i još mnogo toga), on približava i usklađuje sve učesnike softverskog razvoja – programere, administratore, testere i krajnje korisnike, kao da je kapiten uspešnog tima. Uopšteno rečeno, DevOps je kultura koja se razvija na konstantnoj potrazi za setom najboljih praksi, za integrisan, usklađen, izbalansiran i automatizovan proces kreiranja kvalitetnog i stabilnog softvera.

Potražnja za DevOps inženjerima? I te kako!

New Harvard Business Review Analytic Services Study navodi da čak 86% kompanija obuhvaćenih istraživanjem smatra da su im za sticanje prednosti nad konkurenijom od suštinske važnosti brzi razvoj i efikasan plasman novog softvera. Zbog toga za DevOps pozicijama vlada velika potražnja. Čak i brza pretraga na Linkedln-u daje 16.628 rezultata, i to samo samo u EU.
A zbog čega je interes toliko veliki? Zahvaljujući DevOps inženjerima, kompanije uvećavaju produktivnost, a smanjuju šanse za probleme, pre ili nakon plasiranja aplikacije u spoljnji svet koji ne oprašta greške. Jednostavno rečeno, DevOps ekspert je dobri duh svakog uspešnog softvera.

Šta radi DevOps inženjer?

Zamisli sebe kako razvijaš alate i procese, organizuješ i koordinišeš članove tima, učestvuješ u code review-u, rešavaš merge konflikte, raspoređuješ taskove, a možda i komuniciraš sa biznis stranom medalje. Kao DevOps inženjer, ti si poslednji filter pre izvršenja taska, a pre toga, važna go-to osoba za sva pitanja, bilo da se postavlja arhitektura sistema ili usput iskrsnu neki problemi. A to su samo neka od od tvojih potencijalnih zaduženja, što opet znači da imaš veliki prostor za lični razvoj i napredak u karijeri.

devops

Svakodnevnica DevOps inženjera: koncepti i praksa

Neke koncepte treba da imaš u vidu, jer to je ono na čemu ćeš raditi, kroz set najboljih praksi koje povezuju developere i one koji rade u operacijama:

  • Build automation
  • Continuous integration
  • Continuous delivery and deployment
  • Infrastructure as code
  • Microservices
  • Monitoring
  • Orchestration
  • Configuration management

Dobro, a koje tehnologije i alate treba da poznaješ ili naučiš?

Mi ćemo nabrojati samo neke, kao što su:

  • Alati za upravljanje izvornim kodom – kao GitHub koji ti omogućava uvid u promene koje su napravljene u izvornom kodu.
  • Alati za implementaciju – kao Terraform, sa infrastrukturom otvorenog koda koja omogućava efikasnu transformaciju, razvoj i verzioniranje.
  • Cloud alati – uz Lambdu, alat pogodan za izvršavanje koda u različitim pozadinskim aplikacijama ili uslugama.
  • Alati za kontinuiranu integraciju – a ovde je jedan od najkompletnijih Jenkins, jer ti omogućava da izvodiš testove u realnom vremenu i distribuiraš kod različitim timovima.
  • Alati za praćenje – Grafana, jer omogućava razvoj aplikacije i uvide u potencijalna ponavljanja kvarova, kao i Prometej, alat za praćenje otvorenog koda, posebno kada je reč o kontejnerima i mikroservisima.
  • DevOps kontejneri – omogućavaju odvajanje aplikacija od okruženja u kojima se primenjuju, uz alate kao Kubernetes (za implementaciju i upravljanje sistemima razvijenim za Linux kontejnere) i Doker (za automatizaciju i standardizaciju implementacije aplikacija).
  • DevOps klasteri – Kops, sa komandnom strukurom za dizajniranje, ažuriranje i konfigurisanje klastera. Mreže komandne linije – Netstat, Lotop, Strace, Ionotifywait, Curl, Ngrep…
  • Mrežni protokoli – Telnet, Ping, NFS…

I mada ovo čak i nije definitivna lista, nemoj da brineš: za DevOps inženjera ne moraš da budeš genije. Treba samo da imaš talenat i autentičnu želju za učenjem.

I sada je vreme da se upitaš: Da li je DevOps pravi izbor za mene?

Ako si faca sposobna za izlazak iz komforne zone i ako te odlikuju proaktivnost, analitičko mišljenje i transparentnost u radu, a još želiš i da učiš (jer to je veliki deo DevOps kulture), i uz to iskazuješ druželjubivost, proaktivnost, upornost i sklonost rešavanju problema, a povrh svega si timski radnik i u ljubavi sa novim tehnologijama, DevOps karijera ti namiguje, šalje poljupce i baca bidermajer pravo u tvoje ruke.

Realan put ka DevOps karijeri

Ako studiraš ili završavaš PMF, ETF, FON itd, postoje načini da se profilišeš, uz dobru praksu i proces sertifikacije. Ako si jednostavno zaljubljena/zaljubljen u IT, možeš da upišeš neki od kurseva i kroz praktičan rad stekneš iskustvo u programiranju, pisanju skripti, agilnim principima, cloud-u i ostalom.

Za studente i početnike u DevOps i cloud sferi, Mainstream nekoliko puta godišnje organizuje CloudOps – kratak ali intezivan edukativni program, koji kombinuje teorijske i praktične zadatke. Ovaj, inače potpuno besplatan program, namenjen je svim juniorima koji žele da steknu iskustvo u ovoj oblasti i budu korak bliže karijeri DevOps inženjera.

DevOps poslovi u Mainstream-u

I mi u Mainstreamu smo zaljubljeni u IT, bavimo se cloud-om i radimo sa najnovijim tehnologijama. I stalno smo u potrazi za ambicioznim mladim ljudima koji dele našu strast prema inovaciji. I zato nema razloga da čekaš. Naše otvorene pozicije možeš da pogledaš ovde. I slobodno nam se javi za sva pitanja i nedoumice. Svakom softverskom timu je potreban kapiten, a možda si to baš ti.

AI FOMO kao pokretač cloud transformacije

Veštačka inteligencija je u fokusu kompanija, a sa njom i primena cloud tehnologija. Koje mogućnosti otvara AI i cloud simbioza i kako da ih najbolje iskoristite?

Aws

Kako da razvijate svoj startup na cloud-u uz AWS kredite 

Saznajte kako da se prijavite za AWS kredite, maksimalno ih iskoristite i optimizujete svoju AWS infrastrukturu uz stalnu kontrolu troškova.

Ograničenja upotrebe resursa pomoću Kubernetes-a: Rešavanje ograničenja kapaciteta CPU i memorije primenom mača sa dve oštrice

Kubernetes CPU and memory limits are essential for managing resources, but setting them too low can lead to throttling…