Šta radi backend inženjer?
piše: Dejan Prokić, Nordeus
Kako izgleda jedan tvoj radni dan?
Radim u Nordeusu kao Backend inženjer, što znači da programiram servere za igre. Nordeus je kompanija koja se bavi razvojem mobilnih igara i naša najuspešnija igra je Top Eleven, “football manager” simulacija. Ja radim baš na ovoj igri.
Moj radni dan počinje uobičajenim ritualima pre posla, kao što su doručak sa porodicom i odvođenje dece u školu i vrtić. Pošto to obavim, krećem na posao pešice. Tih desetak minuta šetnje mi je jako važno i znači mi da se psihički prebacim iz kućnog okruženja na poslovno.
Na posao stižem oko 8:30. Imam oko sat vremena do uobičajenog jutarnjeg stand-up sastanka da odradim neke zadatke u miru i punoj koncentraciji jer većina kolega dolazi na posao baš pred taj sastanak. Ovaj sat mi je najproduktivniji u celom danu.
Na stand-up sastanku se ceo tim sastaje i tu kratko popričamo na čemu ko šta radi i da li ima nekih problema. To može uticati na to čime ću se baviti toga dana, na primer da nekom kolegi pomognem u nečemu. Takođe, radni dan mi se jako razlikuje ukoliko smišljamo šta ćemo sledeće da pravimo ili ukoliko smo već smislili pa treba da isprogramiramo. Ukoliko je reč o smišljanju, tada se većinu dana bavim diskutovanjem sa kolegama na koji način da realizujemo ideju koju su dizajneri smislili a da to bude optimalno sa inženjerske strane. Najviše diskutujem sa samim dizajnerima i tada imam priliku da doprinesem svojim idejama i to me jako ispunjava.
Ukoliko je reč o programiranju već smišljene i razrađene ideje, tada prvi deo dana do ručka idem po spisku zadataka i radim to što smo zamislili. Drugi deo dana koristimo da rešimo nedoumice ili probleme koji su se pojavili u međuvremenu, što je takođe diskusija slična prethodno pomenutoj, samo u ovom slučaju češće sa drugim programerima na rešavanju inženjerskih problema. Ukoliko nema izazova ove vrste, onda i u ovom delu dana programiram ali je koncentracija već popustila pa se ne upuštam u kompleksne zadatke.
Na kraju radnog vremena sumiram šta sam uradio u tom danu, pripremam se za sledeći dan tako što razmislim o narednim zadacima i isključim računar.
Kako izgleda okruženje u kom radiš?
Iako Nordeus nudi hibridni model rada, okruženje u kojem radim kao i ljudi sa kojima sarađujem me inspirišu tako da preferiram rad iz kancelarije. Dodatno, mnogo mi više prija da vodim diskusije uživo i zajedno sa kolegama razvijam ideje koje će se svideti našim igračima nego da to radimo preko video poziva.
Nordeus ima modernu zgradu i lep radni prostor. Kancelarije su pravljene za četvoro do petoro ljudi, tako da nam to omogućava da fokusirano radimo. Imam komforan radni sto, udobnu stolicu, fine koleginice i kolege. Iza mene je zid koji koristimo kao tablu kada zajedno rešavamo neki problem ili razrađujemo neku ideju. Ceo spoljni zid zgrade je prozor, tako da je kancelarija lepo osvetljena, a imamo i pogled na Fakultet dramskih umetnosti i šumu, što mi posebno prija. Za mene jako važan detalj je i udobna sofa koju nekada koristim da dremnem posle ručka, kako bih povratio energiju za ostatak radnog dana.
Koja sredstva za rad koristiš, odnosno koji hardver?
Svi u firmi imamo službeni laptop računar zbog mobilnosti u radu i mobilni telefon jer pravimo mobilne igre a volimo i da ih igramo. Moj računar je Lenovo ThinkPad X1 Extreme sa obaveznim SSD diskom. Njega povezujem sa docking stanicom na koju su povezana dva monitora, ThinkPad tastatura, miš Logitech MX Master, a imam i bežične Sony slušalice. Mobilni telefon je Samsung koji zna i dva, tri puta u toku radnog vremena da se isprazni i napuni kada u punoj brzini razvijamo neku novu funkcionalnost za igru.
Koje softvere koristiš?
Operativni sistem na poslovnom laptopu mi je Linux Ubuntu, a kod kuće imam i Mac i Windows. Telefon je na Androidu, a privatno koristim i iPad da budem u toku i sa iOS sistemom. Za sam rad najviše koristim IntelliJ IDEA koji ima integrisane sve moguće alatke tako da retko imam potrebu za još nekim programom. Od tih alatki pomenuću git klijenta i klijenta za bazu podataka. Kao backend inženjer dosta vremena provodim i u Terminalu, a naravno potreban mi je i browser. Od njih koristim Chrome i Firefox i u njima radim sve što nije programiranje. Tu spada GMail i Slack za komunikaciju, Miro za virtuelnu tablu, Jira za upravljanje projektima, Google Documents, Spreadsheets, Calendar. Ostali softveri koje manje koristim su Zoom za video pozive i Unity da bih na kompjuteru pokrenuo igru na kojoj radim.
Kako izgledaju projekti na kojima radiš?
Kao što sam pomenuo na početku moja specijalnost je programiranje servera za mobilne igre. U poslednje četiri godine radim na igri Top Eleven što mi daje priliku da moj rad vide milioni ljudi iz celog sveta. Gde god u igri da uđete ja sam vam tu nešto čačkao. U timu smo se usaglasili da sva logika u igri bude urađena na serveru ukoliko je moguće, tako da iako se sam server „ne vidi”, dosta mog rada je u stvari vidljivo na klijentskoj aplikaciji, odnosno na telefonu.
Neki zanimljivi zadaci sa kojima se susrećem su kada projekat zahteva izmenu na više specijalizovanih servera pa je potrebno biti pažljiv da se ne pokvari neka već postojeća funkcionalnost u igri. U tome mi pomaže testiranje, koje se trudim da uradim što je više moguće automatski, odnosno da isprogramiram samo testiranje. Takođe zanimljivi problemi nastaju kada radimo na funkcionalnosti za veliki broj korisnika koji istovremeno treba da je koriste, ili kada je reč o radu sa velikim količinama podataka. Tada je potrebno napraviti program sa što boljim performansama i tu mi najviše pomaže iskustvo koje sam stekao na prethodnim projektima. Nekada mi je potrebna i pomoć kolega koji su specijalizovani za konkretan problem ili je čak potrebno da dodatno izučim kako nešto radi.
Šta najviše voliš na svom poslu?
Ono što me najviše ispunjava na poslu je ceo kreativni proces stvaranja novih funkcionalnosti u igri. Počevši od smišljanja gde ceo tim učestvuje u dizajniranju delova igre do najsitnijih detalja. Zatim samo programiranje i posmatranje kako iz dana u dan to sve više liči na ono što smo zamislili. I na kraju samo igranje toga što smo napravili i posmatranje naših korisnika kako to koriste i zabavljaju se uz ono što smo mi napravili. Njihovi pozitivni komentari su najbolja nagrada za uloženi trud. Naravno, nekad se desi da im se ne dopadne nešto što smo napravili i za nas posao nije završen dok ne doteramo taj deo igre tako da se većini korisnika svidi. Svaki deo posla mi se sviđa na svoj način. A najviše volim to što u svakom koraku razvoja igre ja mogu da dam svoj doprinos.