13.04.2022. ·
10 min

Šta radi CTO

Šta radi CTO

Kad pomislim CTO, zamislim Stack Overflow u ljudskoj formi: nekoga ko zna sve o svim tehnologijama za razvoj softvera ikada, ali isto tako sjajno barata sa ekonomijom, marketingom, ljudskim resursima… Hodajući Google možda? U svakom slučaju, meni lično je ova pozicija i šta CTO konkretno radi prilično apstraktna. Zato reših da popričam sa čovekom koji ovaj posao i radi (i uči u procesu), da mi objasni šta zapravo radi CTO. Moj sagovornik je Milan Stojanović, CTO kompanije Ingsoftware iz Niša. Hvala za vreme, Stojke!

Koliko dugo radiš kao CTO? Da li ti je ovo prvi takav posao?

Da, ovo mi je prva CTO pozicija u karijeri. Pre ovoga sam bio Technical Project Manager, pre toga Java Team Lead, a pre toga Java Developer. Zvanično, na CTO poziciju sam unapređen u drugoj polovini 2020. godine. Međutim, preuzimanje odgovornosti je bio proces koji je trajao godinu i po dana. Iako smo imali jasno definisan scope odgovornosti koji CTO treba da preuzme, prosto nije bilo izvodljivo da se sve odgovornosti preuzmu odmah, već je čitav proces morao biti postepen.

Kako se tvoja uloga promenila u odnosu na prethodnu?

U Ingsoftware sam došao 2015. godine, kao Java developer. Iako sam postepeno dobijao sve više odgovornosti (najpre team lead, pa potom i project management), sve do preuzimanja trenutne pozicije, moj kontekst je manje-više uvek bio - jedan projekat i jedan tim. Kada sam preuzeo CTO poziciju, promena je bila drastična: sada stvari moram da posmatram iz mnogo različitih perspektiva (saradnja sa sales, marketing, IT, HR odeljenjima), a moj kontekst čine puno timova i projekata (što postojećih, što potencijalnih). Dakle, CTO pozicija mi je dala radikalno drugačiju perspektivu i set odgovornosti - ali i mnogo širu sliku poslovanja cele kompanije.

Pre svega, možeš li da nam daš opis svojih zaduženja u kompaniji, kako bismo razumeli opseg tvog posla (tj. da li je posao CTO-a uopšte moguće svesti na listu zaduženja i odgovornosti)?

CTO je pozicija koja se definiše na osnovu specifičnih potreba same kompanije i njene misije i vizije. Dakle, ono što ja radim u Ingu verovatno se značajno razlikuje od CTO pozicije u nekom startapu ili softverskoj kompaniji sa sopstvenim proizvodom, ili pak u kompaniji druge veličine. Ingsoftware je service-based kompanija (bavimo se uslugama razvoja softvera), sa širokim tech portfoliom (nismo specijalizovani za jednu konkretnu tehnologiju) i 100+ zaposlenih (a intenzivno radimo na tome da nas do kraja godine bude 200) - moje odgovornosti reflektuju upravo taj specifični kontekst.

Moje obaveze su, kao što rekoh, vezane za više različitih domena:

  • Prodajno odeljenje edukujem o developerskoj perspektivi: kao kad odeš u prodavnicu da kupiš TV i očekuješ da ti radnik ispriča sve specifikacije proizvoda, tako sam i ja imao zaduženje da naše sales ljude obučim da prezentuju kompaniju na pravi način: koji načini saradnje, tech stack, metodologije, standardne prakse se koriste u kompaniji i kako da to prezentuju. Takođe, sa njima su mi zaduženja i da radim evaluaciju novih poslovnih prilika iz tech fit i tech risk perspektive: da li je poslovna prilika koju razmatramo nešto u šta želimo da se upuštamo i šta možemo da iznesemo kao firma.
  • Marketing odeljenju dođem nešto poput dežurnog konsultanta u tech aspektima njihovih aktivnosti - npr. mogu da pomognem davanjem ideje kako da privučemo nove developere, pomognem oko tech-related sadržaja za promo materijal i slično.
  • HR odeljenju npr. pomažem da definišu Technical Requirements za oglase za posao, pomažem oko definisanja tehničkog dela procesa selekcije kandidata (intervjui, testovi), učestvujem u procesu selekcije intervjuera, kao i njihovoj obuci. Ponekad, za high-profile kandidate, učestvujem i lično u intervjuima. Zatim, učestvujem u osmišljavanju i organizaciji našeg sistema praksi (u koje inače ulažemo dosta truda). Poseban izazov ovde je organizovati sve ove procese na konzistentan način, budući da Ing pokriva širok spektar tehnologija.
  • Direktno sam nadležan za rad IT odeljenja, čije glavno zaduženje je da se osigura da firma ima osnovnu hardversku i softversku infrastrukturu, a radnici pristup IT podršci.
  • I najzad, najveće odeljenje - odeljenje Razvoja (tzv. Production): odgovoran sam za definisanje tehnološke strategije firme, definisanje standardnih tehnologija, alata, načina rada, ali i za brigu o efikasnosti i kvalitetu pruženih usluga. Ovde je naravno najveći izazov - osigurati se da se sve high-level odluke zapravo i propagiraju kroz timove.

Kako izgleda tvoja radna nedelja - šta je neki osnovni paket taskova i zaduženja?

Neke nedelje su radikalno drugačije od drugih, ali pokušaću da navedem neke od konkretnih aktivnosti: rad sa odeljenjem za prodaju na evaluaciji različitih poslovnih prilika, sastanci sa mentorima za prakse (prezentujem principe mentorisanja i ciljeve prakse, pomažem u pripremi projekata za prakse), sastanci sa potencijalnim klijentima ili partnerskim kompanijama, rad sa developerima koji su “na klupi” (obezbediti im da pametno troše svoje vreme, kroz organizaciju istraživanja i učenja u skladu sa njihovim interesovanjima i strateškim potrebama firme), evaluacija nekog novog alata ili tehnologije, rad sa IT odeljenjem oko nabavke nove opreme ili licenci, konsultacije sa inženjerima oko nekog naročito važnog izazova na projektu, koordinacija sa marketing ljudima oko stvari poput ovog intervjua 😊, analiza tržišta, konkurencije, tech landscape-a i usklađivanje strategije firme sa tim…

Koliko si često ti osoba koja daje poslednju reč?

U praksi je to verovatno svakodnevno, ali zapravo najviše zavisi od konteksta i od toga u čijem je ownership-u data aktivnost. Jer kada je u pitanju kompanija naše veličine, nemati jasno definisan ownership i nadležnosti je… veliki luksuz. Zapravo, moj posao i nije da svaki čas nešto lično odlučujem i mikromenadžujem. Na meni je zapravo češće da samo kao konsultant dam svoj input na neku temu. Uglavnom sam odgovoran da definišem kojim stvarima uopšte želimo da se bavimo i zašto, potom da se osiguram da imamo osmišljene i implementirane procese i procedure za obavljanje tih aktivnosti, a onda da nadležnost prepustim relevantnim ljudima. Čak i to definisanje i osmišljavanje je više fasilitatorski i kolaborativni posao, no moje samostalno odlučivanje.

Prost primer - prakse - na meni je da se osiguram da imamo definisan sam koncept praksi u Ingu, kakva predznanja očekujemo od praktikanata, kako bi trebalo da radimo tehnički deo procesa selekcije kandidata, koje tehnologije i veštine treba da pokrijemo na praksi, pomoću kakvih projekata, šta se očekuje od mentora, i sl. A sama realizacija svega toga je potom na marketing ljudima (za promociju praksi), HR-u (za selekciju kandidata), inženjerima (za mentorisanje praktikanata).

Prema tvom mišljenju, kojim veštinama treba da vlada CTO (osim, naravno, tehničkog znanja)?

Dobro pitanje: nije mi lako da svedem na taksativnu listu hard i soft skill-ova, ali iz mog iskustva - što je veća odgovornost, to je veći akcenat na soft skill-ovima. Od hard skill-ova bih naveo svega dve stvari: izrazito dobro poznavanje engleskog jezika (iako zvuči banalno, mislim da je ovo nemoguće prenaglasiti), kao i iskustvo iz prve ruke u radu sa relevantnim tech stack-om. Sve ostalo su soft skill-ovi… Iskustvo u načinu poslovanja tvoje kompanije (koji su modeli usluga, modeli prihoda, itd.). Poznavanje relevantnog tehnološkog i tržišnog landscape-a. Nemilosrdna prioritizacija taskova (jer posla je uvek daleko više no vremena). Efikasno upravljanje vremenom. Multi-tasking i česta promena konteksta. Ono što je meni lično bilo najizazovnije - donošenje odluka u moru nepotpunih informacija (dealing with ambiguity). Verovatno najbitnija od svih soft veština - komunikacija, tj. međuljudski odnosi. A za zdravu komunikaciju, empatija je alfa i omega. Na ovoj poziciji moraš da, kako kažu - wear many hats - tj. malo da glumiš klijenta, malo prodavca, malo developera, malo korisnika, malo menadžera, itd. A empatija je upravo sposobnost da se staviš u tuđu kožu, da razumeš tuđu perspektivu, koliko god ti ona inicijalno bila strana. I da - za mene to zapravo jeste skill, kao i sve ostalo - da se naučiti i trenirati, čak i za nas introverte.

Na temu inženjerskih veština koje se vežbaju izvan razvojnog okruženja, nedavno me oduševio ovaj kratak i pragmatičan članak. A nedavno sam pročitao i citat Satya Nadella-e, kojim je on pokušao da dobre lidere sublimira u svega tri osobine: leaders must create clarity, generate energy, and deliver success (despite circumstances). Iz nekog razloga, taj “mentalni frejmvork” leadership-a je na mene ostavio veliki utisak.

Koliko vremena provodiš baveći se biznisom, a koliko često se baviš ljudima i samim projektom?

Nisam siguran da umem da rezonujem na baš taj način, tj. da u glavi podelim to na takve disjunktne kategorije obaveza. Čini mi se da je u praksi to uvek zdrav miks i jednog i drugog. 

Jel kodiraš i dalje ponekad? :)

I wish! Mada, ekipa s posla me zeza da sam spreadsheet programer 😅.

Povremeno se desi, ukoliko se evaluira neka nova tehnologija a tehnička dokumentacija mi nije dovoljna da steknem pravu sliku, da iskodiram neki jednostavan primer programa kako bih demistifikovao tu tehnologiju. Ali generalno, ne kodiram već par godina. Štaviše, usudiću se da (stidljivo) izjavim da mi kodiranje zapravo i ne nedostaje previše 😅. Međutim, ono što mi nedostaje iz tog vremena je osećaj ispunjenosti nakon odrađenog posla, jer rezultate svog rada vidiš skoro pa odmah. Taj feedback loop je u developmentu jako brz, dok na trenutnoj poziciji, neretko je potrebno par meseci do godinu dana da bi rezultati mog rada postali opipljivi.

Omiljena stvar u poslu ti je..

U apstraktnom smislu - par stvari: rad na zdravoj atmosferi i kulturi unutar firme, ceo taj community-building aspekt posla, propagiranje vrednosti firme i leadership principa, ali i satisfakcija kada vidiš da tvoj rad ima impakt na čitavu kompaniju.

U konkretnom smislu - to je svakako organizacija Tech Talk-ova - naših internih meetup-ova, koje organizujemo svakog petka, praktično bez izuzetka, još od 2018. godine.

Bonus odgovor - to što sam (samoproklamovani) boardgame ambasador firme 😎. Naime, u firmi imamo poveću kolekciju društvenih igara, koje igramo na našim redovnim Gaming večerima.

A manje omiljeni deo posla? :)

Nadam se da Miško (CBO u Ingu) ovo neće da čita 😇 - ispomoć za pisanje proposal-a u procesu prodaje, tj. rad na estimacijama za potenicijalne klijente. Jer u tim veoma ranim fazama pregovora, kao inženjer barataš gomilom pretpostavki i nepotpunim informacijama, a klijenti (i pored razumevanja za agile i iterativni pristup razvoju softvera) opet očekuju neke konkretne brojke po pitanju budžeta i vremena.

E da, i cela ona priča odozgo o tome kako se plodovi mog rada vide tek nakon dužeg vremena…

Koje savete bi dao ljudima koji žele da se bave tvojim poslom - šta da uče, na šta da obraćaju pažnju?

Ne smatram se kompetentnim da dajem neke univerzalne odgovore, tako da su svi odgovori iz ličnog iskustva i to konkretno u Ing-u.

Meni je puno značilo to što mi je oduvek zanimljivije bilo da steknem tu neku “inženjersku širinu”, no da budem usko specijalizovani ekspert. Kapiram da u mnogim startapovima i kompanijama sa fokusiranijim tech stack-om to verovatno ne pije vodu, ali ja lično naginjem tom “jack of all trades, master of (n)one” taboru.

Kao developer, uvek sam se trudio da vidim i malo dalje od svog taska, pa bih savetovao ljude da treniraju taj tzv. big picture thinking: nemoj samo da te zanima da iskodiraš svoj task, probaj najpre da razumeš non-functional implikacije po širi sistem (arhitektura, security, performanse, itd.), a potom, probaj da skapiraš i implikacije po krajnjeg korisnika, a najzad i po biznis. Zapravo, mislim da je ovde u pozadini svega - ogromna znatiželja, glad za učenjem i stalnim usavršavanjem.

Takođe, mislim da je važno da ta znatiželja seže i malo dalje od tehnologije i koda - korisno je da se interesuješ i za ljude i procese (čak i u drugim odeljenjima firme). Isprobaj se u ulozi mentora ili intervjuera, pomozi menadžeru u razgovoru sa klijentom, vežbaj davanje feedback-a, pomozi HR-u ili marketaru u nastupu na nekom sajmu. Vežbaj empatiju kroz rad sa ljudima. Ne plaši se mrdanja iz zone komfora. Štaviše, budi proaktivan u tome. Utegni engleski, i pisani i verbalni. 

Kad je teško, ne budi onaj što samo kuka, već budi taj što najpre deliver-uje uprkos tome što je teško, a onda predlaži konstruktivna rešenja za originalni problem. Mogao bih ovako verovatno još dosta, ali mislim da je dovoljno 😊.

Oceni tekst

46 osoba je glasalo, prosečna ocena: 5
Jovana Milosavljević Jovana Milosavljević

Sad sam senior developer, a nekada davno sam bila atraktivna plavuša koja se bavi marketingom :). I dalje se tešim da bar nisam oćelavela od čupanja kose od koda :) U slobodno vreme volim da čitam, pijem pivo, osvajam kafane i sanjam da ću kad porastem biti venture capitalist.

0 komentara

Iz ove kategorije

Svi članci sa Bloga