Senior utvecklare · Umeå & distans

Från radarsignaler till appen i fickan.

Jag heter Magnus och har byggt mjukvara i tjugo år – appar, webbtjänster och API:erna bakom dem. På vägen har jag skrivit signalbehandling för radarvarnare i Gripen, fått iPhones att låsa upp dörrar, varit tech lead för TV4 Play och ICA-appen, byggt webbtjänster i Python, Go och Node.js och flyttat en hel produkt till React Native.

I dag bygger jag appar i React Native, TypeScript och Swift – åt andra och i egna appar som legat i App Store sedan 2015. Jag trivs bäst när jag får ta en funktion hela vägen, från API till app, och växla mellan att koda och att leda.

Radarn Tjugo år, ring för ring

Ringarna är årsringar: innerst det jag började med 2006, ytterst det jag lagt till de senaste åren. Radarn följer texten medan du läser. Peka på en prick för att se var jag har använt tekniken.

Kompetens

Där jag gör mest nytta.

Mobilappar, hela vägen

iOS sedan 2011 och React Native sedan 2022. Jag har byggt appar från grunden, tagit över stora kodbaser och skeppat till både App Store och Google Play.

  • Swift
  • Objective-C
  • React Native
  • Kotlin/Java

Webb och backend

Jag har byggt båda sidor av anropet: REST-API:er i Python till Projectplaces första iOS-app, tjänster i Go och Node.js och webb i React och TypeScript. Ett tiotal språk i produktion gör att jag snabbt kommer in i en ny stack.

  • TypeScript
  • React
  • Node.js
  • Go
  • Python
  • REST

Det som skiljer en demo från en produkt

Inloggning, offline, push-notiser, WebView som pratar med native och releaser som går att lita på. Sådant ingen märker – så länge det fungerar.

  • Autentisering
  • Offline
  • Push
  • CI/CD

Modernisering utan nödlandning

Objective-C till Swift på TV4, GWT till React Native på Tempus och stora ramverksuppgraderingar däremellan. Jag byter gärna motor under flygning – helst utan att passagerarna märker något.

  • Migrering
  • Uppgraderingar
  • Refaktorering

Prestanda och felsökning

Hackiga listor, krascher i produktion och buggen som bara syns på en enda telefonmodell. Jag mäter, letar upp grundorsaken och lagar den på riktigt.

  • Profilering
  • Felsökning i produktion
  • Releasearbete

Teknisk ledning

Tech lead för TV4 Play och ICA-appen på iOS. Jag leder gärna – med händerna kvar i koden och tätt ihop med produkt, design och test.

  • Arkitektur
  • Kodgranskning
  • Samarbete

Erfarenhet

Resan hittills.

Nyast först.

  1. 2022–nu

    Tempus Information Systems

    Senior mjukvaruutvecklare, mobil

    Utvecklar och förvaltar Tempus appar för iOS och Android. Jag har drivit flytten från GWT till React Native, stora uppgraderingar av React Native och jakten på prestandaflaskhalsar. Till vardags: arkitektur, native-integrationer, inloggning, offline, push-notiser, WebView som pratar med native, releaser och felsökning i produktion.

    • React Native
    • TypeScript
    • Redux Toolkit
    • Swift
    • Kotlin/Java
    • Firebase
    • CI/CD
    • Claude
    • Codex
  2. 2015–nu

    Egna produkter

    Från idé till release · i dag via MagnIT AB

    Nettolön räknar ut vad lönen kostar bolaget och vad som blir kvar efter skatt. Visualised Audio känner igen toner i realtid och visar övertonerna när du spelar – signalbehandling i fickan. Båda har legat i App Store i över tio år, och fler appar i Swift och React Native är på väg.

    • Swift
    • React Native
    • Ljudanalys
  3. 2021–2022

    Blocket

    Mjukvaruutvecklare, iOS · på distans

    Byggde vidare på Blocket-appen för iOS, framför allt transaktionsflödena där köpare och säljare gör upp affären – bland annat Blocketpaketet.

    • Swift
    • Objective-C
  4. 2019–2021

    Swedbank

    Mjukvaruutvecklare, iOS · på distans via Pure IT

    Utvecklade och förvaltade flera av Swedbanks iOS-appar, i både Swift och Objective-C, med etablerade flöden för CI och leverans. Bankappar är en bra skola i att bygga saker som folk litar på med sina pengar.

    • Swift
    • Objective-C
    • Jenkins
  5. 2019–2022

    Ad-Creator IT Umeå AB

    Medgrundare · sidoprojekt

    Byggde appar som PWA:er, med backend i Node.js på Heroku. Kunderna fanns främst i restaurangbranschen, så bolaget överlevde inte pandemin.

    • Node.js
    • PWA
    • Heroku
  6. 2018–2019

    Optimized Portfolio Management

    Mjukvaruutvecklare · på distans via Pure IT

    Byggde första versionen av deras webbtjänst för riskbedömning: ett verktyg som visualiserar risk mot avkastning när man köper fonder eller aktier.

    • React
    • TypeScript
    • Go
  7. 2018–2019

    Sartorius Stedim Data Analytics

    Mjukvaruutvecklare · via Pure IT

    Fullstack på interna verktyg som förenklar vardagen för medarbetarna – både backend och webbklient.

    • React
    • TypeScript
    • C#
    • ASP.NET Core
  8. 2017–2018

    ICA Gruppen

    Tech lead, ICA-appen för iOS · konsult

    Tech lead för den omgjorda ICA-appen på iOS, som följer kunden genom hela butiksbesöket: inspiration, inköpslistor, recept, butikskartor och mobila betalningar.

    • Swift
    • Mobila betalningar
  9. 2014–2017

    TV4

    Tech lead, TV4 Play för iOS · konsult

    Tillsammans med teamet lyfte vi appens betyg i App Store från 1,5 till 4,0 – samtidigt som vi flyttade kodbasen från Objective-C till Swift. Jag jobbade med allt från livesändningar och video on demand till DRM, analys, automatiserade tester och kontinuerlig integration.

    • Swift
    • Objective-C
    • Travis CI
  10. 2013–2014

    ASSA ABLOY

    Mjukvaruutvecklare, iOS · via Citerus

    Hjälpte till att lansera en pilot där iPhonen fungerar som passerkort – och gjorde sedan produkt av den. Dörren låses upp via Bluetooth.

    • Objective-C
    • Bluetooth
  11. 2009–2013

    Projectplace

    Mjukvaruutvecklare, webb- och mobilteamen

    Byggde Projectplaces första iOS-app från grunden, och REST-API:erna den behövde. Dessförinnan fullstack på själva webbtjänsten i Python och JavaScript, ett eget verktyg som visualiserade kodkvalitet – och en nyckelroll i bytet till Mercurial, inklusive att lära kollegorna det nya verktyget.

    • Objective-C
    • Python
    • JavaScript
    • REST
    • Mercurial
  12. 2007–2009

    Saab Avitronics

    Mjukvaruutvecklare, radarvarnare

    Matematiktung signalbehandling i C++ för radarvarnare i bland annat Tornado och JAS 39 Gripen. Automatiserade tester i en målmiljö som inte var en PC, och nära samarbete med kundens representanter.

    • C++
    • Python
    • PowerPC
  13. 2006

    S:t Eriks Ögonsjukhus

    Examensarbete

    En prototyp som tar data från ögonrörelsemätare och med matematiska algoritmer kompenserar för några av felkällorna.

    • Algoritmer
    • Mätdata

Utbildning

Civilingenjör i informationsteknologi, Uppsala universitet, 2003–2006

Matematik, fysik och datavetenskap, Umeå universitet, 2000–2003

Språk

Svenska (modersmål), engelska (flytande i arbetet) och tyska (grundläggande).

Arbetssätt

Mjukvara som håller.

Bra mjukvara kommer sällan ur genialitet. Oftare ur noggrannhet, nyfikenhet och en ovilja att nöja sig med ”det funkar på min telefon”.

  • Grundorsaken före plåstret.

    En bugg som försvinner är inte samma sak som en bugg som är löst. Jag vill förstå varför något går sönder innan jag lagar det.

  • Mät i stället för att gissa.

    Prestanda, layout, minne: jag tar hellre fram siffrorna än litar på magkänslan. Det går nästan alltid fortare i slutändan.

  • Små steg som går att granska.

    En ändring i taget, så att den går att förstå, testa och backa. Ingen blir glad av en pull request på 4 000 rader.

  • Det ska fungera för alla.

    Stor text, skärmläsare, dålig täckning. Tillgänglighet och robusthet är krav från början – inte något man lägger på i slutet.

  • AI i verktygslådan, ansvaret hos mig.

    Claude och Codex gör mig snabbare på att sätta mig in i ny kod, implementera, felsöka och underhålla. Arkitekturen, granskningen och kvaliteten i produktion är fortfarande mitt ansvar.

Kontakt

Ska vi bygga något?

Jag tar uppdrag via mitt bolag MagnIT AB. Har du en app eller webbtjänst som behöver lyfta, en kodbas som behöver moderniseras eller en bugg som ingen lyckas hitta? Hör av dig, så tar vi ett samtal.

Avståndet är sällan ett problem: jag har jobbat på distans åt Blocket, Swedbank och OPM.

E-post
magnus@magnit.se
LinkedIn
linkedin.com/in/maolsson
Bas
Umeå – på plats, hybrid eller på distans
Bolag
MagnIT AB