About Me

I'm a software developer that loves technology and good UI. I've been very happily specialising in frontend development, using TypeScript, React and Next.js as my tools and occasionally playing with other interesting bits, such as Python, C# and .NET. I've had the privilege to contribute to building great products, which has allowed me to hone my skills in project architecture and design patterns, by writing code that is robust, concise and modern.


I enjoy keeping up with technology and trying out new tools, creating responsive and accessible experiences for users and writing code that shows how much I enjoy programming. When I'm not working or writing code for fun, I'm either cooking, traveling or spending time with family.

Work Experience

  • Software Developer

    Stockholm, Sweden

    Mar 2024present

    At Scandinavian Airlines, I specialise in frontend development with a focus on post-travel customer engagement. I led the full migration of the SAS Customer Service portal to Next.js, rebuilding it from scratch to improve accessibility, scalability and UX, while ensuring uninterrupted customer case submissions. I architected the app using modular principles, introduced consistent and accessible UI/UX patterns and added key navigation and form features, aimed at modernising the portal and making it more stable. I also established quality guidelines, documentation and comprehensive tests to support onboarding and long-term maintainability. I owned all QA and pre-release testing and mentored teammates to ensure alignment with the app’s architecture and patterns. The migration resulted in a 100% success rate for case submissions, a major reduction in technical debt and faster feature delivery.


    Currently, I maintain that codebase and I am also involved in frontend objectives, in both mono- and polyrepo cross-team projects, focused on digitalising and replacing legacy systems. I oversee adherence to patterns, code quality and accessibility and also support backend integrations (Express) and regularly implement new features and A/B tests for the customer service team.

    At Scandinavian Airlines, I specialise in frontend development with a focus on post-travel customer engagement. I led the full migration of the SAS Customer Service portal to Next.js, rebuilding it from scratch to improve accessibility, sca...

    React

    NextJS

    TypeScript

    Azure

    Docker

    Kibana

    Jest

    Playwright

    Cypress

    GrowthBook

    Figma

    Storybook

    Turborepo

    vanilla-extract

  • Software Developer

    Stockholm, Sweden

    June 2022February 2024

    My role at Vidispine was in a SaaS setting and my responsibilities regarded front-end objectives, but were occasionally backend-focused (backend built on .NET supported by a PostgreSQL database). I was involved in the development of a feature-rich, web-based (React/TypeScript) media ingestion tool used by broadcasting companies to schedule, record and transcode content. I also worked on other projects, where I implemented features in projects for clients in the medtech sector. Additionally, I was responsible for building reusable React components for a commercial component library (using Google's MUI as a base).

    My role at Vidispine was in a SaaS setting and my responsibilities regarded front-end objectives, but were occasionally backend-focused (backend built on .NET supported by a PostgreSQL database). I was involved in the developm...

    React

    TypeScript

    Figma

    MUI

    C#

    .NET

    Docker

    Azure

    Storybook

  • Software Developer

    Stockholm, Sweden

    Jan 2020Apr 2022

    As a software developer at Storytel, I developed an end-to-end neural network pipeline, which was responsible for synthesising speech from text, for generation of long-form audiobook content. I was responsible for and led the entire process, working independently (within a Data Science team) for the best part of my tenure at the company. My responsibilities included:

    • Delivering a fully functional MVP that included support for training style-controllable models for content production (English and Swedish languages)

    • Designing methods for content generation, engineering and analyzing training data

    • Evaluating all models with tests and mean opinion scores

    • Working together with other developers when designing the frontend for the engine

    • Collaborating with and directing voice actors during data collection

    • Leading the recording sessions, directing voice actors when recording content to use in the data for the pipeline


    The pipeline I developed was eventually successfully used to train the company’s first AI voice and produce the company's first fully neural network-based audiobook content.

    As a software developer at Storytel, I developed an end-to-end neural network pipeline, which was responsible for synthesising speech from text, for generation of long-form audiobook content. I was responsible for and led the entire process, worki...

    Python

    TensorFlow

    PyTorch

    pandas

    Docker

    FastAPI

    GCP

  • NLP Developer

    Uppsala, Sweden

    Nov 2017Dec 2019

    As a NLP developer at ReadSpeaker, I transitioned from speech synthesis to broader software development on both in-house and client projects. My responsibilities included:

    • Developing C++ pipelines for text normalization and disambiguation

    • Supervising QA processes across multiple languages

    • Training various NLP models, including spaCy-based parsers/taggers and grapheme-to-phoneme automata

    • Engineering data for text-to-speech objectives using the models I trained

    As a NLP developer at ReadSpeaker, I transitioned from speech synthesis to broader software development on both in-house and client projects. My responsibilities included:

    • Developing C++ pipelines for text normalization and di...

    Python

    spaCy

    C++

    SVN

    Unix

    Bash

Education

  • Master's Degree

    University of Eastern Finland

    Joensuu, Finland

    Jan 2020Jun 2020

    Completion of Master's Education

    Thesis Project: Transfer Learning in Speech Synthesis - Exploring Pretrained Weights Adaptation and Usage of Speaker Embeddings in Neural End-to-End Speech Synthesis


    The project explored the feasibility of predicting speech from text in pre-trained neural networks, where:

    • available data was 80% less than required and unprocessed, so that pre-training the network on different data might be an option

    • obtaining data was not feasible, so zero-shot prediction, based on speaker embeddings, using clustering and multi-voice recordings, might be an option


    Results showed that both options are viable for when training data is not available, but that the network is not able to pick on all of the new voice's vocal characteristics (such as prosody). The training pipeline was a mix of pyTorch and TensorFlow and training was done on a GCP instance.

    Completion of Master's Education

    Thesis Project: Transfer Learning in Speech Synthesis - Exploring Pretrained Weights Adaptation and Usage of Speaker Embeddings in Neural End-to-End Speech Synthesis

    <br></br&...

  • Master's Degree

    Uppsala University

    Uppsala, Sweden

    Sept 2017Jan 2020

    Concentration in Natural Language Processing (NLP)

    Concentration in Natural Language Processing (NLP)

  • Bachelor's Degree

    Democritus University of Thrace

    Komotini, Greece

    Sept 2012Sept 2016

    Concentration in Classics and Literature

    Concentration in Classics and Literature

Projects I've helped build