HiQ

Integraatiokehittäjän työ HiQ:lla (Finnish)

Mitä integraatiokehittäjä tekee HiQlla? Kysyimme integraatiokehittäjiltämme mitä työ vaatii ja kenelle se sopii. Tutustu blogistamme lisää.

Integraatiokehittäjän työ HiQ:lla

Integraatiokehittäjän työ ei ole terminä yhtä tunnettu kuin esimerkiksi fronttikoodaajan tehtävä, josta useimmilla IT-alan ihmisillä on jonkinlainen käsitys. Kysyimme integraatiokehittäjiltämme, mitä työ pitää sisällään. Tutustu blogista integraatioihin ja integraatiokehittäjän rooliin lisää.

Mitä integraatiot ovat?

Yksinkertaisimmillaan integraatio siirtää tietoa kahden erillisen järjestelmän välillä, ja varmistaa, että siirrettävät tiedot uppoavat kohdejärjestelmään halutussa muodossa. Käytännössä siis kehitämme ohjelmia tiedonsiirtoon, ja usein työkaluna siihen käytetään erillistä integraatioalustaa. Markkinoilla on paljon erilaisia integraatioalustoja, mutta HiQ:lla me käytämme pääasiassa omaa tuotettamme frendsiä sekä jonkin verran myös Azuren integraatiopalveluita.

Nykyään integraatiot ovat kuitenkin paljon muutakin kuin pelkkää datan siirtämistä eri järjestelmien välillä. APIt ovat tuoneet mukaan avoimien rajapintojen tarjoamista sekä kuluttamista. Lisäksi API-arkkitehtuuri auttaa asiakkaita piilottamaan taustajärjestelmiään yleiskäyttöisten rajapintakerrosten taakse. Myös robotiikka tekoäly ovat tuoneet uusia tuulia integraatioihin, kun niitä käytetään hyväksi erilaisissa integraatioratkaisuissa.

Integraatioiden toteuttaminen

Integraatioita tehdessä joutuu integraatioalustan lisäksi tutustumaan jonkin verran myös lähde- ja kohdejärjestelmien toimintaan sekä asiakkaan liiketoimintaprosesseihin, joita integraatioilla automatisoidaan. Integraatioiden toteuttaminen on käytännössä ohjelmointia, vaikka integraatioalustat tarjoavatkin paljon valmiita komponentteja ja toiminnallisuuksia. Tämän lisäksi integraatiokehittäjän tehtäviin kuuluu usein myös yksittäisten integraatioiden määrittelyä, integraatioratkaisujen arkkitehtuurin pohdintaa, tuotannossa olevien ratkaisujen virhetilanteiden selvittämistä sekä ratkaisujen testaukseen osallistumista asiakkaan kanssa.

Joskus toteutamme myös kustomoituja komponentteja tai plugineja integraatioihin, kun asiakkaan järjestelmissä ei ole käytössä yleisempien standardien mukaisia rajapintoja tai siirrettävälle datalle pitää tehdä jotain sanomamuunnosta monimutkaisempia operaatioita. Räätälöidyt komponentit tehdään puhtaasti asiakkaalle kustomoidulla koodilla.

Integraatiokehittäjän arki

Teemme töitä DevOps-mallilla ja päivä koostuu niin tuotannossa olevien ratkaisujen ongelmanselvityksistä kuin uusien integraatioiden tai muutostöiden toteutuksesta. Tuotannon tuesta vastaa ensisijaisesti meidän support-tiimimme, mutta me kehittäjät tuemme heitä tuotannon ongelmanselvityksissä tarpeen mukaan. Lisäksi projektin ollessa kesken kehittäjät tekevät tuotannonkaltaista ongelmanselvitystyötä testiympäristössä.

Töitämme ohjataan tiketöintijärjestelmällä. Yksi tiketti voi olla muutos olemassa olevaan integraatioon tai kokonainen uusi integraatio. Tikettien työmäärät vaihtelevat siis hurjasti. Toimintamalliimme kuuluu, että joku toinen kehittäjä katselmoi aina muiden toteutukset. Jokainen meistä tekee siis myös katselmointeja toteutustöiden välissä. Katselmoinnissa tarkastetaan, että toteutuksessa on tehty haluttu asia sovittujen koodauskäytäntöjen mukaisesti ja että ratkaisu on dokumentoitu riittävällä tasolla.

Työpäivät tauottuvat mukavasti kollegojen kanssa kahvitellessa ja tiimikaverien kanssa jutustellessa joko toimistolla livenä tai sähköisten kanavien kautta. Osallistumme myös välillä erilaisiin kokouksiin: statuspalavereihin, määrittelypalavereihin ja testauspalavereihin. Useimmat niistä käydään puhelinpalavereina, mutta joskus käymme myös asiakkaan tiloissa tai asiakas tulee meidän toimistollemme. Kommunikoimme asiakkaan kanssa sähköpostin lisäksi myös erilaisilla viestisovelluksilla kuten MS Teamsilla tai Slackilla.

Työ on monipuolista ja haastavaa

Integraatiotyössä pääsee tutustumaan asiakkaiden toimialaan ainakin pintapuolisesti, koska käytännössä me automatisoimme heidän liiketoimintaprosessejaan. Kun integroimme toiminnanohjausjärjestelmiä tai automatisoimme työtilauksien vastaanottoa, tutustumme väistämättä eri järjestelmien välillä käytävään dialogiin ja siten myös asiakkaan prosesseihin. Tämä tuo työhön mukavaa vaihtelua. Ja on erilaisiin toimialoihinkin tutustuminen mielenkiintoista.

Pääsemme tutustumaan myös useisiin erilaisiin järjestelmiin (tai ainakin niiden rajapintoihin), mikä tuo monipuolista kokemusta. Integraatiot eivät ole aina yksinkertaisia tiedostonsiirtoja, vaan ne voivat olla laajoja ja monimutkaisiakin kokonaisuuksia.

Mitä työ vaatii ja kenelle se sopii

Työssä vaaditaan siis paljon loogista päättelyä ja kykyä hallita kokonaisuuksia, mikä tuo siihen haastavuutta. Homma on kuitenkin sopivassa suhteessa myös ”kädet savessa” -tekemistä. On mukavaa nähdä omien kättensä jälki ja se, kuinka tekemisemme oikeasti auttaa asiakkaan arkea ja on merkityksellistä.

Haastavinta tässä työssä on asiakkaan vakuuttaminen: meillä asiakas ei ole aina oikeassa. Joskus heille pitää osata kertoa, mitä he oikeasti tarvitsevat sen sijaan, että tekisimme kiltisti sen, mitä asiakas luulee haluavansa. On konsultin velvollisuus tuoda esille kokemustaan ja kertoa, miten asioita kannattaa tehdä. Monesti asiakkailla on taipumusta pyytää niin sanottuja point-to-point-integraatioita, koska niitä on halpa ja nopea tehdä. Pidemmän päälle niistä kuitenkin kehittyy hankalasti ylläpidettävää ”liittymäspagettia”. Tällöin asiakkaalle pitää osata argumentoida hyvän ja skaalautuvan integraatioarkkitehtuurin edut. Tähän puuhaan saattaa joutua kuka tahansa eikä vain myyjä tai integraatioarkkitehti. Mutta lopulta, kun asiakkaan kaikki osapuolet on saatu vakuutettua, ovat he yleensä kiitollisia siitä, että uskalsimme haastaa heitä.

Integraatiokehittäjän työ vaatii paljon muutakin kuin loogista päättelykykyä ja ohjelmointitaitoa. Esimerkiksi sosiaalisia kykyjä tarvitaan, kun kohtaamme työssämme omien kollegoiden lisäksi asiakkaan ja muiden järjestelmätoimittajien edustajia, joilla kaikilla ei välttämättä ole paljoakaan teknistä osaamista. Silloin pitää osata puhua asioista tarpeeksi ymmärrettävästi.

Lehmän hermoistakaan ei ole haittaa, koska vaatimusten muutokset ovat tässä työssä arkea, ja välillä saman asian joutuu tekemään montakin kertaa. Koska integraatiot ovat aina osa isompia projekteja, joissa asiakkaan taustajärjestelmiä vaihdetaan tai päivitetään, on työ joskus aika purskeista: välillä joudutaan odottamaan, että muut tekevät omat osuutensa ja sitten töitä painetaankin taas laikka punaisena. Tällaisessa aallokossa auttaa hyvä stressinsietokyky.

Integraatiokehittäjän työ sopii tiimityöstä pitävälle, mutta myös vastuuta ottavalle ohjelmointitaitoiselle tyypille, joka pitää vaihtelevasta työnkuvasta, uuden oppimisesta sekä ongelmien selvittelystä. Koska asiakkaat ja projektit vaihtelevat toimialoittain, saa tässä työssä paljon vaikuttaa omaan tekemiseensä, ja siksi se sopii monenlaisille persoonille. Kannattaa kokeilla.

Kuvat: Sam Jämsen

Read more
Contact

Contact for more information