Finn.no velger Remix: «Vist seg å være effektivt»

Vi har sjekket hvilke teknologier utviklerne bruker når de lager Finn.no.

Henrik Sandberg er fullstack-utvikler i Finn.no. 📸: Privat
Henrik Sandberg er fullstack-utvikler i Finn.no. 📸: Privat Vis mer

De fleste kjenner antagelig til Finn.no – tjenesten brukes nemlig av rundt 95 prosent av Norges befolkning, ifølge fullstack-utvikler Henrik Sandberg i Finn.

– Dermed er det både utrolig spennende og ansvarsfullt å jobbe her. Det slår meg også hvor mange jeg kjenner som bruker tjenesten jeg bidrar til, noe som føles nesten uvirkelig, sier Sandberg.

Til ukens "Min stack"-spalte har vi bedt Sandberg om å fortelle om hvordan de lager Finn.no. Hvilke teknologivalg har de gjort, og hvordan har det fungert for dem?

Finn.no finnes både som nettside og mobil-app. Her den siste versjonen av iPhone-appen. 📸: Kurt Lekanger
Finn.no finnes både som nettside og mobil-app. Her den siste versjonen av iPhone-appen. 📸: Kurt Lekanger Vis mer

– Hvordan lager dere backenden?

– Finn er for tiden engasjert i et omfattende, flerårig prosjekt sammen med Blocket i Sverige, Oikotie i Finland, og DBA i Danmark. Målet er å forene disse plattformene, samtidig som vi beholder de kjente og kjære merkevarene.

– Vi har utviklet en ny plattform kalt Aurora for dette formålet. Aurora er inspirert av det vi allerede har implementert hos Finn, noe som betyr at vår tilnærming til teknologivalg og utviklingsmetoder vil fortsette å være svært lik de vi har i dag.

– Finn har en fleksibel teknologisk infrastruktur. Hvert team har stor frihet til å velge teknologien de ønsker å benytte.

«Vårt team benytter hovedsakelig Kotlin og Node for backend.»

– Vi er basert på mikrotjenester og bruker Google Cloud som vår skyleverandør. Disse mikrotjenestene kjører i Docker-containere, orkestrert via Kubernetes. Data flyter gjennom selskapet via Kafka-strømmer eller REST-API-er.

– Vårt team benytter hovedsakelig Kotlin og Node for backend, avhengig av behovene for det spesifikke prosjektet.

– Hvordan har dette fungert for dere?

– Teknologivalget er pragmatisk og fungerer utmerket for oss. Det er ingen umiddelbare planer om endringer, men hvis behovet oppstår, vil det mest sannsynlig gjelde nye mikrotjenester.

– Og hva med frontenden?

På frontenden bruker vi en mikrotjeneste-tilnærming med et in-house utviklet system. En side kalles en "layout", og individuelle elementer er "podlets".

– Vårt team er ansvarlig for å laste inn produktsiden på Torget, og vi har valgt å bruke Remix og React for dette. React ble valgt fordi det er mye brukt i FINN, og alle på teamet har erfaring med det. Remix har også vist seg å være effektivt for våre behov.

– Hvordan har dette fungert, og ville dere gjort noe annerledes i dag?

– Det har vært noen diskusjoner om å gå bort fra Remix, men per nå ser vi ingen grunn til det.

– Bruker dere andre verktøy?

– Vi bruker Cypress for testing, Grafana for overvåkning, og et skreddersydd Kibana-dashboard.

– Vi får også varsler i Slack hvis noe ikke fungerer som det skal.

– Noe annet kode24-leserne bør vite om Finn.no og hvordan dere bygger tjenesten?

– Det som imponerer meg mest med Finn er den teknologidrevne kulturen og den fleksibiliteten vi har som utviklere. Det er enkelt å bytte team hvis man ønsker å jobbe med en annen teknologistack, noe jeg tror er ganske unikt i bransjen.