My work

Selected projects that I've been a part of (and am satisfied enough with) to show off!

Encore

Encore is SVT's in-house VOD transcoding engine, built on top of open source software such as FFMPEG, Redis, and MediaInfo. Encore is a Spring Boot app written in Kotlin, and transcodes hundreds of hours of video each day in our production environment.
We've decided to release Encore as open source software under the EUGPL license, available for everyone to use.

SVT Open Content

A video material suite developed for R&D purposes. Initially used for internal purposes, now shared under a creative commons license.

Deep video scaling for streaming

Master thesis project. Working together with SVT, I investigated if video scaled using deep learning was perceived as better looking to viewers than video scaled using conventional methods. The results indicated that this was the case, but not necessarily for the kinds of content the technology would primarily be used for.

bARpong

Course project in Advanced graphics and interaction.
An augmented reality beer pong game, built with Unity using AR foundation. My main contributions were physics programming, collision detection, light estimation, and onboarding UI.

GLOWTorch

Course project in Advanced deep learning.
An implementation of the generative model GLOW in pytorch. I worked on some of the layers, as well as the training script.

ß

Hiva

Course project in interaction design. Proof-of-concept prototype for an app to enable media casting with multiple participants. Media queue is synced between multiple devices. Built using React native.

Embodied Voice Assistant

Course project in multimodal interaction. Physically and digitally embodied a digital voice assistant using a furhat robot. My job included programming the interactions, and the connection to the google assistant API.

Thunderball

Course project in information visualization, in collaboration with Greenlytics. A project to visualize weather forecast data, and allow the user to select which forecast they are looking at. Built with React, D3, and MapBox.

World value visualization

Project in information visualization. An attempt to tell a story through data visualization, using d3.js, react, and data from the World Values Survey.

Simple path tracer

Course project in computer graphics and interaction at KTH. Implemented a simple path tracer in C++, with cosine-weighted sampling, parallel rendering, and fast intersection tests using the Möller-Trombore algorithm

CV

Sveriges Television

Developer and Scrum Master

At SVT, I work on systems for video transcoding, packaging, and publishing VOD content for all of SVT's online services, as well as transcoding flows for other parts of the company. We deliver video to the news service, the streaming service SVT Play, as well as a number of internal stakeholders. Most of my time is spent writing microservices in Kotlin, with some video-related R&D thrown in here and there.

Since autumn 2022, I also serve as Scrum master for team Video Core. In this role, I organize and lead agile rituals such as standups, Lean Coffee, and retrospectives.

Technologies: Kotlin, React, FFMPEG, HLS, DASH, Spring Boot, Kafka

Handelsbanken capital markets

Fullstack engineer, summer internship (june 2020 - august 2020)

Worked on an internal tool for creating various financial reports related to credit sales. My main contributions consisted of a library to visualize data, as well as adding support for sector analysis reports

Technologies: C# (.NET core), Typescript, Angular, D3.js

lolo company

Frontend developer, freelance (october 2019 - february 2020)

Helped the company build their MVP, adding API connections and working on graph logic.

Technologies: React

DigitalRoute

Software engineer, summer internship (june 2019 - august 2019)

Software development for the usage data platform, released in 2019. I mostly contributed to the frontend graph editor, and also added functionality for the platform to output data streams to excel.

Technologies: Typescript, React, Node.js, Express.js, stream processing.

KTH

Teaching assistant (september 2018 - january 2019)

Teaching assistant for the course SF1919 Probability Theory and Statistics. I led tutorials and computer labs for undergraduate students throughout the course.

Ericsson

Software engineer, summer internship (summer 2017, summer 2018)

Built an internal web application to monitor and visualize automated testing of cloud operating systems. The application visualized aggregated test data at several levels, and allowed users to control and schedule test runs, as well as access logs to determine which tests failed.

Technologies: Typescript, Angular, Java, Spring framework, D3.js.