Skip to main content

29 Tekniikkaa

29Tekniikka logo

Pilvipohjainen ohjelmistokehitys yrityksille

Kehitämme cloud-pohjaisia ohjelmistoja Helsingissä, Oulussa ja Tampereella. Tämä tarkoittaa käytännössä sitä että rakennamme järjestelmiä jotka pyörivät pilvipalveluissa ja jotka on suunniteltu alusta asti siihen ympäristöön jossa ne tulevat toimimaan.
Cloud-ohjelmistokehitys ei ole sama asia kuin perinteinen ohjelmistokehitys joka vain siirretään palvelimelle. Se on erilainen tapa ajatella arkkitehtuuria, skaalautuvuutta, kustannuksia ja ylläpitoa. Tässä tekstissä kerromme mitä se meillä tarkoittaa ja millaisissa tilanteissa siitä on hyötyä.

Mitä cloud-ohjelmistokehitys tarkoittaa

Kenen kanssa työskentelemme

Asiakkaamme ovat yleensä sellaisia yrityksiä joilla on joko uusi tuoteidea joka pitäisi rakentaa pilveen tai olemassa oleva järjestelmä joka pitäisi siirtää sinne. Molemmissa tapauksissa lähtökohta on sama: järjestelmän pitää toimia luotettavasti, skaalautua tarpeen mukaan ja olla kustannuksiltaan ennustettavissa.
Tyypillinen asiakas on kasvuyritys jonka käyttäjämäärät ovat kasvaneet nopeasti ja jonka nykyinen infrastruktuuri ei enää riitä. Tai vakiintunut yritys joka on huomannut että oman konesalin ylläpito maksaa enemmän kuin pilvipalveluiden käyttö maksaisi. Tai teknologiayritys joka rakentaa uutta tuotetta ja haluaa tehdä sen alusta asti oikein.
Meille tulee myös paljon asiakkaita jotka ovat jo pilvessä mutta eivät ole tyytyväisiä siihen mitä se maksaa tai miten se toimii. Tämä on yleistä. Pilveen siirtyminen on helppoa mutta sen tekeminen kustannustehokkaasti on vaikeaa. Moni yritys huomaa vuoden kuluttua että lasku on kolminkertaistunut eikä kukaan tiedä miksi.

Mitä teemme käytännössä

Cloud-ohjelmistokehitys on laaja käsite ja sen alle mahtuu monenlaista työtä. Meillä on neljä aluetta joilla olemme tehneet eniten.

Uusien cloud-sovellusten rakentaminen

Rakennamme sovelluksia jotka on suunniteltu pilveen alusta asti. Tämä tarkoittaa konttipohjaista arkkitehtuuria, mikropalveluita siellä missä niistä on hyötyä, ja serverless-ratkaisuja siellä missä ne ovat järkevämpiä.
Käytämme AWS:ää, Azurea ja Google Cloudia. Valinta riippuu siitä mitä asiakas tarvitsee ja joskus myös siitä missä asiakkaan muut järjestelmät jo ovat. Emme ole naimisissa minkään pilvipalveluntarjoajan kanssa.
Tyypillinen projekti alkaa arkkitehtuurisuunnittelusta. Käymme läpi mitä sovelluksen pitää tehdä, ketkä sitä käyttävät ja millaisia kuormia sen pitää kestää. Vasta sen jälkeen valitaan teknologiat. Tämä järjestys on tärkeä koska väärin valittu teknologia on kallis korjata myöhemmin.

Olemassa olevien järjestelmien siirtäminen pilveen

Pilvi-infrastruktuurin suunnittelu ja hallinta

Infrastruktuuri pilvessä pitää rakentaa koodina. Tämä tarkoittaa että kaikki mitä pilvessä on, on määritelty tiedostoissa jotka ovat versionhallinnassa. Kun jotain pitää muuttaa, muutos tehdään koodiin ja se viedään eteenpäin automaattisesti.
Käytämme Terrafarmia ja Pulumia. Molemmat toimivat hyvin ja valinta riippuu asiakkaan tarpeista. Terraform on kypsempi ja laajemmin käytetty. Pulumi on joustavampi ja sopii paremmin jos tiimi haluaa kirjoittaa infrastruktuurin samalla kielellä kuin sovelluksen.
Infrastruktuurin suunnittelussa on kaksi asiaa joihin kiinnitämme erityistä huomiota. Ensimmäinen on turvallisuus. Oletusasetukset pilvipalveluissa eivät ole aina turvallisia ja ne pitää käydä läpi järjestelmällisesti. Toinen on kustannukset. Pilvessä on helppo rakentaa jotain mikä toimii mutta maksaa liikaa. Suunnittelemme infrastruktuurin niin että se on sekä turvallinen että kustannustehokas.

Pilvikustannusten optimointi

Tämä on sellainen palvelu jota monet eivät osaa pyytää mutta jota useimmat tarvitsevat. Jos sinulla on pilvessä järjestelmiä ja lasku tuntuu suurelta, todennäköisesti siellä on asioita joita voisi tehdä halvemmalla.
Käymme läpi kaikki resurssit ja katsomme mitkä niistä ovat alikäytettyjä tai tarpeettomia. Tyypillisiä löydöksiä ovat liian suuret instanssit, vanhat levykuvat joita kukaan ei enää tarvitse, lokit joiden säilytysaika on ikuinen ja kehitysympäristöt jotka pyörivät ympäri vuorokauden vaikka niitä käytetään vain toimistoaikoina.
Kustannusoptimointi ei ole kertaluonteinen projekti. Se on jatkuva prosessi joka vaatii seurantaa ja säännöllistä läpikäyntiä. Rakennamme yleensä asiakkaille automaattisen seurannan joka hälyttää jos kustannukset lähtevät nousemaan odottamatta.

Miten homma etenee

Aloitamme puhelulla tai palaverilla. Kerrot mitä tarvitset ja mitä sinulla on jo. Tämä ei maksa mitään eikä sido sinua mihinkään.
Sen jälkeen käymme asian läpi tarkemmin. Katsomme teknisen puolen, aikataulun ja budjetin. Kerromme rehellisesti jos jokin ei ole realistista tai jos jokin kannattaa tehdä eri tavalla kuin ajattelit.
Tässä vaiheessa saatamme myös sanoa että emme ole oikea kumppani tähän. Se on mahdollista. Mieluummin sanomme sen nyt kuin puolen vuoden päästä.
Sitten teemme tarjouksen. Siinä lukee mitä tehdään, millä hinnalla ja milloin se on valmis. Ei ympäripyöreitä lupauksia eikä piilokuluja.
Kun työ alkaa, pidämme sinut mukana. Näet mitä tapahtuu. Pystyt kommentoimaan. Jos mieli muuttuu matkan varrella, se on ihan ok kunhan siitä sovitaan.
Kun työ on valmis, saat koodin ja dokumentaation itsellesi. Ei jäädä roikkumaan väliin.

Keitä me olemme

Meitä on kymmenkunta henkeä. Osa on ollut alalla yli kaksikymmentä vuotta, osa on nuorempia. Kaikki tekevät koodia itse, myös ne jotka myyvät ja johtavat. Meillä ei ole erillistä myyntiorganisaatiota joka lupaa asioita joita kukaan ei pysty tekemään.
Toimimme Helsingissä, Oulussa ja Tampereella. Tapaamme kasvokkain kun se on järkevää. Muuten homma hoituu etänä.

Miksi valita meidät

Emme alihanki töitä eteenpäin. Se kuka myy on se joka tekee. Tämä kuulostaa itsestäänselvältä mutta ei ole sitä tällä alalla.
Puhumme suomea. Kaikki asiakkaat eivät tarvitse tätä. Ne jotka tarvitsevat, arvostavat sitä että asiat voi sopia omalla kielellä.
Kerromme jos emme osaa. Jos jokin asia on sellainen jota emme hallitse, sanomme sen. Mieluummin suosittelemme jotakuta toista kuin otamme työn jota emme pysty tekemään kunnolla.
Emme myy sinulle sitä mitä et tarvitse. Jos tulet kysymään kokonaista pilvialustaa ja näemme että nykyinen järjestelmä riittää, kerromme sen.

Kenelle tämä sopii

Kasvuyrityksille joilla on tuote joka toimii ja joka pitäisi saada skaalautumaan.
Vakiintuneille yrityksille joilla on järjestelmiä jotka pitäisi modernisoida tai siirtää pilveen.
Startupeille joilla on idea ja rajallinen budjetti ja tarve saada prototyyppi nopeasti.
Teknologia-alan yrityksille jotka tarvitsevat lisäkäsiä tai erityisosaamista jota omasta talosta ei löydy.