Photomathovi DevOpsi: njihova infrastruktura obrađuje upite 10-aka milijuna korisnika

Ovo su DevOpsi kroz čiju infrastrukturu prolaze tisuće upita u sekundi od više 10-aka milijuna korisnika u svijetu

Kako je počela DevOps priča u Photomathu te kako je od par entuzijastičnih inženjera koji su željeli raditi s najnovijim tehnologijama nastao tim koji se danas brine za automatizaciju, skaliranje, sigurnost, dostupnost i stabilnost mikroservisa, odnosno Photomathove aplikacije - otkrili smo u razgovoru s članovima tima.

DevOps, ma to je samo glorificirani sistemac! To je developer koji zna napraviti build na server, kažu drugi. Treći pak nadahnuto pričaju kako DevOps znači promjenu kulture i način razmišljanja tech timova. Svatko ima svoju definiciju što DevOps jest, iako pojam i ‘pokret’ unutar tehnološke industrije već odavno nije nov.

Od jednog inženjera do Infra tima sa specijaliziranim podtimovima

Baš zato sam članove DevOps tima u Photomathu prvo pitala je što u Photomathu znači DevOps i čime se tim bavi. Igor Bunjevac, Ivica Dvoršćak, Mladen Vojnović i Josip Domšić otkrili su da DevOps i u Photomathu znači puno stvari, a i svaki od njih ima neku svoju specijalizaciju. Ispričali su i kako su prošli put od jednog DevOps inženjera i tehnološke transformacije Photomatha preko jednog DevOps tima do današnjeg krovnog Infra tima unutar kojeg su specijalizirani podtimovi – Infra Core, SecOps, Cloud Infrastructure Reliability (CIRE) i ITOps.

Podjela na specijaliziranije timove ne čudi jer je odgovornost Infra tima široka – od administracije korisničkih računa na raznim platformama, instalacije i održavanja sustava, servisa te cloud i on-premises infrastrukture, preko stalnog monitoringa, security patchiranja i kompletne brige o svakom mikroservisu koji omogućuje visoku dostupnost i funkcionalnost Photomath mobilne aplikacije te podrške ostalim razvojnim timovima, najviše kroz automatizaciju.

Kako je počela Photomathova DevOps priča

Igor Bunjevac u Photomathu je nešto više od dvije godine, startao je na poziciji jedinog System Administratora, a danas je DevOps Team Lead. Ima gotovo 20 godina radnog iskustva u IT-u na različitim tehnologijama i alatima, s fokusom na open source rješenja i Linux sustave. Većinu radnog iskustva Igor je stekao na projektima u financijskom sektoru i telekom industriji. I nakon toliko iskustva, rad u Photomathu za njega je osvježenje  i pozitivan izazov što se tiče osobnog razvoja i rada na novim tehnologijama:

S kolegom Ivanom sam započeo Photomathovu priču s mikroservisima i GCP Kubernetes clusterima kao orkestratorom. Odmah smo iskoristili priliku i uveli Terraform kao naš IaC alat za efikasnije upravljanje resursima na Google Cloudu, kao i verzioniranje stanja cloud infrastrukture.

Sada, nakon mnogo učenja i prakse, te nekoliko iteracija sustava i izlaska iz “moda štednje” ponosni smo na postignutu razinu automatizacije, skaliranja, dostupnosti i stabilnosti naših mikroservisa, odnosno Photomath mobilne aplikacije.

“DevOps je prvenstveno metodologija rada”

Mladen Vojnović u Photomathu je DevOps inženjer u AI timu. Karijeru je počeo kao SysOps/SysAdmin,  iskustvo stjecao kao inženjer za automatizaciju builda u bliskoj suradnji s developerima, a zatim se intenzivnije okušao u infrastrukturi na Kubernetesima:

Spojem ta dva svijeta napokon sam mogao reći da imam potpune kompetencije u DevOps svijetu. S tim znanjima došao sam u Photomath gdje sam dobio priliku predstaviti nove alate i pristup radu kako bi, među ostalim, olakšao započetu reorganizaciju.

Na pitanje što je za njega DevOps nudi gotovo pa udžbeničku definiciju i dijeli DevOps na barem dvije specijalizacije:

Za mene je DevOps prvenstveno metodologija rada koja uključuje zajednički rad developerskih i Ops timova kroz cijeli životni ciklus servisa (proizvoda) koji se razvija i pušta u produkciju. Danas se često radno mjesto opisuje kao DevOps Engineer, što je dosta općenito i nerijetko ne definira dobro koji dio pokriva.

Ja bih DevOps podijelio na dva područja, odnosno specijalizacije, DevOps – Infrastructure Engineer i DevOps – Build/Deployment Automation Engineer (CI/CD). Specijalizacija je potrebna i jer nije svakome zanimljivo raditi sve, a s druge strane područje je preširoko da bi se moglo kvalitetno pokriti na svim razinama.

Mladen Vojnović je DevOps inženjer u AI timu

Potrebu za specijalizacijom, odnosno da ne rade svi baš sve, prepoznali su i u Photomathu pa je njihov DevOps tim kroz reorganizaciju postao Infrastructure Team koji objedinjuje ranije spomenuta četiri tima. Osim toga, pojedini R&D timovi imaju  dediciranog DevOpsa u svojem timu.

Milijuni korisnika, tisuće upita u sekundi…

Ivica Dvoršćak u Photomathu radi kao DevOps inženjer, s naglaskom na GCP Kubernetes infrastrukturu i automatizaciju. Nešto više od 10 godina radio je kao Linux SysAdmin i DevOps inženjer s, kako kaže, ponekim izletom u networking vode, većinu karijere u telekom industriji. U Photomath ga je dovela želja za osobnim napretkom, najnovijim tehnologijama, izlaskom iz zone komfora te, kako kaže, “razbijanja zuba” u startupu. Na pitanje da opiše svoj posao, odgovara:

You can call me Susan if it makes you happy:) , ali ja sebe doživljavam kao nekog tko rješava probleme.

Dolazim iz industrije u kojoj je apsolutna dostupnost zakon, tako da se o bilo kakvim promjenama, inovacijama i eksperimentima uvijek triput razmišlja. Ovdje pokušavam spojiti apsolutnu odgovornost prema korisnicima i telco always-on principe s brzinom i eksperimentiranjem startupa.

Olakotna okolnost je što nismo vendor eksternim kompanijama, već su klijenti sami korisnici aplikacije pa je pritisak nešto manji. Ne puno, jer ipak iza Photomatha stoji infrastruktura kroz koju prolazi na tisuće upita u sekundi, koriste milijuni korisnika, a opterećenje nekad varira i do 300% u jednom danu, ovisno o tome kako se koji kontinent budi.”

Ivica Dvoršćak, DevOps Enigneer

MLOps ili što radi DevOps u AI timu

Kroz cijeli razgovor o tome što DevOps znači u Photomathu kao još jedna od ključnih riječi spominje se automatizacija, odnosno dizajniranje i implementacija alata i procesa koji automatiziraju gomilu repetitivnih zadataka tako da developeri ne moraju gubiti vrijeme na njih, već se mogu posvetiti kreativnim zadacima ili rješavanju problema.
Zato su odlučili približiti DevOpse  pojedinačnim razvojnim timovima kako bi ih bolje razumjeli i mogli još bolje podržati.

U potrazi su za DevOpsima za ostale razvojne timove, a prvi koji je dobio svog dediciranog DevOpsa je Photomatov AI tim. Mladen prepričava kako je postao “timski DevOps”:

Timski DevOps sam postao jer sam želio raditi u Photomathu, a kad sam vidio oglas za poziciju koja se bavi meni novim područjem DevOpsa, MLOpsom, nije bilo puno dvojbe. Do tad sam u karijeri uglavnom bio u “centralnom” DevOps timu, ali sam uvijek radio blisko s developerima, što zbog prirode posla, što zbog taskova koje je trebalo odraditi. Ovo je bila prilika da radim još uže s developerima. No, to ne znači da nemam svakodnevnu komunikaciju i suradnju s Infra timom, odnosno ostalim DevOpsima.

Da bi se uklopio u AI tim, Mladen je trebao naučiti više o svijetu strojnog učenja te alatima koji pomažu automatizirati svakodnevne zadatke. No, s obzirom da je AI tim u Photomathu dinamičan, brzo raste i potrebe se svakim danom redefiniraju i proširuju, kontinuirano uči i spreman je na stalno suočavanje s novim izazovima:

Smatram da bi DevOpsi, posebno ako se odluče raditi unutar razvojnog tima, trebali biti agnostični na tehnologije i moći se brzo prilagoditi.

Ivica i Igor u šali kažu da ne postoje DevOps juniori. Navode da bi za juniora u DevOps području, kojeg zanima infrastrukturni dio posla, bilo poželjno da se već ima nešto iskustva u nekom od srodnih područja – developmentu ili sistem administracije i mreža:

Od budućih kolega tražimo poznavanje skriptnih jezika poput Pythona i Shella, bitno je i dobro  poznavanje Linuxa i mreža, a to znanje svaki sistemaš s iskustvom već ima.

Nadalje, ako pričamo o Core Infra i CIRE teamovima, poželjno je imati iskustvo u radu s nekim od cloud okruženja i Kubernetes platformom, te alatima za CI/CD. Dobrodošli su i sistemci i developeri koji su voljni učiti više i specijalizirati  se za navedene tehnologije.

Međutim, više od jezika i tehnologija, zanima ih stav i način razmišljanja. Idealnog kolegu opisuju kao iskusnog inženjera koji dalje želi učiti, želi rješavati probleme, slikovito – onu osobu koja će, ako nešto ne radi, “raskopati” to da vidi zašto ne radi. Traže se upornost, znatiželja i istraživački duh, kažu Photomathovi DevOpsi:

Borba s nedorečenom dokumentacijom open source alata ili otkrivanje zašto danas nešto ne radi – jesmo li mi nešto updateali ili je bio automatski update, je svakodnevica DevOps Engineera, bez obzira na čemu radi. Posebno kad se stvarno teži najnovijim tehnologijama kao što je slučaj kod nas u Photomathu.

Photomathov Infra tim

Josip Domšić Photomathu se pridružio početkom 2022. u SecOps tim kako bi radio na postavljanju sigurnosti na još višu razinu te pokazao koliko je važno odijeliti odgovornosti pozicija koje donose inovacije i izmjene te pozicija koje nadgledaju zaštitu postojećih i budućih resursa.

Josipovo dosadašnje iskustvo doista je raznoliko – bio je Security Engineer, ali i  developer, analitičar podataka, sistem administrator te DevOps inženjer, a na pitanje kako se započinje karijera u cybersecurityju, odgovara:

Odgovor je sličan kao za DevOps poziciju, nažalost, nema juniorske pozicije. Potrebno je poznavanje barem jednog srodnog područja, odnosno poznavanje sustava koji se trebaju braniti i/ili napadati.

Ako vas zanima više o radu DevOpsa u Photomathu, njihovi DevOps stručnjaci uskoro će se opširnije predstaviti na virtualnom meetupu Photomath Talks – prijavite se u Photomathov Tech Community kako biste saznali sve novosti na vrijeme.

Ako ste DevOps stručnjak koji bi htio raditi na razvoju globalno uspješnog proizvoda, svakako provjerite Photomathove stranice karijera jer trenutno imaju otvorene sljedeće pozicije: DevOps Engineer u AI timuCloud Infrastructure Reliability (SRE) Senior/Team Lead Engineer i Senior ITOps Engineera uskoro će tražiti i Core Infrastructure – Senior/Team Lead EngineerS obzirom na to da su CIRE i ITOps timovi novoosnovani, naglašavaju da su te pozicije idealne za pojedince koji imaju ambicija s vremenom postati voditelji timova.

Zanima li vas više kako rade drugi Photomath timovi, pogledajte što smo dosad pisali.

Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome). Također, upoznajte se sa stavkom 2. članka 94. Zakona o elektroničkim medijima prije no što ostavite komentar.
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime te pravu email adresu.

Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Ekskluzivno

57hours Viktora Marohnića narastao 4 puta i osigurao još 2,75 milijuna dolara

U ekskluzivnom intervjuu za Netokraciju, suosnivač brzorastuće avanturističke platforme Viktor Marohnić, sa svojim investitorima, otkriva planove.

Tvrtke i poslovanje

7 savjeta za učinkovitu izradu poslovnog plana (posebno za one koji nemaju vremena)

Nisu bez razloga velikani povijesti od Sun Tzua do Dwight D. Eisenhowera pričali o planiranju kao o svetom gralu uspjeha - i ne stoji bez razloga ona narodna: dobra organizacija je pola posla.

Tvrtke i poslovanje

Ivan Burazin pokreće novi startup – Daytonu, već ima Fortune 500 klijente

Nakon tri godine, uspostave i razvoja Infobipovog Developer Experience odjela, Ivan Burazin, pokreće novi dev projekt. Time se nastavlja njegova startuperska priča i misija koja je počela prije više od dekadu - pomagati developerima da rade lakše, brže i učinkovitije. Upoznajemo njegov novi projekt, Daytonu!

Što ste propustili

Tvrtke i poslovanje

Sretan mu 25. rođendan: Kako smo počeli koristiti Googleove proizvode – i zašto (ne)ćemo nastaviti?

Povodom Googleovog rođendana prisjećamo se njegove prošlosti, nepobitnog utjecaja na sve digitalno što danas radimo, ali gledamo i u blisku budućnost koju će obilježiti dvije ključne riječi - umjetna inteligencija i monopol. Nismo propustili priliku ni nostalgično se prisjetiti pozivnica za Gmail, Googleovih pokušaja da napravi društvenu mrežu ili prvih susreta s Googleom, što je za neke zapravo bio YouTube.

Novost

U ZICER-u startupe čeka 150.000 eura, a prijave za akceleracijske programe traju još samo ovaj tjedan

Vodeći hrvatski startup hub ZICER otvorio i program za uspješno lansiranje na globalno tržište.

Intervju

500 tisuća korisnika koristi tehnologiju ovog hrvatskog AI startupa

S vremena na vrijeme, pojavi se neki startup koji marljivo radi "ispod radara", a onda odluči podijeliti svoju priču. Prvi donosimo intervju s TensorPixom koji od nedavno broji preko pola milijuna korisnika.

Izvještaj

Lekcije inženjerke iz Shopifya: kako koristiti AI za brži, bolji i lakši razvoj softvera?

Umjetna inteligencija i inženjeri. Nekada se vole, nekada mrze, ali činjenica je da AI inženjerima može olakšati pisanje koda... (ako i sami znaju što rade).

Izvještaj

Sofascore i Span: Zašto se nismo prodali? Jer nam to ne treba – ako imaš tri auta, možeš voziti samo jedan.

Investicije i preuzimanja domaćih tvrtki glavne su teme naše male poduzetničke scene, ali koliko god se pričalo, često tema o neovisnosti ostane postrani. Srećom, ove godine se otvorila na 16. Weekendu.

Panel

“Design Handoff” je proces zbog kojeg developer i dizajner ne moraju imati “standoff”

Predaja bilokakvog projekta ne završava s vašom točkom na kraju - nego svih kojih se taj projekt usko tiče. Uz Neuralab prolazimo kako od “ja sam svoje riješio” doći do kvalitetnog, strukturiranog “design handoffa” koji će značajno olakšati život svima uključenima: dizajnerima, developerima, PM-ovima, klijentima…