Kenneth Pedersen og Nora Tomas fra kode24-dagen. Foto: Shawn Arvind Thuraisingam

Vipps, så var de der:
Fra null til knallsuksess

På kode24-dagen var vi så heldige å få to sentrale utviklere til å dele noen av tankene og ideene sine rundt innlogging og sikkerhet i Vipps, og de stilte på podiet torsdag fra 10:00 til 10:45. Der kom de med litt info om hva som har gjort Vipps til kanskje tiårets norske it-suksess.

Publisert

For åtte år siden fantes det ingen ting som het «Vipps». Men siden da har ordet – som tidligere betød «brått» eller «på et blunk» – blitt utvidet til også å være et verb, og blitt innlemmet i både Bokmåls- og Nynorskordboka som «å vipse» (med én p).

I løpet av de første to årene vokste Vipps fra null til over 2,5 millioner brukere. Selv i dagens verden er dette brått.

Og i dag har Vipps samlet Norge – eller i hvert fall over 4 millioner av oss. Det er ca. tre firedeler av Norges innbyggere, og 3,8 millioner unike brukere benytter Vipps for å handle på nettet hver måned.

Hva skjedde?

Vipps har vært på en begivenhetsrik reise siden selskapet ble dannet av DNB i 2015. I løpet av 2018 utvides gruppen med norske banker som eier Vipps. Så, i oktober i fjor, gir EU grønt lys for at den norske betalingsløsningen får fusjonere med MobilePay i Danmark, Finland og Litauen. Sammen representerer de to selskapene 11 millioner forbrukere og 400 000 bedrifter, og brukes over 1 milliard ganger i året.

I kjølvannet av Vipps-suksessen ligger mange mislykkede forsøk på betalingsløsninger via mobil – ingen nevnt, ingen glemt. Noen av dem gikk ganske enkelt i glemmeboka, mens andre ble en del av Vipps.

Brukeropplevelsen er sentral

Finansielle muskler og god timing for sammenslåinger og avtaler (det vi andre gjerne kaller «flaks») er som oftest en forutsetning for suksess. Men it-historien er full av eksempler på at dette ikke alltid er nok. Svikter selve produktet, er du uansett ute og kjører.

Kenneth Pedersen og Nora Tomas er utviklere i User Security-teamet i Vipps MobilePay. Kenneth har 20 år bak seg som arkitekt, tech lead og utvikler, og har jobbet for Vipps i fire år.

For tiden jobber han mest med de systemene som autentiserer og identifiserer brukerne av Vipps.

– Det er både spennende og skremmende å ha ansvar for et system som hele Norge bruker «hele» tiden, sier Kenneth. – For å kunne ha høy endringstakt samtidig som vi sørger for at systemet er både sikkert og stabilt er det viktig å gjøre gode risikovurderinger hele tiden. Paradoksalt nok fordrer dette en kultur der det er greit å gjøre feil, og der alle kan lære av hverandres feil, mener han.

Foredraget til Vipps skapte mye engasjement.

Lov å feile

Nora er også utvikler og security lead i User Security-teamet i Vipps. Hun har tre års erfaring som utvikler, og to av årene har hun vært hos Vipps.

– Da jeg begynte i Vipps, hadde jeg veldig lyst til å lære mer om sikker utvikling og autentisering. Det var det perfekte stedet å lære om disse tingene på! Nå jobber jeg med de samme systemene som Kenneth, forteller Nora.

Noe av det hun setter mest pris på i Vipps, er en arbeidskultur som gir veldig fritt spillerom.

– I Vipps er vi stolte av fuckups-kulturen vår. Den har utgangspunkt i at ansatte blir gitt stor grad av frihet, og det er ønskelig at man alene og i grupper strekker og utfordrer seg faglig. Og når du tråkker feil, for det skjer hvis du virkelig strekker deg, er vi raske til å dele fuckupen i en Slack-kanal, sammen med læringen som hendelsen ga oss. Nettopp det å ta lærdom av egne og andres feil, er den beste måten å sørge for at feilen ikke gjentas, smiler hun.

Sterkt miljø

Nora opplever at hun har veldig dyktige kollegaer i Vipps.

– På teamet vårt finnes det utviklere med 15-20 år erfaring, samt noen som bare har et par år med arbeidserfaring, sier hun. – Som ny i Vipps, med litt færre års erfaring enn de andre, følte jeg likevel at det ikke finnes dumme spørsmål. Selv hvis vi har gått gjennom et tema tidligere, er gruppen alltid åpen til å forklare ting på nytt, om det skulle trengs.

– Det er viktig med høy tillit når man jobber med kompliserte temaer, der det stilles høye krav til sikkerhet, slik tilfellet er i Vipps. Det gjør det tryggere for alle å si fra hvis de oppdager sikkerhetsproblemer, og man sørger for at potensielle svakheter blir oppdaget før de blir et problem, sier Nora.

Safety first

Det sier seg selv at sikkerheten er kritisk når man håndterer store pengestrømmer i en helautomatisk tjeneste. Vipps er ikke noe unntak:

– Alle teamene har security leads som er ansvarlige for å holde et ekstra øye med sikkerheten i teamet, forteller Nora. – Det som er veldig fint med å jobbe som security lead i Vipps, er at sikkerhetsaspektet er integrert i hele arbeidsflyten. Generelt sett, hvis man spør folk i Vipps om sikkerhets-relaterte ting, er de interessert i å delta i diskusjonen. Vi har også en security Slack-kanal der det kommer innlegg fra folk i alle avdelinger.

Viktig nøkkelprogram

Teamet til Kenneth og Nora jobber på flere forskjellige systemer, og hovedautentiserings-systemet heter Vinx. Du har kanskje lagt merke til at når man logger seg inn i Vipps, kan du se tre prikker som spretter på en skjerm. Dette viser at Vinx jobber med sakene sine.

– Navnet Vinx er satt sammen av bokstaven V og «sfinks», forklarer Nora. – Sfinksen er portvokteren i egyptisk mytologi, så da passer det bra å bruke den som maskot for det systemet som er beskytteren til alle våre API-er i Vipps, sier hun. Alle brukere må gjennom Vinx for å gjøre noe som helst i Vipps. Det betyr blant annet at Vinx må være rask, ha høy oppetid, og kjapt kunne skalere til hendelser som for eksempel TV-aksjonen til NRK og andre større innsamlinger.

EU og PSD2

Bakgrunnen for at Vinx ble laget, var et nytt EU-direktiv som heter PSD2. EU krever at alle som driver med betalingstjenester, slik som Vipps, banker eller kortselskaper, må ha god kontroll på hvem brukeren er for å unngå svindel og økonomisk kriminalitet.

– I tillegg må vi kunne bevise at brukeren har sett betalingsdetaljene, slik som mottaker og beløp. Man må også sikre at når brukeren har godkjent betalingen, kan ikke samme godkjennelse brukes for å få utført andre betalinger, utdyper Nora.

– PSD2 stiller en rekke tekniske krav til hvordan alt dette skal gjøres. For å tilfredsstille kravene bestemte Vipps seg for å erstatte den gamle løsningen med et helt nytt system. Samtidig passet vi på å gjøre en rekke andre sikkerhetsforbedringer, tilføyer hun.

Mye av den daglige jobben til teamet er å utvikle og vedlikeholde systemer som Vinx. De har en standup per dag der de forteller hva de jobber med og tar eventuelle diskusjoner om tekniske problemer til slutt.

– For min del er det fint å føle at det er mye trygghet og forståelse i teamet, sier Nora. Da er det lett å vise koden sin til andre på slutten av standupen og spørre om hjelp hvis det trengs. Mye tillit fører til god effektivitet. Når man tør å spørre om hjelp og si hva man ikke forstår, løser ting seg raskt.

kode24-dagen

Vipps-duoens tema for kode24-dagen var «Sikkerhet i høy hastighet – hvordan Vipps sikrer sine API-er». I presentasjonen sin gikk de to nærmere inn på hvordan Vinx er satt sammen.

– Vi prøvde å forklare konseptene fra bunnen av, slik at alle kunne ta med seg noe fra presentasjonen – selv hvis de ikke skal lage et autentiseringssystem som tilfredsstiller PSD2. Vi forklarte hvordan grunnleggende autentisering funker og hva access tokens og refresh tokens er, og så forklarte vi hva vi legger til for å gjøre Vipps-API-en enda sikrere. Eksempler på dette er request-signering og bruk av Zero Knowledge Proof-algoritmer. Disse mekanismene trengs ikke i alle autentiseringssystemer, men det er fint å kjenne til konseptene. For sikkerhetsprinsippene som ligger i bunn er universelle, forteller de to.

Publikum fikk også vite litt om hvordan Vinx klarer å skalere raskt ved å presentere litt av infrastrukturen Vipps bruker, og vise prinsipper de følger for at Vinx skal være rask å bruke.

Og som vi alle vet, er hurtighet en hjørnestein i brukeropplevelsen!

Foretrekk oss i Google Discover

Ved å legge oss til som foretrukket kilde i Google vil du blant annet få opp flere av sakene våre i Google Discover. Tusen takk for støtten!

Foretrekk oss 😻
Bygget med Labrador CMS