Riksauktioner

Ett skräddarsytt auktionssystem som både hemsida och app med över 10000 registrerade användare och 1000-tals aktiva objekt. Ett arbete under en längre tid med tajt samarbete tillsammans med kund

Riksauktioner app mockup bilder

Ett av de projekt som jag lagt ned absolut mest tid och engagemang på är nog Riksauktioner. Både på grund av storleken av systemet som helhet men nog mest på grund av de utmaningar som dykt upp under tiden projektet varit live.

Design och utveckling av plattformen

Detta var ett kul projekt redan från början och första gången jag designat ett skarpt system där ett av kraven var att hantera data i realtid med tanke på budgivningssystemet. Jag bestämde mig för en bekant tech-stack och därav är frontend byggt med NextJS + React Native och backend är byggt i NodeJS.

Grunden kring de interaktiva buden på sidan gjordes med WebSocket åt båda hållen. Bakgrunden till detta var nog den spelutveckling jag suttit med många år tidigare och tanken var att klienter ansluter sig mot servern och sätter upp en anslutning där sen allt som rör budgivningen kommuniceras. Detta är bland annat ett beslut som senare har ändrats 😅

Appen som utvecklades är min första och hittills enda erfarenhet av React Native och apputveckling, något som utöver processen att bli godkänd av App Store och behöva ”vänta” på att kunna uppdatera saker var en ganska snarlik upplevelse med tanke på likheterna mot React på webben.

Underhåll och optimeringar

Jag har nog lagt minst lika mycket tid efter projektet lanserades som under utvecklingen av systemet, både i form av vidareutveckling men även för optimering och anpassning efter behoven som ställts på plattformen.

En rejäl läxa är nog komplexiteten av originalprojektet som med tiden har förenklats och blivit robustare, en process som har varit väldigt givande att sitta med jämfört med flera andra webb-projekt där kraven inte alltid förändras så mycket efter en lansering. I takt med flera användare och objekt på sidan så har allt ifrån MySQL queries och Cache system gjorts om för att mer effektivt hantera trafiken på sidan, detta har lett till en betydligt stabilare plattform idag som utan problem klarar hundratals samtidiga användare som budar mot varandra.

Minimering av downtime

I och med att plattformen konstant används så har uppdateringar och minimering av downtime varit en stor faktor i arbetet med att underhålla sidan. Detta har gjort annars ”enkla” uppdateringar och databasmigrationer betydligt mer intressanta i vissa fall. Exempelvis så gjordes en stor uppdatering av budmotorn som involverade en total om-design av databastabellerna och med hjälp av att skicka data till båda versionerna samtidigt för att sedan i efterhand kunna bygga upp de nya tabellerna så skedde detta helt utan påverkan mot slutanvändarna.