Ko je i kako radi Lead programer/-ka (PC AAA)

Lead programer/-ka je u razvoju video-igara veoma tehnički orijentisana uloga, međutim, ne i isključivo tehnička. Drugi dio posla ove pozicije, zbog kog se zove Lead, podrazumijeva vođenje tima koji se bavi programiranjem.

Postoje određene specifične odlike vezane za Lead programere koji se bave razvojem AAA igara. AAA igra podrazumijeva naslove sa „tri petice” („A” u engleskom). To su igre sa velikim budžetom od kojih se i očekuje veliki finansijski uspjeh, kao što su Call of Duty, Assassin’s Creed i druge. Što su projekat i tim veći, to se osoba na ovoj poziciji više bavi menadžerskim dijelom posla, a manje tehničkim. 

Ako imamo u vidu da pomenuti naslovi nastaju godinama i da više čitavih studija od po nekoliko stotina zaposlenih rade na njima, jasno je zašto vođenje tima postaje najznačajniji deo posla Lead programera/-ke. Dakle, u manjim timovima i na manjim projektima fokus ove uloge je više na tehničkom aspektu. 

Svakako su u oba slučaja tehnička znanja esencijalna. Lead programer/-ka mora imati miks tehničkih znanja i interpersonalnih vještina da bi svoj posao obavljao/-la dobro i efikasno. Treba naglasiti i da je korisno da Lead programer/-ka ima strast prema video-igrama, jer je to čest zahtjev u oglasima za ovu poziciju.

KO JE LEAD PROGRAMER/KA?

Lead programer/-ka je osoba koja se nalazi na čelu tima programera i odgovorna je za realizaciju rada na video-igrama. Raspodjeljuje posao unutar tima, daje upustva i pruža drugima pomoć u obavljanju zadataka, osmišlja workflow kako bi se rad mogao najbolje realizovati i, naravno, bavi se tehničkim zaduženjima koje pozicija podrazumijeva. 

Pored toga, Lead programer/-ka je zadužen/-a i za brigu o samom timu, što znači da mora znati koji su najbolji načini da pojedinačni članovi tima razviju svoje tehničke sposobnosti.

Lead programer/-ka ima dužnost da učestvuje u intervjuisanju novih zaposlenih, jer je odgovoran/-a za selektovanje kandidata po kriterijumu njihovog tehničkog znanja. Na intervjuu je zato zadužen/-a za tehnička pitanja i može zadavati i pregledati tehnički zadatak.

KAKO RADI LEAD PROGRAMER/KA?

Da bismo razumjeli šta radi Lead programer/-ka, moramo sagledati koja su znanja i vještine neophodne za ovu poziciju.

Prvo i osnovno, nephodno je da Lead programer/-ka ima tehnička znanja iz objektno orijentisanog programiranja, što u najvećem broju slučajeva podrazumijeva pozavanje C++ i C# kao glavnih programskih jezika za razvoj video-igara.

Sljedeće na spisku jeste poznavanje alata za rad, gde stvar postaje malo komplikovanija. Velike kompanije vrlo često imaju svoje interne alate, koji podrazumijevaju dodatno učenje. Poznavanje eksternih alata svakako ne može da škodi, ali je tokom onboarding-a novih programera period obuke sa internim alatima gotovo izvjestan, a upravo je Lead programer najčešće u ulozu onog ko obučava nove članoce tima.

Po pitanju internih alata ovaj čanak, kao ni bilo koji drugi javno dostupni materijal, ne može biti od velike pomoći, pošto su oni poslovna tajna. Što se tiče javno dostupnih alata, izdvojili bismo sljedeće kao najznačajnije: Swarm (Perforce), Bloomberg, Quickbuild, Jira, Confluence i Everything.

Potom bi se na spisku stvari neophodnih za Lead programer/-ka našle sposobnost raspodjele posla odgovarajućim programerima i savjetovanje tima o tehničkom aspektu njihovog zadatka. Kada se Lead programeru/-ki zada mandat (podfaza u razvoju AAA igre), to znači da se određeni dio posla mora završiti do definisanog vremena i na zadovoljavajućem nivou kvaliteta. Zaduženje ove pocizije jeste da upravlja svojim timom tako da se mandat uspješno realizuje.

Dalje, jedno od važnijih zaduženja jeste i regrutovanje novih kandidata. Lead programer/-ka ima dužnost da definiše koje tehničke vještine bi potencijalni kandidati trebalo da imaju, kao i da napravi tehnički test. Jedan od glavnih alata koji se koristi za ovu svrhu jeste CodinGame, koji pomaže da se test napravi brzo i efikasno.

Za obavljanje svih do sada navedenih dužnosti tehničke vještine nisu dovoljne. Kako nijedna menadžerska pozicija ne može bez komunikacije, tako ne može ni Lead programer/-ka. Ovo znači da svako na ovoj poziciji mora uporedo da razvija i korpus vještina koje se zovu soft skills. Tu spadaju aktivno slušanje, rezolucija konflitka, networking, upravljanje vremenom i jasna komunikacija. Ove vještine se vrlo često razvijaju generalnom socijalizacijom tokom života, ali se mogu i naučiti u procesu ličnog razvoja i izborom široke literature na tu temu.

MALI ZAKLJUČAK

Ovo je samo generalni pregled pozicije Lead programera/-ke, a vi još mnogo toga možete saznati ako odlučite da se sami posvetite istraživanju. Takođe, treba imati u vidu i da se zaduženja u okviru ove pozicije mogu razlikovati u zavisnosti od firme i njene veličine. 


Zbog brzog razvoja novih tehnologija sasvim je za očekivati da se pozicija Lead programera promijeni u budućnost, što je realnost i svih drugih tehničkih pozicija. Zato je bitno da ste uvijek u toku i relevanto informisani o svakoj tehničkoj poziciji koja vas može interesovati.

DIREKTNO OD LEAD PROGRAMERA

Ukoliko biste željeli da saznate više o samom poslu, a i da čujete više od osobe koja je zaposelna baš u ovoj ulozi, i to u domaćem ogranku Ubisoft-a, predlažemo da poslušate odličan razgovor sa Nenadom Baščarevićem.

Ono što ćete čuti već na samom početku jeste da se Nenad nije bavio objektno orijentisanim programiranjem u svojoj karijeri prije nego što je prešao u gejming industriju, pa se nadamo da to može ohrabriti svakoga da razmisli o karijeri u gejmingu, bez obzira na prethodna radna iskustva.

Novosti