I’m a 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 much as I can.
I also enjoy playing rhythm-based games whenever I can, such as Dance Dance Revolution, Beatmania IIDX and similar games. Timing is everything.
I can program in more or less any language, I’ve sampled most different paradigms. Languages I have most experience with are C++, Python, Haskell, Java, Bash, Erlang. Professionally I have mostly written C++, Python, Bash and QML.
I feel at home in a small team of experts, preferrably following some agile setting. I work exclusively in GNU/Linux environments, but I can find my way around a Windows system. I’m a dvorak typist since 2008. I’m a native swede and speak english fluently.
Tools and frameworks
- Build tools: Yocto, CMake, qmake
- CI/Infra: Jenkins, Vagrant, VirtualBox, Docker
- Source control: git, svn, darcs
- Collaboration: Atlassian suite, GitHub, GitLab
- 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
Pelagicore / Luxoft Sweden
Pelagicore develops In-Vehicle Infotainment (IVI) systems for the car industry, using open source software components. We develop mainly in C/C++, but tend to script stuff in both python and bash when needed. We 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.
July 2014 - May 2018
University of Gothenburg Students’ Unions (GUS)
GUS is a collaborative body for the students’ unions at the University of Gothenburg. The president and vice president are the students’ voice towards the vice-chancellor, coordinate the work with other student representatives and support the students’ unions in their work. As vice president, I was responsible for the coordination of work regarding work environment and the student ombudsmen for work environment.
July 2012 - June 2013
Göta students’ union
I worked at Göta students’ union as one of three presidents responsible for the operative work within the union. Being responsible for education issues, I coordinated work with people responsible for education issues at our five sections (one per faculty) and pursued common issues against the university.
July 2011 - June 2012
Working for a staffing company, I drove forklifts, picked orders and built cardboard displays, mainly at the DHL warehouse at Arendal during three summers. It was a monotonous work, but the people there were really nice.
- June 2007 - August 2007
- June 2008 - August 2008
- June 2009 - August 2009
During the autumn of 2006 I wrote a time reporting system using PHP and MySQL. It ended up being so-so, but at least I got to program something real, even if it was in PHP…
Swedish Outdoor Association (Friluftsfrämjandet)
The Swedish outdoor association held summer camp for kids 8-12 years old. As a leader, we made sure that the kids had fun, that nobody got hurt and that everybody learned something new. Most of the days were spent walking the woods, canoeing, playing softball, swimming etc.
Summer camp leader
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.
- Bachelor’s Thesis: λANE – Yet Another NES Emulator
- Master’s Thesis: Implementing incremental and parallel parsing
- August 2006 - June 2010
- September 2013 - June 2014
University of Gothenburg
High school programme in science, aimed especially at mathematics and programming.
2003 - 2006
Lerum High School
I have a european type B driving license. I prefer commuting through public transport though.