Kesätyönä tuntikirjausjärjestelmän mobiilisovelluksen toteutus

Artikkelin lukuaika

6 min

Kesätyökausi 2021 on saatu onnistuneesti päätökseen. People & Culture -asiantuntijamme Ville haastatteli kesätyöntekijöitämme Joonaa ja Joakimia kesän projektista ja siitä, miten kesä ATR Softilla sujui.

Millaiset ovat omat taustanne? Miksi haitte kesätöihin juuri ATR Softille?

Joakim: Kolme vuotta tietotekniikkaa opiskelleena ja kandidaatin paperit taskussani päätin, että nyt on korkea aika päästä tekemään oman alan hommia. Työnhakuprosessin käynnistyttyä alkuvuodesta minulle tuli vastaan ATR Soft niminen yritys, josta en ollut ennen kuullutkaan. Siitä huolimatta yrityksen nettisivut antoivat ATR Softista todella hyvän vaikutelman, joten pistin innolla hakemuksen vetämään. Kevään aikana kävimme haastatteluprosessin läpi ja onnekseni sain paikan. Itse työt alkoivat maaliskuun lopulla.

Joona: Kartoittaessa mahdollisia kesätyöpaikkoja, ATR Soft nousi heti yrityksenä erinomaiseksi vaihtoehdoksi. Kesätyöpaikalta halusin tehtäviä, jossa pääsen hyödyntämään ja kehittämään omia ohjelmistokehittäjän taitojani seuraavalle tasolle haastavien ja mielenkiintoisisten projektien parissa ja ATR Softin aiemmat blogikirjoitukset tukivat hyvin tätä kuvausta. ATR Softista oli myös muodostunut yrityksenä jo ennestään positiivinen yleiskuva ja yrityksen senhetkiset käytetyimmät teknologiat osuivat mielestäni hyvin yksi yhteen oman osaamiseni kanssa. Tietotekniikan opintojen ohella olin jo kerryttänyt kokemusta omia softaprojekteja tekemällä, joita esittelin kesätyöhaastattelussa.

Miten työt ATR Softilla lähtivät liikkeelle?

Joakim: Ensimmäisen työpäivän pääsimme koronaoloista huolimatta viettämään toimistolla. Meille annettiin tietokoneet ja muut työvälineet (mm. vastamelukuulokkeet, todella kivat myös työajan ulkopuolella ;)), jonka jälkeen saimme rauhassa ottaa koneita käyttöön. Kun koneet olivat käyttökunnossa, tutustuimme yrityksen kulttuuriin ja toimintaan. Päivä antoi yrityksestä todella hyvän ja rennon kuvan. Jäi sellainen käsitys, että muihin on helppo olla yhteyksissä ja että tyhmiä kysymyksiä ei ole. Lisäksi meillä on ollut kesän aikana lukuisia ”miten menee?” tapaamisia, jossa saa vapaasti kertoa kuulumisia ja kysellä kysymyksiä.

Joona: Jo alusta lähtien huokunut rento työilmapiiri sai minut heti tuntemaan osaksi ATR Softin porukkaa. Tiimikavereihini pääsi tutustumaan heti ensimmäisten päivien aikana. Perehdytys oli kokonaisuudessaan hoidettu todella mallikkaasti antaen kesätöilleni loistavan alkulähdön.

Millaisia tehtäviä kesä sisälsi ja mitä teknologioita käytitte?

Joakim: Ensimmäinen tehtäväni oli korjata bugeja ja lisätä pieniä ominaisuuksia yrityksen sisäiseen tuntikirjaussovellukseen. Sovellus on tehty Javalla, joka oli minulle entuudestaan tuttu, mutta web-toiminnallisuuteen käytetty Spring-kirjasto oli minulle täysin tuntematon. Sovellusta aikaisemmin kehittäneet, kokeneemmat kehittäjät opastivat ympäristön pystytyksessä ja kävimme yhdessä läpi sovelluksen lähdekoodin arkkitehtuurin, jonka jälkeen pääsin itse koodauksen pariin. Ongelmakohdissa apua oli aina tarjolla ja kevään edetessä valtaosa bugeista tuli korjattua ja uusia ominaisuuksia saatiin valmiiksi ja vietyä tuotantoon.

Kun Joona aloitti työt toukokuun alussa, aloimme työstämään kesän ”pääprojektia”. Tuntikirjauksen mobiiliyhteensopivaa sovellusta oli jo kehitetty viime kesänä, mutta se oli jäänyt prototyyppitasolle ja tämän kesän tavoitteena oli saada ainakin sovelluksen Minimum Viable Product (MVP) työntekijöiden käyttöön. Päätimme toteuttaa sovelluksen käyttöliittymän Reactilla, koska meillä molemmilla oli kokemusta sen käytöstä ja se sopi hyvin käyttötarkoitukseemme. Sovelluksen API toteutettiin Javan Spring Boot -kirjaston avulla.

Joona: Projekti eteni hyvää vauhtia ja saimme jo kesäkuun lopussa MVP:n tuotantoon. Loppukesän lisäsimme sovellukseen uusia ominaisuuksia, josta työmäärältään selkeästi suurin oli ATR Survey -lisäosa. Lisäosa mahdollistaa ATR Softin yrityksen sisäisten kyselyiden luonnin ja hallinnoinnin kätevästi yhdestä paikasta. Lisäosa kiinnitettiin ATR Softin tuntikirjausjärjestelmään ja kyselyt ilmestyvät käyttöliittymän alalaitaan pop up -tyylisesti. Kyselyihin liittyvä Javascript haetaan jo alkukesästä rakennetusta API:sta, mikä puolestaan mahdollistaa lisäosan kiinnityksen tulevaisuudessa muihinkin ohjelmistoihin.

Tuntikirjausprojektin kehitys oli jo alkumetreiltä asti hyvin organisoitua ketterien ohjelmistokehitysmenetelmien tukemana. Päivittäiset aamutapaamiset tiimin kanssa antoivat aikaa puida mahdollisia kehitysvaiheen ongelmatilanteita ja varmistivat, että jokaisella on tehtävää päivälle. Kommunikaatio tiimin sisällä toimi erinomaisesti heti alusta lähtien – kehitysvaiheessa ongelmista oli helppo puhua ja jokainen oli aina valmis auttamaan toinen toisiaan löytämällä ongelmiin yhdessä ratkaisuja.

Miltä matka kesän aikana tuntui?

Joakim: Kaiken kaikkiaan kesä on mennyt todella nopeasti. Olen päässyt työskentelemään kiinnostavien teknologioiden ja monipuolisten projektien parissa, joka on tehnyt työnteosta todella mielekästä. Tiimihenki on ollut todella hyvä ja jo ensimmäisestä päivästä lähtien olen tuntenut itseni tervetulleeksi osaksi ATR Softia.

Joona: Kuluneet neljä kuukautta ovat ylittäneet odotukset. Täällä on annettu huikeat eväät ja myös paljon vastuuta kehittyä ohjelmistokehittäjänä. Ohjelmistoprojekteissa on päässyt tekemään monipuolisesti niin fronttia kuin back end -puoltakin ja työtehtävät ovat olleet haastavia ja mielenkiintoisia. Yhteishenki on pelannut viimeisen päälle niin yrityksessä kuin tiimin sisälläkin!

Mikä oli parasta ja mistä olet ylpeä?

Joona: Parasta oli ehdottomasti viedä alusta asti kehittämämme ATR Softin tuntikirjausjärjestelmän mobiilisovelluksen tuotantoon. Tuntui hienolta olla kehittämässä näinkin isoa ohjelmistoa ihan alusta asti ja saada se onnistuneesti aikaraamien sisällä julkaisukuntoon.

Joakim: Olen samoilla linjoilla Joonan kanssa. Alusta asti kehitetyn sovelluksen vienti tuotantoon oikeiden käyttäjien käytettäväksi oli todella hienoa ja käyttäjien palautteen lukeminen innostaa kehittämään sovellusta yhä paremmaksi.

Mikä oli haastavinta?

Joakim: Kevään ja kesän aikana tuli vastaan kohtalaisen paljon uusia teknologioita, joten opittavaa oli paljon, joka saattoi ajoittain olla aika haastavaa. ATR Soft kuitenkin tarjoaa kuukaudessa yhden opiskelupäivän, jonka voi käyttää haluamansa asian opiskeluun. Itse käytin ilomielin kaikki opiskelupäivät perehtyen vähemmän tuttuihin kirjastoihin ja kieliin.

Joona: Varsinkin alussa oli paljon uutta opittavaa käytettävistä teknologioista ja sovellusta kehittäessä oli tärkeää saada pidettyä projekti siistinä ja yhtenäisenä heti alusta saakka vielä tulevaakin ylläpitoa ja jatkokehitystä varten. Tässä mielestäni onnistuttiin mallikkaasti hyvien ohjelmointikäytäntöjen ja kattavien testien avulla.

Mitä kesän jälkeen?

Joakim: Kesän jälkeen jatkan osa-aikaisena opintojen ohessa. Käytännönläheinen työ toimii varmasti mukavana vastapainona yliopiston luennoille ja tenteille, vaikka se syökin aikaa pois ”opiskelulta”.

Joona: Jatkan myös kesän jälkeen ATR Softilla osa-aikaisena työntekijänä opintojeni ohella. Kesä on mennyt sen verran mielekkäästi kaikin puolin, että tästä on todella kiva jatkaa eteenpäin!