Current Job
GeoPadNX
C++17, Qt, Android SDK (Java), Java Native Interface, Vulkan, CMake, Conan
I’m currently building GeoPadNX for SBG (a subsidiary of Leica Geosystems and Hexagon), replacing the older GeoPad. It’s a cross-platform (Windows, Linux and Android, both armv8a and x86_64) software that integrates with GNSS and surveying hardware (like total stations) and provides a surveyor or foreman with the ability stake-out a site, view and interact with geospatial and planning data, monitor progress, and inspect finished work. It’s primarily used by Swedish large-scale road, tunnel and rail infrastructure companies.
I work with a small team and it’s a fairly new product, which means I have a lot of control over its design and architecture. While this feels liberating, it’s also challenging because I often need to make big decisions that might come back to bite. It also means that I’m always learning a lot of new things about the C++ STL and cross-compilation, 3D math and rendering pipelines, performance optimisation on low-end devices, and software architecture in general.
iCON Office / Geo Professional
C++20, MFC, CMake, Conan
I also contribute to Leica iCON Office / SBG Geo Professional (it’s branded differently in different markets). This is a much larger MFC/C++ based construction software that is used for planning/data processing. It also handles much heavier data like large terrain maps and point clouds.
Digital Twin PoC
Embedded C, FreeRTOS, Zigbee, Zigbee Cluster Library, MQTT
Part-time, I’m a part of a team developing the proof-of-concept for a digital twin for large industrial spaces for Hexagon. The PoC involves a 3D twin of our office space with a Zigbee-based mesh of low-power sensors and a web-based frontend and dashboard. I own the hardware layer and an writing firmware for all the physical devices and gateways. The most challening part is grappling with the incredibly complex and badly-documented Zigbee Cluster Library, but learning to think the RTOS way has been very fun.
Bachelor Thesis
C++, Java/Kotlin, Android SDK, JNI, PyTorch, Blender
The primary goal of my bachelor’s thesis was to create a machine-learning based SfM pipeline - a model that could create 3D reconstructions and estimate camera poses from images or videos of a scene. In contrast to existing research on this topic, I wanted to use synthetically generated imagery to train these models instead of real world data (which is hard to come by because in addition to scene data, accurate ground truth info is needed).
Previous Job
React Native, MySQL, Node
At my internship at Winnou, I primarily worked on cross-platform React Native applications in the education tech services industry.
Creative
Photography
I love to photograph things! It’s the main way I’m creative. You can see my artsy personal stuff on my vsco and my Instagram (they’re hiding in the story highlights) and I plan to add a section for my photography to this website soon! I do it for myself these days, but when I was a student, I worked freelance on multiple one-off event photography gigs (mainly parties), working on-site and later processing and editing the photographs before delivering them.
Graphics and Video
Also as a student, I did a bunch of freelance work on Upwork, where I would use my knowledge of Blender, video editing, graphic design and compositing to make various things for clients. I’d acquired these skills doing little short films, posters and the like with my friends at high school. You can see a thing I made out of love for my schoolteachers here. I also love typesetting, and look for any excuse to use LaTeX.
Volunteering at ESN Luzern
I was an active member and volunteer of the Erasmus Student Network (ESN) in Luzern. It’s a non-profit student organization associated with the European Union and the Council of Europe that aims to help international students integrate into the local community. I learnt event planning, teamwork, management and delegation, communication, and marketing, and met a lot of incredible people (and established couches I could crash on accross the EU). I also became much better and talking to absolute strangers.