QA softverski inženjer/-ka je vitalni član tima za razvoj video-igara i odgovoran/-a je za obezbeđivanje kvaliteta i stabilnosti video-igre pre njenog objavljivanja. Primarna uloga mu/joj je da razvije i sprovodi sveobuhvatne strategije testiranja kako bi identifikovao/-la i prijavio/-la sve nedostatke, bagove ili probleme koji mogu nastati tokom procesa razvoja igre. Blisko sarađuje sa programerima i gejm dizajnerima kako bi razumeo/-la mehanike, karakteristike i ciljeve igre, što mu/joj omogućava da dizajnira efikasne planove testiranja i testne slučajeve.
QA softverski inženjer/-ka obavlja različite vrste testiranja, uključujući funkcionalno testiranje, regresiono testiranje, testiranje performansi i testiranje kompatibilnosti kako bi potvrdio/-la funkcionalnost igre, korisničko iskustvo i performanse na različitim platformama i hardverskim konfiguracijama. Koristi specijalizovane softverske alate za praćenje grešaka i upravljanje njima, dokumentuje rezultata testiranja i prenosi probleme development timu radi njihovog rešavanja. Pored toga, sarađuje sa drugim članovima tima kako bi poboljšao/-la ukupni kvalitet igre, dajući feedback i predlažući poboljšanja ili optimizacije da bi se igračima obezbedio/-la prijatno iskustvo igranja.
Alati
Jira
TestRail
Selenium
JMeter
Git
VirtualBox
PlayStation SDK
Wireshark
Crucible
QA softverski inženjer/-ka blisko sarađuje sa raznim drugim pozicijama u gejming industriji kako bi se osigurao/-la uspešan razvoj i izdavanje igre visokog kvaliteta. Sarađuje sa programerima i gejm dizajnerima kako bi razumeo/-la mehanike, karakteristike i ciljeve igre. Ova saradnja mu/joj omogućava da razvije efikasne planove testiranja i testne slučajeve koji su u skladu sa predviđenom funkcionalnošću igre i korisničkim iskustvom. Daje vredan feedback development timu pomažući im da identifikuju i reše sve greške ili probleme koji se mogu pojaviti tokom procesa testiranja.
Pored toga, QA softverski inženjer/-ka često sarađuje sa producentima i Project Manager-ima kako bi utvrdio/-la vremenske okvire projekta, dao/-la prioritet zadacima i saopštio/-la napredak i sve identifikovane rizike ili izazove. Može da radi sa artistima i audio inženjerima kako bi osigurao/-la da vizuelni i zvučni elementi igre funkcionišu kako je predviđeno. Povezuje se sa timovima za lokalizaciju kako bi testirao/-la i verifikovao/-la funkcionalnost igre na različitim jezicima i u različitim kulturnim kontekstima. Saradnja obezbeđuje da proces razvoja igre ostane efikasan i da konačni proizvod ispunjava željene standarde kvaliteta, pružajući igračima besprekorno i prijatno iskustvo igranja.
U zavisnosti od senioriteta, od QA Software Engineer-a se očekuje da može da savlada, uradi i isporuči sledeće stvari:
U zavisnosti od senioriteta, od QA Software Engineer-a se očekuje da može da savlada, uradi i isporuči sledeće stvari:
Za sektor gejm testinga u gejming industriji, preporučuje se završetak srednje škole s fokusom na računarstvo. Univerzitetski stepen u računarskim naukama ili srodnom polju može pružiti temeljnu teorijsku osnovu. Pored toga, pohađanje specifičnih kurseva o testiranju softvera ili gejming industriji dodatno razvija potrebne veštine.
Važno je sticanje praktičnog iskustva kroz rad na projektima i volontiranje u gejming kompanijama. Mreženje s profesionalcima iz industrije, prisustvovanje konferencijama i aktivno učešće u gejming zajednicama dopunjuju obrazovni put, omogućavajući kandidatima da izgrade uspešnu karijeru u gejm testiranju.
Da bi se prijavio/-la za ovu poziciju, postoji nekoliko ključnih zahteva i kvalifikacija koje treba da poseduješ. Prvo, čvrsta osnova u principima i metodologijama testiranja softvera je neophodna. Ovo uključuje poznavanje različitih tehnika testiranja, dizajn test slučajeva, praćenje grešaka i analizu rezultata testa. Poznavanje upravljanja testiranjem i alata za praćenje grešaka, kao i iskustvo u kreiranju i izvršavanju planova testiranja je od velike koristi. Pored toga, veoma je poželjno da poznaješ programske jezike koji se obično koriste u razvoju video-igara, kao što su C++, C#, Python ili Java.
Ključno je da dobro razumeš gejming industriju i procesa razvoja igara. Poznavanje game engine-a i tehnologija specifičnih za video-igre će doprineti tvom razumevanju mehanika, pipeline-a renderovanja i zahteva specifičnih za određenu platformu. Dobre komunikacijske veštine su, takođe, neophodne za efikasnu saradnju sa development timom, gejm dizajnerima i drugima. Oko za detalje, sposobnost rešavanja problema i sposobnost prilagođavanja i učenja novih alata i tehnologija su veoma cenjene osobine u ovoj ulozi. Strast za gejmingom i oko za kvalitet dodatno će ojačati tvoju aplikaciju za ovu poziciju, pa gledaj da ih prikažeš kroz svoju prijavu.
Tokom intervjua možeš očekivati kombinaciju tehničkih pitanja i pitanja u vezi sa tvojim ponašanjem u timskom okruženju. Pored regrutera, intervjuu mogu prisustvovati i predstavnici QA tima, programeri i gejm dizajneri. Oni će proceniti tvoje znanje i iskustvo u metodologijama testiranja softvera, razumevanje procesa razvoja video-igara, veštine rešavanja problema i sposobnost da efikasno radiš u timu. Oni se, takođe, mogu raspitati o tvom poznavanju relevantnih alata i tehnologija, pažnji koju posvećuješ detaljima i tvom pristupu obezbeđivanju kvaliteta feature-a. Pored toga, veštine komunikacije i saradnje, kao i strast za gejmingom, dodatno doprinose proceni tvog uklapanja u tim i kompaniju. Ovo su uobičajena pitanja na intervjuu:
Tehnički zadatak obično uključuje procenu tvojih praktičnih veština i sposobnosti za rešavanje problema u simuliranom ili stvarnom scenariju. Ovaj zadatak omogućava da pokažeš svoje razumevanje principa testiranja softvera i sposobnost da ih efikasno primeniš. Zadatak može uključivati testiranje određenog feature-a ili funkcionalnosti igre, identifikovanje i dokumentovanje grešaka ili kreiranje test slučajeva i test skripti za validaciju ponašanja igre. Mogu ti se obezbediti skup zahteva, asset-a ili igrivi build sa kojim ćeš raditi.
Tehnički zadatak je dizajniran da proceni pažnju koju posvećuješ detaljima, tvoj pristup identifikaciji potencijalnih problema, sposobnost da tačno reprodukuješ i opišeš greške, i tvoje komunikacijske veštine u predstavljanju svojih nalaza. Zadatak, takođe, može da proceni tvoje razumevanje automatizacije testiranja, pri čemu se može tražiti da razviješ automatizovane test skripte ili da pokažeš svoje znanje o relevantnim alatima i framework-ovima. Sve u svemu, tehnički zadatak ima za cilj da proceni tvoje praktične veštine i sposobnost da primeniš svoje znanje u fiktivnom ili realnom scenariju.