Hoppa till innehållet
Andreas Sundström

27 år i yrketEgenföretagare

Andreas Sundström

  • Kvadrat Tech Stockholm

Andreas har mer än 20 års erfarenhet inom mjukvaruutveckling, med specialisering inom områden som telekommunikation, inbyggda system, testautomatisering och utveckling av programmeringsverktyg. Han uppskattar funktionell programmering och har många års erfarenhet av agila metoder som Scrum.

  • Programmering
  • Backend
  • C
  • Embedded Linux
  • Linux
  • RTOS
  • GNU Emacs
  • Docker
  • VS Code
  • Bash
  • Emacs
  • GCC
  • Agile
  • Distributed Systems Development
  • Scrum
  • Underhåll
  • Kundsupport
  • MQTT
  • Telekom
  • FinTech
  • Finans
  • Körning
  • God lyssnare
  • Hårdvarunära mjukvaruutveckling
  • Oz Programming
  • Oz/Mozart

Kurser & certifieringar

  • LärarutbildningUppsala Universitet Uppsala · 2004
  • Datavetenskapligt programUppsala Universitet Uppsala · 1997

Uppdrag

  • ID06

    nov. 2025 – jan. 2026

    Mjukvaruutvecklare

    ID06 utvecklar mjukvarusystem och IT-lösningar, främst inom byggbranschen. De har produkter för närvaroregistrering av personer i arbetsplatsens personalliggare, digitalisering av arbetares utbildningsbevis och inpasserings- och låsfunktioner i lokala system. Deras system används på de flesta byggarbetsplatser i Sverige.

    Andeas uppdrag är fullstackutvecklare av en webapplikation i ett scrumteam. Uppgifterna innefattar:

    Utveckling av en webapplikation som håller koll på leverantörskedjor inom byggbranschen
    Applikationsutveckling i python och JavaScript
    Implementation av REST API för olika endpoints till databaser
    Infrastruktur i containrar med docker
    Förbättra teamets CI/CD-pipelines i Azure Devops
    Testautomation för system- och acceptanstester med Robot Framework

    Visa mer
    • Git
    • Azure
    • Node.js 10.x
    • Bash
    • Docker
    • REST API
    • Robot Framework
    • Python
    • VS Code
    • JavaScript (React)
    • Scrum
  • Lolo Company

    feb. 2025 – juni 2025

    Mjukvaruutvecklare

    Lolo Company utvecklar ett globalt overlay-nätverk som ger dig detaljerad kontroll över nätverk och enheter, för att kunna anpassa den uppkopplade upplevelsen över en mängd olika underliggande nätverk, infrastrukturer och molntjänster. Andreas arbetar med underhåll och testning av de av företagets kodbaser som är skrivna i Rust. Ett par exempel är en DNS-proxy samt en AAA-tjänst (Authentication, Authorization, and Accounting). AAA används bland annat inom telekom för att möjliggöra debitering av nätverkstjänster baserat på mängden överförd data.

    AAA-tjänsten använder sig av protokollen RADIUS och Diameter.
    tcpdump och wireshark används för att felsöka.

    Visa mer
    • DNS
    • Git
    • GitHub
    • Wireshark
    • Telekom
    • tcpdump
    • Rust
    • AAA
    • Nätverkstjänster
    • Diameter Protocol
    • RADIUS Protocol
  • Ferroamp AB

    juni 2023 – feb. 2025

    Mjukvaruutvecklare

    Ferroamp tillverkar avancerade växelriktare som fungerar som elcentraler för fastigheter, och kopplar ihop solpaneler, batterier och elbilsladdning. Teamet som Andreas var en del av ansvarade för mjukvaran på enheten som fungerar som gränssnitt mot omvärlden och används för att konfigurera systemet samt exportera data till molnet. Mjukvaran körde microservices skrivna i Python och Rust i en Embedded Linux-miljö.

    Arbetade med en server för konfiguration av installatören. Installatören ansluter via en telefonapp till en wifi-åtkomstpunkt. Servern var skriven i Python och tillhandahåller ett REST API som används av installatörsappen.
    Arbetade med automatisk CT-konfiguration. Installatören ansluter strömtransformatorer (CT) som mäter strömmar från elnätet. Denna microservice räknar ut exakt hur CT:n var ansluten genom mätning och konfigurerar sedan systemet därefter. Den var skriven i Rust och använder MQTT för att kommunicera med kraftelektronikenheterna i systemet.
    Arbetade med konfiguration och paketering av tjänsterna. Linux-distributionen för inbyggda system baserades på Yocto och tjänsterna manageras med systemd.
    Enhetstester implementerades med unittest (Python) och cargo test (Rust), medan komponenttester först skrevs i Robot Framework men senare migrerades till ren Python.

    Visa mer
    • Linux
    • Git
    • Microservices
    • WiFi
    • REST API
    • Embedded Linux
    • Robot Framework
    • Rust
    • MQTT
    • Yocto
    • VSCode
    • Python
    • Scrum
    • Växelriktare
    • systemd
    • WiFi access point
  • Svea Bank AB

    aug. 2022 – mars 2023

    Mjukvaruutvecklare

    Svea Bank erbjuder banktjänster och andra finansiella tjänster till företag och konsumenter. Andreas team utvecklade backend för en webbtjänst som används för att registrera nya kunder. Efter att ha startat ett konto kan kunden använda samma tjänst för att lägga till nya produkter som till exempel ett kreditkort.

    Utveckling i F# i en Microsoft-miljö med Azure, SQL Server, etc.
    Viss frontend-programmering gjordes för kundtjänstens gränssnitt mot systemet.
    Bland F#-verktygen och biblioteken som användes kan Fable och Giraffe nämnas.

    Visa mer
    • Frontend
    • Git
    • SQL Server
    • Azure
    • F#
    • Backend
    • Programmering
    • Finansiella tjänster
    • Banktjänster
    • Scrum
    • Fable F# library
    • Giraffe F# library
    • Microsoft Visual Studio
  • Imsys AB

    juni 2021 – juli 2022

    Mjukvaruutvecklare

    Imsys AB är en svensk mikroprocessortillverkare för inbyggda system, telematik, automation och Internet of Things (IoT). Andreas var ansvarig för FreeRTOS-stöd för Imsys IM4000-hårdvara.

    Körning av FreeRTOS testsvit och felsökning.
    Utveckling av drivrutiner till FreeRTOS för Imsys IM4000-hårdvara. Huvudsakligen en PHY/ETH-drivrutin, med användning av Wireshark för felsökning. Drivrutinerna är skrivna i C och assembler. IM4000 använder en instruktionsuppsättning som var skräddarsydd för kompilatorinfrastrukturen LLVM (clang).

    Visa mer
    • Assemblerprogrammering
    • Git
    • CMake
    • C
    • Emacs
    • Wireshark
    • FreeRTOS
    • IoT
    • Drivrutinsutveckling
    • RTOS
    • Wireshark Analysis
    • LLVM/Clang
    • Driver development
  • Ericsson

    feb. 2020 – juni 2021

    Mjukvaruutvecklare

    Ericsson är global ledare inom mobil nätverksinfrastruktur. Tillsammans med en annan utvecklare arbetade Andreas med att utvärdera möjligheten att använda Function as a Service (FaaS) för att implementera en 5G-basstation.

    Demo-basstationen implementerades i C++ och kördes i en docker-container.
    Vissa verktyg för kodgenerering och testning utvecklades i Erlang.

    Visa mer
    • Testning
    • Git
    • Make
    • Emacs
    • Erlang/OTP
    • Docker
    • Erlang
    • Telekom
    • Distribuerade system
    • FaaS
    • C++17
    • C++
    • 5G SW development
  • Ericsson

    feb. 2018 – feb. 2019

    Mjukvaruutvecklare

    Ericsson är global ledare inom mobil nätverksinfrastruktur. Andreas team utvecklade och underhöll en plattform för prototyping och forskning av 5G-basstationstekniker. Plattformen användes för att forska kring olika tekniker och som proof of concept för kundtester och kundlabb.

    Arbetade huvudsakligen med kontrollsignalering (OSI-lager 3) med RRC-protokollet och programmering i Erlang. Enhetstester skrivna med EUnit. Systemet kördes i docker-containers.
    Koden versionshanterades med git och byggda artifakter med Artifactory. Jenkins användes för CI/CD.

    Tekniker: 5G SW-utveckling, Agile, Scrum, distribuerade system, Erlang, Erlang/OTP, EUnit, C, git, RRC, docker, Jenkins, Artifactory

    Visa mer
    • Agile
    • Jenkins
    • Git
    • CI/CD
    • Docker
    • Telekom
    • Programmering
    • Artifactory
    • Scrum
    • OSI
    • Erlang/OTP
    • Erlang
    • 5G SW development
    • Distributed Systems Development
    • RCC Protocol
  • Ericsson

    sep. 2015 – feb. 2018

    Mjukvaruutvecklare

    Ericsson är global ledare inom mobil nätverksinfrastruktur. Andreas team utvecklade och underhöll ett telekommunikationsmjukvarusystem som hanterar multimedia över internet (IMS, IP multimedia subsystem).

    Systemet hanterar protokoll som SIP, Diameter och Megaco och var skrivet i Erlang.
    Ett projekt var att implementera lastbalansering av inkommande requests. Felsökning genom att använda Wireshark för att spåra TCP/IP-trafik
    Teamet använde både Scrum och Kanban under olika perioder.
    Bazel infördes som byggsystem som ersatte make.

    Visa mer
    • TCP/IP
    • Kanban
    • Git
    • Make
    • Emacs
    • Erlang/OTP
    • Erlang
    • Wireshark
    • SIP (IP telefoni)
    • Ericsson IMS platform
    • Telekom
    • TCP/IP Protocol
    • Bazel
    • Megaco H248
    • Scrum
    • IP Multimedia Subsystem (IMS)
    • Wireshark Analysis
    • Diameter Protocol
    • Distributed Systems Development
  • Enea AB

    maj 2012 – aug. 2015

    Mjukvaruutvecklare

    Enea AB är ett svenskt företag specialiserat på mjukvarulösningar för telekombranschen. Andreas team arbetade med Eneas Linux-distribution (ENEA Linux), med fokus på realtidsegenskaper.

    Implementerade en lättvikts-tråds-scheduler inspirerad av Eneas RTOS OSEs scheduler. Den implementerades i C.
    Patchade Linux-kärnan.
    Konfigurerade Linux-systemet för att få låg latens. Ett shell script för att partitionerade CPU-kärnorna så att kod kunde köras utan att avbrytas av operativsystemet, utvecklades och gavs ut som open source.
    Paketerade Linux-distributionen (baserad på Yocto) med BitBake.
    Skrev hjälpskript i bash och Python.

    Visa mer
    • Linux
    • Git
    • Open Source
    • Bash
    • C
    • Emacs
    • Realtidsprogrammering
    • Telekom
    • Linux kernel
    • Shell Script
    • Embedded Linux
    • Yocto
    • Python
    • Scrum
    • Shell programming
    • BitBake
  • Enea AB

    jan. 2011 – maj 2012

    Mjukvaruutvecklare

    Enea AB är ett svenskt företag specialiserat på mjukvarulösningar för telekombranschen. Andreas team arbetade med mjukvaruplattformen dSPEED. Plattformen används för att kontrollera, övervaka och felsöka DSP-farmar (kluster av digitala signalprocessorer). dSPEED består av två delar: en manager och en del som körs på varje DSP-kärna.

    Utvecklade och underhöll manager-koden som kördes antingen i Linux eller i ENEA OSE (RTOS) skriven i C.
    Utvecklade och underhöll DSP-koden som kördes i ENEA OSEck (RTOS) skriven i C och assembler.
    Skrev hjälpskript i bash och Python.

    Visa mer
    • Linux
    • Assemblerprogrammering
    • Git
    • Bash
    • C
    • Emacs
    • Realtidsprogrammering
    • Telekom
    • Python
    • OSEck
    • RTOS
    • OSE
  • Klarna

    dec. 2009 – dec. 2010

    Driftstekniker

    Klarna är ett svenskt fintech-företag som tillhandahåller betalningslösningar för e-handel. Andreas team var tänkt att ta över drift av servrar från utvecklings-teamen, men arbetade mest med intern support.

    Besvarade frågor om systemets funktionalitet, oftast från kundsupport, för att avlasta utvecklingsteamen.
    Skrev kod för att samla in och presentera transaktionsstatistik. Denna statistik användes till exempel för ekonomisk riskanalys, för att upptäcka bedrägerier och för att övervaka systembelastningen. Kodningen gjordes huvudsakligen i Erlang, men han utvecklade även i programmeringsspråket R.

    Visa mer
    • Linux
    • Emacs
    • Erlang/OTP
    • Erlang
    • Statistik
    • E-handel
    • Kundsupport
    • R
    • Funktionell Programmering
    • FinTech
  • Enea AB

    aug. 2007 – okt. 2009

    Mjukvaruutvecklare

    Enea AB är ett svenskt företag specialiserat på mjukvarulösningar för telekombranschen. Andreas team arbetade med mjukvaruplattformen dSPEED. Plattformen används för att kontrollera, övervaka och felsöka DSP-farmar (kluster av digitala signalprocessorer). dSPEED består av två delar: en manager och en del som körs på varje DSP-kärna.

    Utvecklade och underhöll manager-koden som kördes antingen i Linux eller i ENEA OSE (RTOS) skriven i C.
    Utvecklade och underhöll DSP-koden som kördes i ENEA OSEck (RTOS) skriven i C.
    Skrev hjälpskript i bash och Python. * Kod versionshanterades med ClearCase.

    Tekniker: C, Realtidsprogrammering, bash, ClearCase, Python, GNU Emacs

    Visa mer
    • Linux
    • Bash
    • C
    • Emacs
    • Realtidsprogrammering
    • Telekom
    • ClearCase
    • Python
    • OSE
    • OSEck
    • RTOS
  • IAR Systems

    juni 2000 – sep. 2002

    Mjukvaruutvecklare

    IAR Systems är ett svenskt företag specialiserat på mjukvaruverktyg för utveckling av inbyggda system, som tillhandahåller C/C++-kompilatorer, debuggers och integrerade utvecklingsmiljöer (IDE:er) för olika processorarkitekturer. Teamet som Andreas var en del av underhöll backend-koden, dvs. koden skräddarsydd för de specifika processorarkitekturerna.

    Underhöll och utvecklade programmeringsverktyg för processorer från Hitachi (H8, SH). Verktygen var C- och C++-kompilatorer, assemblatorer och debuggers (simulatorer och ROM-monitorer). Det vill säga, lade till nya optimeringar, fixade buggar och gjorde releaser. Koden var skriven i C.
    Arbetade med second line support för IAR:s Hitachi-produkter.
    Lyfte koden till ett nyare kompilator-framework i C/C++
    Kod versionshanterades med MKS Source Integrity.
    Skrev tester i Ruby.

    Tekniker: Assembler, C, C/C++, Ruby, Kompilatorteknik, Microsoft Visual Studio, MKS Source Integrity

    Visa mer
    • Assemblerprogrammering
    • C
    • C/C++
    • Microsoft Visual Studio
    • MKS Source Integrity
    • Backend
    • C++
    • Ruby
    • Programmeringsverktyg
    • Compiler Technology
  • Swedish Institute of Computer Science

    maj 1998 – juni 2000

    Mjukvaruutvecklare

    Swedish Institute of Computer Science (Nu Rise SICS) är ett ledande forskningsinstitut inom datavetenskap. Andreas arbetade i ett team på SICS som tillsammans med kollegor i Tyskland och Belgien utvecklade programmeringsmiljön Mozart/Oz. Du kan enkelt skriva distribuerade program i Mozart. Oz är ett multiparadigmspråk som till exempel stödjer funktionell, objektorienterad och villkorsprogrammering.

    • En uppgift bland många var att uppdatera Mozart-marshallern, dvs. serialiseraren som gör det möjligt att lagra data och bytecode på fil eller skicka den över internet. Andreas lade till redundans för att göra marshallern mer robust.
    • Plattformen utvecklades i C/C++ och programmeringsspråket som utvecklades för plattformen (Oz). Koden byggdes med make och gcc i en Linux-miljö.
    • Kod versionshanterades med CVS.
    Visa mer
    • Linux
    • Make
    • GCC
    • Distributed systems
    • C/C++
    • Funktionell Programmering
    • GNU Emacs
    • CVS/SVN
    • Bytecode
    • Oz Programming
    • Oz/Mozart

Utbildning

  • Lärarutbildning

    2003 – 2004

    Uppsala University

  • Datavetenskapligt program

    1993 – 1998

    Uppsala University

Kompetens · nivå och år

Tekniker

  • Programmering
  • Backend
  • C
  • Distribuerade system
  • Distributed systems
  • Erlang
  • Funktionell Programmering
  • Programmeringsspråk
  • Python
  • Shell Script
  • Assemblerprogrammering
  • C/C++
  • C++
  • Erlang/OTP
  • Matematik
  • Micro-services
  • Microservices
  • Nätverkhantering
  • Realtidsprogrammering
  • C++17
  • Diameter Protocol
  • Drivrutinsutveckling
  • F#
  • LLVM
  • Nätverkstjänster
  • R
  • REST API
  • Ruby
  • Rust
  • SIP (IP telefoni)
  • Structured Query Language
  • TCP/IP
  • TCP/IP Protocol
  • Telekommunikation
  • WiFi
  • C#
  • DNS
  • IoT
  • Java
  • JavaScript (React)
  • Node.js 10.x

Plattformar

  • Embedded Linux
  • Linux
  • RTOS
  • FreeRTOS
  • OSEck
  • Azure
  • Ericsson IMS platform
  • GitHub
  • Linux kernel
  • Open Source
  • OSE
  • Windows
  • Molntjänster
  • SQL Server

Produkter

  • GNU Emacs
  • Docker
  • VS Code
  • AAA
  • Bazel
  • Clang
  • ClearCase
  • Diameter
  • FaaS
  • Jenkins
  • RADIUS
  • RRC
  • Finansiella tjänster
  • Geografiska informationssystem

Verktyg

  • Bash
  • Emacs
  • GCC
  • Git
  • Shell programming
  • Make
  • Microsoft Visual Studio
  • VSCode
  • Wireshark
  • Yocto
  • Artifactory
  • BitBake
  • CMake
  • CVS/SVN
  • integrerade utvecklingsmiljöer
  • MKS Source Integrity
  • Robot Framework
  • Statistik
  • systemd
  • tcpdump
  • CVS
  • Visual Studio

Metoder och processer

  • Agile
  • Distributed Systems Development
  • Scrum
  • Driver development
  • Kanban
  • Testning
  • CI/CD
  • E-handel
  • Riskanalys
  • Banktjänster

Verksamhetsområden

  • Underhåll
  • Kundsupport

Standarder och regelverk

  • MQTT

Branscher

  • Telekom
  • FinTech
  • Finans

Certifications

  • Körning

Personliga egenskaper

  • God lyssnare

Övrigt

  • Hårdvarunära mjukvaruutveckling
  • Oz Programming
  • Oz/Mozart
  • Wireshark Analysis
  • 5G SW development
  • Bytecode
  • Compiler Technology
  • Fable F# library
  • Giraffe F# library
  • IP Multimedia Subsystem (IMS)
  • Kompilatorteknik
  • LLVM/Clang
  • Megaco
  • Megaco H248
  • OSI
  • Programmeringsverktyg
  • RADIUS Protocol
  • RCC Protocol
  • Växelriktare
  • WiFi access point

Den som känner Andreas

Theodor Wahlgren

Theodor är Andreas kontaktperson på Kvadrat.