Kompetenssit

Tekoäly kehitystyössä
Tekoäly voi säästää huomattavasti työaikaa. On kuitenkin tärkeää olla tietoinen siitä, että suuret kielimallit (LLM) ovat luonteeltaan epädeteministisiä, eli saman kysymyksen esittäminen kahdesti voi tuottaa erilaisia vastauksia. Käytämme tekoälyä toisaalta tukemaan ja nopeuttamaan omaa kehitystyötämme, ja toisaalta laajentamaan asiakasratkaisuiden toiminnallisuutta.
Kehitysprosessimme hyötyy tekoälyn käytöstä lyhentyneiden kehitysaikojen, kattuvampien testitapausten ja parantuneen dokumentaation kautta. Hyödynnämme tekoälyä suunnitelmien, pohjakaavioiden, projektirakenteen ja testitapausten luomiseen, minkä jälkeen koodausta ja testausta nopeutetaan tekoätyökaluilla. Kaikki koodi vaatii aina ihmisen hyväksynnän ennen toimitusta.

Tekoäly asiakasratkaisuissa
Asiakasratkaisujen kehittämisen mahdollisuudet tekoälyn avulla ovat rajattomat. Monet organisaatiot aloittavat rakentamalla sisäisen tietopankin josta henkilöstö voi hakea tietoa. Tällainen ratkaisu on erityisen hyödyllinen epästrukturoidun datan käsittelyssä. Vaihtoehtoisesti tekoälyä voidaan käyttää sovellusten valvontaan ja lokitiedon analysointiin käyttötapojen, pullonkaulojen tai mahdollisten tietoturva-aukkojen tunnistamiseksi.
Uskomme, että turvallisin tapa käyttää tekoälyä on sijoittaa se organisaation omien palomuurien taakse. Uudet kielimallit ja algoritmit tekevät tästä mahdollista kohtuullisin kustannuksin.

Taustajärjestelmien kehitys
Meillä on Java-koodauskokemusta Java 5:stä alkaen, ja nykyään kehitämme ratkaisuja versiolla 25. Spring Bootin kanssa meillä on kokemusta versioiden 2 ja 3 parissa, ja parhaillaan otamme käyttöön versiota 4. Tarvittaessa käytämme myös Node.js:aa kun se on teknisesti järkevämpää – esimerkiksi AWS-pilviratkaisujen yhteydessä.
Käyttäjäturvallisuuden toteutamme OIDC- ja OAuth2-standardeilla Spring Securityn sekä Spring Addonsien avulla. Teemme sujuvat integraatiot eri tunnistautumisalustaan, kuten Auth0, Cognito, Keycloak, Curity tai Azure AD.
Sovellusten valvonta hyötyy suuresti automaatiosta. Suosittelemme ja käytämme työkaluja kuten Prometheus, Grafana, OpenTelemetry, Elasticsearch, Logstash, Kibana, Jaeger ja Sleuth.

Käyttöliittymäkehitys
Meillä on useiden vuosien kokemusta Angular- ja TypeScript-kehityksestä esimerkiksi työeläkevakuutuksen parissa. Olemme siirtyneet Angulariin 21:een, jossa hyödynnämme Angularin uusia Templateja ja Signaaleja, ja olemme luopuneet ngModulesin ja zone.js:n sidoksesta.
Uusin projektimme on toteutettu Reactilla ja TypeScriptillä TanStack Queryn ja muiden hyödyllisten TanStack-kirjastojen tuella.
Sivumallien (layouts) luomisessa olemme kokeilleet tekoätyökaluja erittäin hyvillä tuloksilla. Käyttöliittymän logiikan ja toiminnallisuuden toteuttaminen vaatii kuitenkin edelleen inhimillistä ohjausta ja laadunvarmistusta.

Keskuskonekehitys
Mainframe-projektimme IBM z/OS -alustalla ovat hieman menneltä ajalta, mutta osaaminen ei ole hävinnyt. COBOL:ia on käytetty muun muassa junaliikenteen paikanvarauksessa ja työeläkevakuutuksessa. PL/I-ohjelmointia on hyödynnetty rautatiekuljetusten hallinnassa sekä kuntien palkkajärjestelmissä. Keskuskoneprojekteissa käytössä oli myös CICS, MQ Series, JCL sekä DB2. Nämä projektit ovat usein sisältäneet hiukan uuden toiminnallisuuden kehittämistä ja laajasti bugikorjauksia ja koodin siistimistyötä.
