Jouni Tuovinen 2027

5 000 000 € terveyskeskuksen aukioloajoista: Näin valtio tilaa kalliilla kiellettyään ensin ketterät

Katsastin kaikkien 21 hyvinvointialueen verkkosivustot ja niiden hankintahinnat. Tuloksena on yli 5 miljoonan euron lasku veronmaksajille käytännössä staattisista teksteistä. Blogini footerin heitto 300 000 euron monoliitista ei ollut vitsi, vaan valtion virallinen hankintatodellisuus.

15. syyskuuta 20267 min
Kirjoittaja:Jouni Tuovinen

Hyvinvointialueiden verkkosivuhankinnat

Kampanjasivustoni alareunassa on seissyt alusta asti pieni toteamus: ”Hostattu Suomessa UpCloudin palvelimilla (3 €/kk). Julkinen sektori olisi tilannut tästä 300 000 € monoliitin.”

Moni saattoi pitää tuota pelkkänä koodarin vitsinä tai vaalikampanjan retorisena kärjistyksenä.

Päätin ottaa asiasta selvää. Kävin järjestelmällisesti läpi Suomen kaikkien 21 hyvinvointialueen viralliset verkkosivustot, niiden taustateknologiat, palvelimet ja julkiset HILMA-hankintailmoitukset. Jätin vertailusta suosiolla pois Helsingin kaupungin sote-kokonaisuuden, sillä sen monoliittia on rakennettu niin pitkään ja moneen suuntaan, että sen hintalapun selvittäminen vaatisi oman valtiotieteellisen tutkimusryhmänsä.

Lopputulos on tyly: 300 000 euroa ei ollut liioittelua – se on valtion virallinen hankintatodellisuus. Hyvinvointialueiden perussivustoihin on poltettu veronmaksajien rahoja varovaisestikin arvioiden yli viisi miljoonaa euroa.


Mitä rahalla oikeasti tilattiin?

Puhutaanpa hetki siitä, mitä hyvinvointialueen perussivustolla todellisuudessa tehdään.

Kyseessä eivät ole potilastietojärjestelmät, eivät laboratoriotulosten reaaliaikaiset tietokannat eivätkä lääkemääräysjärjestelmät. Ne pyörivät aivan omissa suojatuissa erillisportaaleissaan (kuten OmaKannassa tai DigiFinlandin ratkaisuissa).

Hyvinvointialueen julkinen verkkosivusto on 95-prosenttisesti täysin staattista sisältöä:

  • Terveyskeskusten, sosiaalitoimistojen ja hammashoitoloiden osoitteita ja puhelinnumeroita.
  • Aukioloaikoja ja toimipistekuvauksia.
  • Uutisia, lehdistötiedotteita ja PDF-muotoisia esityslistoja.

Oikeassa maailmassa tämänkaltaisen sisällön nopea, saavutettava ja pomminvarma jakelu hoidetaan kevyillä julkaisujärjestelmillä tai staattisilla sivugeneraattoreilla muutaman euron kuukausittaisilla infrakuluilla. Julkisella sektorilla siitä rakennettiin miljoonaluokan monumentti.


Datan ruumiinavaus: 21 aluetta ja yli 5 miljoonaa euroa

Julkisista hankintailmoituksista (HILMA) löytyvät toteutuneet sopimuskatot ja hankintapäätökset antavat osviittaa mittakaavasta:

  • Pohjanmaan hyvinvointialue (WordPress): 343 682 € (HILMA 76233)
  • Vantaa ja Kerava / Vakehyva (Drupal): 314 556 € (HILMA 47338)
  • Etelä-Pohjanmaa / Hyvaep (WordPress): 245 752 € (HILMA 112738)
  • Päijät-Häme / Päijät-Sote (WordPress): 159 500 € (HILMA 85199)

Kun näiden vahvistettujen lukujen rinnalle lasketaan lopuille alueille alan yleisen markkinatason mukaiset konservatiiviset pohjahinnat (WordPress-perustoteutukselle varovainen 150 000 €, laajemmalle Drupalille 250 000 € ja raskaalle Liferay-in-house-portaalille 400 000 €), kokonaiskuva näyttää tältä:

Hyvinvointialue Alusta Hostaus / Infra Kustannusarvio (minimi) Huomio / Lähde
Varsinais-Suomi (Varha) Drupal Cloudflare (US) 250 000 € Arvioitu markkinapohja
Satakunta WordPress Hetzner (FI) 150 000 € Arvioitu markkinapohja
Kanta-Häme (Oma Häme) Liferay Istekki Oy (FI) 400 000 € In-house-tilaus
Pirkanmaa (Pirha) Liferay Istekki Oy (FI) 400 000 € In-house-tilaus
Päijät-Häme (Päijät-Sote) WordPress Google Cloud (FI) 159 500 € HILMA 85199
Kymenlaakso (KymenHVA) WordPress Hetzner (FI) 150 000 € Arvioitu markkinapohja
Etelä-Karjala (Ekhva) WordPress Google Cloud (FI) 150 000 € Arvioitu markkinapohja
Etelä-Savo (Eloisa) WordPress Hetzner (FI) 150 000 € Arvioitu markkinapohja
Pohjois-Savo Liferay Istekki Oy (FI) 400 000 € In-house-tilaus
Pohjois-Karjala (Siun sote) WordPress Google Cloud (FI) 150 000 € Arvioitu markkinapohja
Keski-Suomi (Hyvaks) Drupal Azure / Cloudflare 250 000 € Arvioitu markkinapohja
Etelä-Pohjanmaa (Hyvaep) WordPress DigitalOcean (NL) 245 752 € HILMA 112738
Pohjanmaa WordPress Hetzner (FI) 343 682 € HILMA 76233
Keski-Pohjanmaa (Soite) WordPress Hetzner (FI) 150 000 € Arvioitu markkinapohja
Pohjois-Pohjanmaa (Pohde) WordPress Hetzner (FI) 150 000 € Arvioitu markkinapohja
Kainuu Drupal UpCloud (DE) 250 000 € Arvioitu markkinapohja
Lappi (Lapha) Liferay Istekki Oy (FI) 400 000 € In-house-tilaus
Itä-Uusimaa WordPress Hetzner (FI) 150 000 € Arvioitu markkinapohja
Keski-Uusimaa (Keusote) WordPress Hetzner (FI) 150 000 € Arvioitu markkinapohja
Länsi-Uusimaa (Luvn) Drupal (Decoupled) Google Cloud (FI) 250 000 € Arvioitu markkinapohja
Vantaa ja Kerava (Vakehyva) Drupal Fastly (US) 314 556 € HILMA 47338
YHTEENSÄ 5 013 490 € (Konservatiivinen alaraja)

Yli 5 miljoonaa euroa. Summa on alakanttiin, sillä se sisältää vain peruskehityksen ja minimisopimuskaudet – todellisuudessa jatkuvat muutospyynnöt, konsulttityöpajat ja lisenssimaksut paisuttavat kokonaislaskua vuosi vuodelta.


Nopea vilkaisu konepellin alle

Koodarina en voinut olla selaamatta myös sivustojen lähdekoodia. Teknisen toteutuksen puolella silmiinpistävimmät havainnot olivat:

  • Evästeet vs. profilointi: Analytiikkatyökalut (kuten Google Tag Manager ja Metan mainospikselit) aloittivat – tai minun tapauksessani yrittivät aloittaa, sillä käytän uBlock Originia – käyttäjän seurannan jo ennen kuin evästebannerista oli klikattu yhtäkään valintaa.
  • Geocities tekee paluun: Joukossa oli runsaasti raskaita jQuery-riippuvuuksia ja 90-luvun Geocities-ajoilta tuttua raakaa inline-skriptausta suoraan CMS:n tekstikenttiin liitettynä (aina burlywood-taustavärejä myöten).
  • Decoupled-himmeli: Löytyipä joukosta jopa moderni decoupled Drupal, jossa tehokkaasti buildattu Next.js-frontend oli laitettu kutsumaan taustalla pyörivää raskasta legacy-bäkkäriä GraphQL-rajapinnan läpi. Kaksi eri kehitystiimiä, tuplapalvelimet ja tuplalaskutus veronmaksajille staattisen tekstin esittämisestä.

Mutta ei takerruta tämän enempää teknisiin nyansseihin. Todellinen ongelma ei nimittäin piile koodissa, vaan valtion hankintajärjestelmän arkkitehtuurissa.


Kartellin anatomia: Näin valtio kieltää ketteryyden

Miksi tavanomaisesta verkkosivustosta syntyy julkisella sektorilla automaattisesti satojentuhansien eurojen rahareikä?

Syy on selkeä: julkinen sektori hankkii kalliilla heti sen jälkeen, kun se on itse kieltänyt kustannustehokkaat ja ketterät tekijät.

Kun hyvinvointialue kilpailuttaa IT-palveluita, tarjouspyyntöihin leivotaan valintaperusteet, jotka torpedoivat vapaan markkinatalouden ja pienten yritysten osallistumisen. Tästä löytyy mustaa valkoisella suoraan virallisista asiakirjoista.

Otetaan konkreettinen esimerkki Länsi-Uudenmaan hyvinvointialueen tekoäly- ja tiedolla johtamisen asiantuntijapalveluiden kilpailutuksesta (kohta 5.1.9, Valintaperusteet):

  • Liikevaihtoleikkuri: ”Tarjoajan taloudellisten edellytysten on oltava hankinnan kokoon nähden riittävät siten, että yrityksen liikevaihto sen viimeiseltä vahvistetulta tilikaudelta on vähintään 200 000 euroa.”
  • Vastuuvakuutus: ”Tarjoajan ottaman ammatinharjoittajan vastuuvakuutuksen vakuutussumma on seuraava: 1 000 000 euroa (per vahinkotapahtuma).”
  • Referenssiseula: ”Tarjoajalla on oltava hankinnan osa-alueiden laatu ja laajuus huomioon ottaen riittävästi kokemusta vastaavista palveluista... Tarjoajan tulee täyttää 'Referenssilomake'...”

Tämä kiteyttää järjestelmän absurdiuden: vaikka kyseessä olisi tekoälyn kaltainen nopeasti kehittyvä ala – jossa terävin asiantuntemus asuu usein 1–2 hengen pienissä tiimeissä, freelancereilla tai vastaperustetuissa startupeissa – heidät karsitaan pois jo ovella pelkän liikevaihdon ja byrokraattisten lomakkeiden perusteella.

Verkkosivujen ja laajempien IT-hankintojen puitesopimuksissa nämä liikevaihtovaatimukset nostetaan rutiininomaisesti miljooniin euroihin ja referensseiksi vaaditaan ”vastaavan kokoluokan julkishallinnon hankintoja”. Se luo klassisen muna-kana-ongelman: julkisia töitä saa tehdä vain se, joka on jo aiemmin päässyt julkisiin töihin käsiksi.

Pöytään jää vain kourallinen IT-jättejä ja konsulttitaloja. Julkisella puolella ei osteta valmista järjestelmää, vaan laskutettavia työtunteja ja palavereja. Tiimiin kiinnitetään projektipäällikkö, apulaisprojektipäällikkö, palvelumuotoilija, UX-suunnittelijoita, arkkitehti, testaaja ja koodareita. Siinä missä ketterä asiantuntija tekisi sivuston valmiiksi viikoissa, konsulttiarmeija pitää työpajoja kuukausikaupalla – 120 euron tuntihinnalla.


Miten tämä refaktoroidaan?

Hyvinvointialueet tuskailevat budjettialijäämiään, lakkauttavat terveysasemia ja vaativat valtiolta lisämiljardeja. Samaan aikaan pelkkien aukioloaikojen ja yhteystietojen julkaisemiseen poltetaan miljoonia euroja puitesopimusten suojaamille IT-toimittajille.

Tämä himmeli korjataan kolmella asialla:

  • Hankintojen pilkkominen pakolliseksi: Julkiset IT-hankinnat on lailla velvoitettava ositettavaksi siten, että pienet ja ketterät kotimaiset ohjelmistoyritykset pääsevät tarjoamaan ilman keinotekoisia volyymivaatimuksia.
  • Liikevaihto- ja referenssimuurien purku: Yrityksen liikevaihto ei kerro koodin tai arkkitehtuurin laadusta yhtään mitään. Painoarvo on siirrettävä työnäytteisiin, tietoturvaan, avoimiin rajapintoihin ja saavutettavuuteen.
  • Irti toimittajaloukuista (API-first): Julkishallinnon datan ja sisällön pitää asua avoimien rajapintojen takana. Kun rajapinnat ovat standardoituja, verkkosivujen käyttöliittymät voidaan kilpailuttaa ja rakentaa ketterästi murto-osalla nykyisistä kustannuksista.

Julkisen talouden ongelmia ei ratkaista juustohöyläämällä hoitohenkilökunnan arjesta. Ne ratkaistaan korjaamalla valtion järjestelmäarkkitehtuuri ja laittamalla piste verovarojen kaatamiselle toimimattomiin järjestelmähimmeleihin.


Lähteet

Jouni Tuovinen

Jouni Tuovinen

Liberaalipuolue

Ohjelmistoarkkitehti, sarjayrittäjä ja eduskuntavaaliehdokas Helsingissä. Kirjoitan taloudesta, teknologiasta, byrokratian karsimisesta ja vapaudesta.