Front end developer kehittää ohjelmistoja loppukäyttäjän näkökulmasta

Flow by Pinja käyttöliittymä teollisessa ympäristössä

Flow by Pinja -tuotteen parissa työskentelevä Lauri Haavisto on ohjelmistokehittäjä, joka toimii tiimissään tällä hetkellä front end developer -roolissa. Työn pääasiallisena näkökulmana on se, mitä ohjelmistosta näkyy loppukäyttäjälle: miltä käyttöliittymä näyttää, millaisia elementtejä ja toiminnallisuuksia siinä on ja kuinka kokonaisuudesta saadaan käyttäjälle mahdollisimman selkeä ja helppokäyttöinen.

Tampereella asuva Lauri Haavisto on yksi Pinjan monista ohjelmistokehittäjistä. Ohjelmistotekniikkaa ja ohjelmistotuotantoa yliopistossa opiskellut Lauri aloitti työt Pinjalla vuonna 2018, ensin konsulttina asiakasyritykselle, sitten toimitusketjun hallintaa tukevan Once-tuotteen parissa ja nyt täysipäiväisesti kiertotalouden materiaalivirtojen hallintaan ja raportointiin erikoistuneen Flow-tuotteen parissa.

- Olen tehnyt näiden vuosien aikana enimmäkseen kehitystyötä, aiemmin myös muun muassa IT-tukeen ja tietokantoihin liittyviä työtehtäviä. Eniten olen toiminut projekteissa front end developer -roolissa, mutta ajoittain myös back endissä, Lauri kertoo.

Yksinkertaistaen voidaan sanoa, että front end developer on ohjelmoija, joka kehittää tietokoneella tai mobiililaitteella käytettävien sovellusten käyttäjälle näkyviä osia. Front end developer siis kirjoittaa koodia, jonka lopputulos näkyy käyttäjälle hänen käyttämässään palvelussa, tyypillisesti esimerkiksi verkkosivulla, halutunlaisina elementteinä ja toiminnallisuuksina.

Front end developer -roolissa työn yksi keskeinen huomioitava asia on se, että loppukäyttäjälle samalta näyttävään lopputulokseen voidaan usein päästä eri reittejä. Jotta koodi olisi helposti ymmärrettävää myös projektin muille jäsenille sekä mahdollisia myöhempiä päivittäjiä varten, siitä on hyvä tehdä jo alusta pitäen mahdollisimman selkeää ja suoraviivaista. Lean-ajattelun periaatteet turhan karsimisesta ja olennaiseen keskittymisestä pätevät näin ollen myös ohjelmistokehitykseen.

Pinjan työntekijöitä parikoodaamassa tietokoneen äärellä

- Jokainen projekti on totta kai omanlaisensa, joten uudessa projektissa aloittaminen vaatii, että siihen pääsee ensin sisälle. Pinjalla olen saanut käydä projekteja läpi muiden osallistujien kanssa ja olen myös saanut aina hyvin neuvoja. Tällä hetkellä työskentelen pitkälti etänä ja hyvinkin itsenäisesti, mutta usein pidämme tiimikaverien kanssa esimerkiksi Google Meetiä taustalla auki, jos tulee kysyttävää mieleen. Myös Slackin kautta vaihdamme paljon tietoja, Lauri kertoo.

→ Tutustu pinjalaisten uratarinoihin
→ Katso kaikki Pinjan avoimet työpaikat

Front end developer tuo näkyviin sen, mitä back end developer kehittää konepellin alla

Pinjalla ohjelmoijat työskentelevät osana tiimejä ja tekevät myös paljon yhteistyötä keskenään. Usein työtehtävät liittyvät olemassa olevan palvelun jatkokehittämiseen ja päivittämiseen, mutta esimerkiksi Flow-tuotteen kehitystyössä Lauri on ollut mukana lähes alusta alkaen.

Keskeistä työmaata Laurille on muun muassa Flow-tuotteen tapahtumanhallintanäkymä, jonka kautta käyttäjä luo järjestelmään uusia kuormia ja muita tapahtumia sekä seuraa ja hallinnoi niiden etenemistä. Reaaliaikaisen tapahtumanhallinnan ohella asiakasyrityksille on tärkeää muun muassa se, että järjestelmässä tarkasteltavat raportit ovat selkeitä ja että ne tukevat yrityksen tietotarpeita ja siten myös päätöksentekoa.

Flow by Pinja käyttöliittymä ja koodia

Koska front end developer katsoo kehitystyötä nimenomaan käyttäjän näkökulmasta, hänen on aina pyrittävä selkeään ja helppokäyttöiseen lopputulokseen.

- Kehittämämme tuotteen pitää tukea erilaisia käyttäjiä, eri selaimia ja erilaisia ruutukokoja. Järjestelmää käytetään sekä tietokoneen ruudulla että mobiililaitteilla, ja sen on pysyttävä kaikissa tilanteissa käytettävänä. Ruudun sisällön pitää skaalautua ja toimia responsiivisesti. Siksi testaamme lopputulosta työn aikana eri selaimilla, minkä lisäksi meillä on vielä erikseen testaajia, Lauri toteaa.

Sekä Once- että Flow-tuotetiimissä työskennellessään Lauri on käyttänyt työssä pääasiassa Angular-teknologiaa. Ohjelmoinnin ja ohjelmointikielten perusteet Lauri oli oppinut jo opinnoissaan, mutta hän kokee päässeensä niihin kunnolla kiinni vasta käytännön työssä.

- Kun aloitin työt Pinjalla, teimme alkuun muun muassa parikoodausta. Koodasimme siis yhdessä toisen ohjelmoijan kanssa, kokeneempi koodaaja istui vieressäni ja neuvoi. Kävimme samalla läpi myös koodityylillisiä ja projektikohtaisia asioita, Lauri muistelee.

Nykyään Laurin työ on varsin itsenäistä, hän seuraa Jira-taululta avoimia työtehtäviä ja hoitaa niitä sovitun priorisoinnin mukaisesti eteenpäin. Muita tärkeitä työkaluja päivittäisessä työssä ovat muun muassa ohjelmistokehitysprojektien versionhallintajärjestelmä GitHub, johon kirjoitettu koodi päätyy ja jossa se pysyy selkeästi hallittuna ja saatavilla kaikille käyttäjille. Lisäksi käytössä on Scrumban-projektinhallintamenetelmä, joka helpottaa työn etenemisen visuaalista seurantaa eri vaiheissaan.

Laurin tiimissä työn etenemistä käydään läpi päivittäisissä, noin 15 minuutin Daily-palavereissa, joissa todetaan jokaisen kulloinenkin työtilanne ja keksitään yhdessä ratkaisuja mahdollisiin haasteisiin. Tärkeä osa front end developer -roolissa työskentelevän säännöllistä työnkulkua ovat myös tehtyjen töiden katselmoinnit, sillä kaikki koodi kulkee Pinjalla vähintään toisen silmäparin kautta ennen julkaisua. Lisäksi pidetään säännöllisesti niin sanottuja retro-palavereita, joissa käydään jälkikäteen läpi valmistuneiden töiden hyvin onnistuneet ja toisaalta haasteita aiheuttaneet asiat. Näin löydetään kehityskohteet jatkoa ajatellen ja pysytään jatkuvan parantamisen polulla.

Front end developer on ongelmanratkoja

Lauri Haavisto pitää nykyisessä työssään parhaana asiana sitä, että siinä pääsee jatkuvasti ratkomaan ongelmia ja tekemään jotain uutta. Front end developer on ennen kaikkea ongelmanratkoja, sillä jokaisen käyttäjälle näkyvän ominaisuuden taustalla on mietittävä, miten se kannattaa toteuttaa. Itsenäisen työn tukena toimii kuitenkin aina myös tiimi.

Fronttitekniikat ovat nopeasti muuttuvia, joten jatkuvasti tulee jotain uutta opeteltavaa. Onneksi Pinjalla kannustetaan jokaista omassa kehittymisessä.

- Ajattelen olevani itse enemmän tekniikkaan kuin visuaalisuuteen keskittynyt henkilö, vaikka teenkin nimenomaan käyttäjille näkyvää työtä. Tiimissämme on myös käyttöliittymäpuoleen erikoistunut jäsen, mistä on huomattavaa apua. Hän suunnittelee meille pohjat, jonka päälle rakennamme toiminnallisuudet.

Pinjan seuraaviin front end developer -rooleihin Lauri kannustaa hakemaan koodareita, joilla on halu paitsi ratkoa ongelmia myös opetella uutta ja kehittyä työnsä ohella.

- Fronttitekniikat ovat nopeasti muuttuvia, joten jatkuvasti tulee jotain uutta opeteltavaa. Onneksi Pinjalla kannustetaan jokaista omassa kehittymisessä. Olen itse käynyt Pinjan järjestämissä koulutuksissa, minkä lisäksi saamme käyttää joka kuukausi yhden työpäivän opiskeluun tai muuhun omaan kehittymiseen, niin sanotun Lab Dayn. Se on hienoa, sillä tykkään opetella uutta, Lauri toteaa.

Lauri pitää Pinjaa kaiken kaikkiaan reiluna ja mukavana työnantajana. Hän kokee työnantajansa olevan aidosti kiinnostunut työntekijöidensä kehittymisestä ja tarjoavan myös mahdollisuuksia itsensä haastamiseen. Hyvänä plussana Pinjalla hän pitää sitä, että töitä saa tehdä uusilla teknologioilla.

- Pinjalle ei ole mitenkään vaikeaa tulla uutena työntekijänä. Toki talon käytännöt on opeteltava, mutta hyvin saa tukea ja neuvoja työkavereilta. Arvostan myös sitä, että Pinjalla jokainen pystyy vaikuttamaan omiin työtehtäviinsä, Lauri toteaa.

Faktaboksi:

💎 Front end developer luo sen, miltä ohjelmoitu verkkosivu tai palvelu näyttää käyttäjälle, ja määrittää muun muassa elementtien sijainnit ja toiminnallisuudet. Front end developerin käyttämiä teknologioita ovat mm. Angular, React, Vue.js ja Bootstrap. Kielistä yleisimpiä ovat esimerkiksi HTML, CSS, Sass, JavaScript ja TypeScript. Tittelille ei ole vakiintunutta suomenkielistä vastinetta, mutta puhekielessä käytetään usein myös nimitystä fronttidevaaja.

💎 Back end developer kehittää sitä, mitä tapahtuu loppukäyttäjälle näkyvän, valmiin tuotteen taustalla. Tyypillisesti tämä sisältää esimerkiksi työtä tietokantojen ja logiikkojen parissa. Back end developerin käyttämiä teknologioita ja kieliä ovat mm. C#, PHP, Python, Java, ASP.NET ja Symfony. Tittelille ei ole vakiintunutta suomenkielistä vastinetta, mutta puhekielessä käytetään usein myös nimitystä bäkkidevaaja.

💎 Full stack developer on kahden edellisen yhdistelmä, eli henkilö, joka tekee sekä front end- että back end -ohjelmistokehitystä. Full stack developer käyttää sekä front end- että back end -ohjelmistokehityksen teknologioita.

Hae meille töihin:

Front End -kehittäjiä (junioreita ja senioreita)
Front End -kehittäjä bioenergian ja kiertotalouden ratkaisuihin

Lue lisää:

Pinjalla mahdollistetaan joustavat työskentelymallit
Web-kehityksen ”suomenmestari” Pinjalla
Pinjan koulutuslupaus on tulevaisuuden kestävien palveluiden ja ammattitaidon takeena