I’m a Swedish software engineer, working primarily with embedded systems, and I have a passion for functional programming. I believe in free and open source software, and I try to contribute to it, as well as using it, as much as I can.

I…

  • program mostly in C, but inevitably write scripts in both Bash and Python
  • work (almost) exclusively in GNU/Linux environments
  • despise management-driven development methodologies like SAFe
  • am a bit of a keyboard nerd, having fallen in love with the TypeMatrix 2030
  • enjoy playing rhythm-based games whenever I can, mostly Dance Dance Revolution. Timing is everything.
  • speak swedish and english fluently
  • have a drivers license, EU type B

Personal

  • Date of birth: 1988-07-30
  • E-mail: tobsan[at]tobsan[dot]se (GPG key fingerprint: 1EEF 527E 9341 888C 6D32 61D8 227C A2A2 FF16 BE40)
  • GitHub profile

Work experience

Elektronikutvecklingsbyrån

Duration: November 2022 -
Position: Senior Embedded Software Engineer

EUB does embedded consultancy with both hardware and software, mostly for IoT devices, and mostly using Zephyr or embedded Linux.


Scionova

Duration: December 2021 - November 2022
Position: Software Engineer

Scionova does consulting within the connectivity domain, and for me that meant working in-house with mostly embedded IoT things that ran either Linux or some RTOS.


Endian Technologies

Duration: Jan 2020 - December 2021
Position: Software Engineer

Endian is an embedded consultancy company within the IoT space. As a software engineer, I help our customers connect tiny devices to the cloud, primarily by writing software for those devices. Some devices run Linux, some run Zephyr or FreeRTOS.

At Endian, I’ve been programming mostly in C with some shell scripting on the side, and have been using CMake, Yocto and KConfig tools. Technologies such as NB-IoT, LwM2M, MQTT and CBOR were mostly new to me.


HMS Industrial Networks

Duration: May 2018 - December 2019
Position: Development Engineer

HMS creates network hardware and software for industrial applications, mainly field buses and industrial ethernet. HMS writes software and drivers in C and support software in Python. The global platforms team, which I was a part of, maintains a Linux platform based on OpenEmbedded for supporting the hardware we create on Linux. I also worked with the CI/DevOps team that maintained the server infrastructure that was based on Docker compase and Jenkins.


Pelagicore / Luxoft Sweden

Duration: July 2014 - April 2018
Position: Software Engineer

Pelagicore develops In-Vehicle Infotainment (IVI) systems for the car industry, using open source software components. They develop mainly in C/C++, but tend to script stuff in both python and bash when needed. They maintain and develop a Linux platform using Yocto, and write UI software in Qt/QML. As a Software Engineer, my main responsibilities were development and testing of code, as well as maintenance of the Yocto platform.


Education

Computer Science @ University of Gothenburg

Duration: August 2006 - June 2014

I took both my bachelor’s degree and my master’s degree with specialization in Algorithms, Languages and Logic at the University of Gothenburg. I also took some courses in linguistics.