Tag Archives: Peliohjelmoijan osaaminen

Peliohjelmoijan osaaminen Part 2 – Pehmeillä taidoilla päteväksi.

Kuvassa visualisoidaan peliohjelmoijan osaaminen korostamalla eri aivopuoliskojen eroja pehmeiden ja kovien taitojen osalta

Mikäli et ole lukenut blogimme ensimmäistä osaa koskien peliohjelmoijien kovia taitoja lue se tästä: https://zaibatsu.fi/peliohjelmoijan-osaaminen-part-1-kovilla-taidoilla-kovia-tuloksia/

Sosiaaliset taidot ja persoonallinen osaaminen 

Vaikka teknisen osaamisen tärkeyttä ohjelmoijan työssä ei voida kieltää, peliohjelmoijan osaaminen koostuu myös heidän “pehmeistä taidoistaan”. Pehmeistä taidoista puhuttaessa tarkoitetaan henkilön yksilöllisiä sosiaalisia ja tunnetaitoja. Nämä taidot ovat suuressa roolissa kun puhutaan siitä, mikä erottaa pelialalla työskentelevän ohjelmoijan muista ohjelmoijista.

Motivaatio

Pelien tekemisessä motivaatio ja intohimo ovat usein suuressa roolissa, sillä lähes aina ohjelmoijat ovat itse intohimoisia pelaajia ja he myös siirtävät kyseisen intohimon työhönsä. Intohimo tekemistään kohtaan on usein voimakkaampi motivaattori kuin pelkästään taloudellinen hyöty; näin ollen työn jälki ja siihen laitettu panostus heijastavat tekijänsä motivaatiota.

Luovuus

Motivaation ja intohimon lisäksi suuri etu pelikoodareilla on heidän luovuutensa. Pelit ovat lähtökohtaisesti luova alusta, jolloin myös niiden tekijöiden tulee kyetä luovuuteen ja luovien ratkaisujen löytämiseen. Tämä pätee sekä grafiikassa että koodin tekemisessä ja optimointiratkaisujen löytämisessä.

Tehokkuus

Varsinkin hyperkasuaalien mobiilipelien tekemisen tuotanto-pipeline etenee nopeasti ja tehokkaasti jopa parin viikon aikataulutuksella. Näin ollen pelien tekeminen on valmentanut toimimaan tehokkaasti ympäristössä ja työssä, joka on haastavaa ja nopeatempoista.

Palaute ja reaktiivisuus

Ketterän kehittämisen työmallien kautta peliohjelmoijat kehittyvät olemaan reaktiivisia ja ovat tottuneet saamaan jatkuvasti palautetta ja tekemään muutoksia nopealla aikataululla. Usein tämä vaatii myös koko prosessin arviointia ja prioroteettien uudelleenjärjestelyä.

Oppiminen ja kehitys 

Peliala on haastava ala ja jatkuvasti muutoksessa, minkä vuoksi pelien ohjelmoijat joutuvat jatkuvasti kehittämään itseään ja pysymään perillä alan muutoksista ja kehityksestä. Näin ollen peliohjelmoijan osaaminen kehittyy jatkuvasti heidän ollessa oppimisen syklissä mukana.

Tiimityö

Pelien tekemisessä on jatkuvasti läsnä tiimi eri asiantuntijoita (grafiikka, äänet, tuottajat suunnittelijat yms.), joiden kaikkien panosta tarvitaan. Niinpä erityisen tärkeäksi pelikoodareille nouseekin kyky tehdä yhteistyötä tiimissä ja ottaa huomioon useat pelien tekemisen osa. Tiimityöskentelyyn kuuluu myös näkemyserot ja kritiikki, jolloin on erityisen tärkeää osata olla vastavuoroinen tiimipelaaja.

Viestintätaidot

Tiiviin tiimityöskentelyn ja ketterien metodien ansiosta ohjelmoijat kehittyvät ymmärtämään ja vastaanottamaan toisten kommentteja ja palautetta ja samalla kyeten itse kommunikoimaan teknologisiakin elementtejä selkokielellä. Viestintätaitojen lisäksi ohjelmoijat oppivat työssään myös hyväksymään kritiikkiä ja sen, että toisinaan omatkin luomukset joudutaan hylkäämään.

Itseohjautuvuus

Pelikoodareiden itseohjautuvuuteen kuuluvat muun muassa seuraavat asiat:

-Kyky johtaa itseä, työtään ja ajankäyttöään kohti yhteistä päämäärää.

-Kyky ottaa vastuu itsestä ja tehdystä työstä.

-Kyky tehdä itsenäisiä päätöksiä ja priorisoida.

-Kyky pyytää apua, kun sitä tarvitsen.

-Kyky asettaa täsmällisiä, aikaan sidottuja ja realistisia tavoitteita.

-Kyky hallita stressiä.

-Kyky huolehtia hyvinvoinnistaan.

Peliohjelmoijan osaaminen Part 1 – Kovilla taidoilla kovia tuloksia

peliohjelmoijan osaaminen kuvattu aivolohkoilla, joissa molemmat puolet kuvaavat pehmeitä ja kovia taitoja.

Pelien tekemiseen liittyy usein liittyy harmillisia stereotypioita ja mielikuvia kavereista tekemässä “vähän jotain koodaamista” kaverinsa kellarissa. Todellisuudessa pelien tekeminen on se salainen resepti joka rakentaa osaavimmat ohjelmoijat erilaisiin tarpeisiin. Peliohjelmoijan osaaminen voidaan jakaa sekä koviin teknisiin taitoihin että pehmeisiin, ihmisläheisempiin taitoihin. Tämä ensimmäinen osio keskittyy juurikin ohjelmoijan konkreettisiin, ”koviin” taitoihin.

Kovat taidot/Hard skills

Teknologiat

Tekninen osaaminen pelialan ohjelmoijilla on poikkeuksellisen vahvaa, koska heidän tulee hallita paitsi laitteistot, yleensä myös vähintään kaksi pääasiallista ohjelmointikieltä.

Muutaman pääasiallisen ohjelmointikielen hallitsemisen lisäksi pelejä tehtäessä ohjelmoijien tulee myös tutustua ja hallita useampia teknologioita myös alemmalta tasolta. Alemman tason hallitseminen antaa ohjelmoijille paremman kokonaisymmärryksen koko systeemin toiminnasta kuin mitä perinteinen ohjelmistokehittäjä välttämättä omaa.

Matematiikka ja fysiikka

Peliohjelmoijan osaaminen sisältää teknologisen osaamisen lisäksi myös reilusti laskutaitoa. Ohjelmoijalta vaaditaan erinomaista matematiikan ja fyysikan ymmärtämistä, sillä pelissä toteutetut 3D-grafiikat ja animaatiot ovat haasteellisuudeltaan reilusti perusohjelmoijan vaatimustason yläpuolella. 

Optimointi

Pelien tekemisessä yhdeksi tärkeimmäksi asiaksi nousee myös ohjelmoijan kyky optimoida. Järjestelmien äärirajoille vieminen ja toiminnan ylläpitäminen on jatkuvaa tasapainottelua ja juurikin pelikoodarit ymmärtävät sen, kuinka koodista saadaan puristettu viimeinenkin hyöty irti.

Työmallit ja toimintavat

Pelialalla on usein käytössä ketterät ohjelmistokehityksen työmallit perinteisen vesiputousmallin sijasta. Ketterät menetelmät ovat isossa roolissa kasvattamassa myös ohjelmoijan pehmeitä taitoja, kuten reaktiivisuutta ja ongelmanratkaisukykyä. Toimintatapojen kautta peliohjelmoijien osaamiseen kuuluvat myös toistuvat tottumukset etsiä virheitä (debugging) omista töistään.

Näppäilynopeus

Kyky kirjoittaa rivejä koodeja nopeasti, voidaan nähdä kovana taitona, koska se kehittyy kokemuksen ja harjoittelun myötä. Mitä nopeammin ohjelmoija kykenee tuottamaan tarkkoja koodirivejä, sen tehokkaampi hän on ja näin ollen myös pätevämpi.

Lue tästä myös peliohjelmoijan osaamista käsittelevän blogimme toinen osa koskien ohjelmoijien pehmeitä taitoja: https://zaibatsu.fi/peliohjelmoijan-osaaminen-part-2-pehmeilla-taidoilla-patevaksi/