ŠTA 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 deo posla ove pozicije, zbog kog se zove Lead, podrazumeva 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 podrazumeva naslove sa „tri petice” („A” u engleskom). To su igre sa velikim budžetom od kojih se i očekuje veliki finansijski uspeh, 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 delom 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 veš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 zahtev 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. Raspodeljuje 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 podrazumeva. 

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 razumeli šta radi Lead programer/-ka, moramo sagledati koja su znanja i veš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 podrazumeva pozavanje C++ i C# kao glavnih programskih jezika za razvoj video-igara.

Sledeće na spisku jeste poznavanje alata za rad, gde stvar postaje malo komplikovanija. Velike kompanije vrlo često imaju svoje interne alate, koji podrazumevaju 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 izvestan, 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 sledeć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 raspodele posla odgovarajućim programerima i savetovanje 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 deo 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 uspeš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 veš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 veš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 veština koje se zovu soft skills. Tu spadaju aktivno slušanje, rezolucija konflitka, networking, upravljanje vremenom i jasna komunikacija. Ove veš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 promeni u budućnost, što je realnost i svih drugih tehničkih pozicija. Zato je bitno da ste uvek u toku i relevanto informisani o svakoj tehničkoj poziciji koja vas može interesovati.

DIREKTNO OD LEAD PROGRAMERA

Ukoliko biste želeli 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 pre 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

Ako te interesuje koncept art, ovo je prilika koju ne treba propustiti!
Uskoro se otvaraju prijave za besplatne Prop i Environment kurseve u Onyx akademiji!
Razgovarali smo sa preko 20 seniora u domaćem gejmingu. Kad pogledaš ovih šest epizoda trebalo bi da ti bude mnogo jasnije čime u gejmingu možeš i želiš da se baviš