Siirry sisältöön
UpHouse Consulting

Joukkoliikenteen verkkosivusto

Fullstack-kehittäjä

TypeScript / Next.js / React / C# / .NET / Episerver / NestJS / ElasticSearch / Sass / Azure

2023–2026

Lähtötilanne

Työskentelin laajan julkisen verkkosivuston parissa, joka palveli jo valmiiksi suurta käyttäjäjoukkoa. Samalla siihen piti tuoda uusia ominaisuuksia, rakenteellisia parannuksia ja parempia sisäisiä työkaluja. Kyse ei ollut puhtaalta pöydältä alkavasta projektista eikä yhden asian uusiksi tekemisestä, vaan pitkäikäisestä alustasta, jonka piti jatkaa asiakkaiden palvelua samalla kun sen alla olevia osia remontoitiin.

Roolini

Roolini vaihteli sen mukaan, missä projekti tarvitsi eniten apua. Välillä tein tuotekehitystä, kuten ominaisuuksia ja lomakkeita. Välillä työ painottui arkkitehtuuriin, kuten migraatioihin, yhteisiin UI-ratkaisuihin ja hakuun. Pidin siitä, koska pääsin auttamaan siellä, missä eteneminen muuten olisi helposti takunnut.

Mitä tein

Yksi merkittävä osa työtä oli frontendin siirtäminen Next.js 12:sta versioon 14, mukaan lukien siirtymä Pages Routerista App Routeriin. Samalla olin mukana rakentamassa sisäistä komponenttikirjastoa, jotta tiimillä olisi yhteisempi pohja tehdä käyttöliittymätyötä ilman, että samoja ongelmia ratkaistaan yhä uudelleen eri puolilla koodipohjaa.

Toinen iso kokonaisuus oli haku. Olin mukana kahden hengen työryhmää, jossa haku irrotettiin monoliittisesta .NET-backendistä, johon se oli vuosien aikana kietoutunut CMS:n ja muiden rajapintojen sekaan, ja rakennettiin omaksi NestJS-palveluksi ElasticSearchin päälle.

Mikä teki työstä hankalaa

Haasteita aiheutti työn laajuus. Tässä projektissa ei voinut pysyä yhden erikoisalueen sisällä. Stack oli laaja, teknistä velkaa oli huomattavasti, ja päivän työ saattoi vaihtua nopeasti React Hook Formin ihmettelystä CMS-ongelmiin ja sisällöntuottajien tukemiseen, ja sitten tuotannon häiriöihin, joiden juurisyy löytyikin lopulta infrastruktuurista eikä sovelluskoodista.

Paransimme koko ajan käytössä olevaa palvelua samalla kun rakensimme uusia ominaisuuksia, joita ihmiset tarvitsivat pikaisesti. Edistystä piti tehdä ilman sitä harhaa, että koko järjestelmä voitaisiin pysäyttää siihen asti, että arkkitehtuuri ja ratkaisu on täydellinen. Tällaisessa työssä käytännönläheisestä laaja-alaisuudesta oli oikeasti hyötyä: piti pystyä tarttumaan seuraavaan ongelmaan riippumatta siitä, millaista osaamista se kulloinkin vaati.

Lopputulos

Sivusto kokonaisuudessaan oli monessa tärkeässä kohdassa paremmalla pohjalla. Frontend oli päivitetty ajantasalle, haku irrotettu omaksi palvelukseen ja komponenttikirjasto helpotti yhteistä tekemistä. Yhtä olennaista oli se, että sivusto pysyi koko ajan käytössä ja palveli tarkoitustaan myös muutosten keskellä.

Mitä opin

Tämä projekti muistutti, että laaja osaaminen on oikeasti hyödyllistä. Osa parhaasta työstä syntyy siitä, että pystyy liikkumaan tuotekehityksen, alustaparannusten ja yhteisten työkalujen välillä ilman että pitää mitään niistä toissijaisena.

Voisinko auttaa teidän projektissanne?

← Takaisin etusivulle