- Overview -

I am an experienced software engineer with a background in space systems, control engineering, and robotics, possessing strong project and team leadership skills. I have developed software for space missions and various other industries for approximately 10 years. My experience encompasses a wide range of positions and responsibilities, from being a low-abstraction-layer developer to engaging in DevOps and software architecture design. I adopt a pragmatic approach where details are important, yet the end result is paramount. I have been actively involved in the emerging Finnish NewSpace industry since its early stages, beginning with the Aalto-1 CubeSat mission.

In addition to my technical expertise, I have refined my project and team leadership skills across various organizations. I am adaptable to change, capable of initiating projects from scratch, and committed to completing them effectively, even when it involves working under pressure and occasionally taking a step back. I believe in a collaborative environment where team members are valued as individuals.

- Experience -

ICEYE

  • Head of Satellite Communications Network, Software Engineering (2022 -)
  • Lead Software Engineer (2019 - 2022)
  • Ground Segment Software Engineer (2017 – 2019)
  • Master’s Thesis Worker (2016 – 2017)
  • Software Engineer (2014 – 2015)

I have been with ICEYE nearly since the company’s inception, which began as a university spin-off project before evolving into a private enterprise.

Initially, I worked on on-board software and subsequently wrote my thesis on DevOps practices for embedded software development, although the focus later shifted. From the outset, I have been involved in ground software development, with a particular emphasis on pass management and telemetry handling. My focus also extended to various other areas, including payload data processing, satellite operations, and mission control. Additionally, I played a key role in our satellite Launch and Early Orbit Phase (LEOP) activities, overseeing the commissioning and operation of our entire fleet. I spearheaded the creation of ICEYE’s first ground software components from the ground up, assisted by a small team who were also starting from scratch. This software has since undergone numerous improvements and revisions, yet it remains an integral part of our current operations. I also contributed to the adoption of better engineering practices, embracing a microservices-based architecture, and integrating more tools into our daily work.

Beyond engineering, I have leveraged my leadership skills to build an exceptionally high-performing software team, initially as Lead Software Engineer and now as Head of the Satellite Communications Network. My current role entails leading a department responsible for satellite telecommunications, pass management, antenna infrastructure, and payload downlinking components.

Eficode

  • DevOps Consultant (2015 – 2016)

As a consultant in the DevOps unit, I contributed to the development of solutions for third-generation software development, focusing on virtualization, modern software production tools, continuous integration, and test automation. My involvement spanned various projects, including the creation of an autonomous payment terminal test robot, which utilized a CNC mill frame and OpenCV technology. Additionally, I worked on an automatic acceptance testing library for a mobile game, the creation of CI/CD pipelines for diverse industrial fields, and the development of coaching materials for Robot Framework.

Aalto-1 (Aalto University)

  • Research assistant (2013 - 2015)

In 2013, I joined the Aalto-1 student satellite project as a research assistant, tasked with developing on-board computer (OBC) software from scratch. Later that year, I based my bachelor’s thesis on this work. Following this, I continued my involvement with the project as a freelance developer. In 2015, I was rehired by the university to assist in finalizing the satellite communication software for the OBC prior to its launch. During this period, I was also concurrently employed at Eficode.

Miscellaneous

I did various different internships, summer jobs, etc. between 2005 and 2012.

- Education -

Aalto University School of Electrical Engineering

Master of Science, Technology (2014 - 2017)

Major: Control, Robotics and Autonomous Systems
Minor: Space Technology

Thesis: Embedded software development methods for mission critical satellite operations

Courses included: control theory, robotics design, automation design, physics, artificial intelligence, spacecraft engineering, remote sensing

Bachelor of Science, Technology (2010 - 2014)

Major: Automation and Systems Technology
Minor: Industrial Engineering and Management

Thesis: Lento-ohjelmistojen kehitysprosessit nanosatelliiteille

Courses included: automation design, mathematics, physics, programming (C, C++, Matlab), control theory, electrical design, mechanical design, economics, marketing, project management

- Technical skills -

My full stack extends from ground to space. Seriously, I’m dropping some buzzwords to provide an understanding of my stack for those familiar with these terms. I’ll also share some of my views on software development.

Buzzword bingo

Python, C, C++, Matlab, Simulink, Kubernetes, Rancher, Docker, Robot Framework, Git, Falcon, Tornado, FastAPI, AWS, Podman, CI/CD tools (Jenkins, Github actions, …), STK, ODTK, Robot Operating System. SQLAlchemy, PyOrbital, Skyfield, SQL/NoSQL (PostgreSQL, MongoDB, …), Bash, XML/XSD, GNU/Linux (cloud, bare-metal, embedded), FreeRTOS

Principles

I consider Python and C as my primary languages. I adhere to SOLID and ATDD principles in software development, though I’m continually striving to improve. I aim to find a balance between modern and classical software development practices, especially when working with cloud infrastructure and embedded software. I typically follow agile and scrum methodologies for managing software projects, while keeping the waterfall model as a reference to prevent agile from becoming “unplanned and ad-hoc.”

For writing software, I use the VSCode IDE. My preferred distros are Arch Linux or Ubuntu, and KDE Plasma is my desktop environment of choice.

- Languages -

Finnish Native
English Full working proficiency
Swedish Limited working proficiency
German Elementary proficiency

- Volunteer experience -

I have been actively involved in various organizations, where I honed my organizational and project leadership skills, and I continue to grow in these areas. My experience is particularly strong in event production, involving events with thousands of participants. I can provide a detailed list of experiences upon request. These experiences include:

  • Serving as a board member (including chair) in over 5 different organizations
  • Organizing multiple professional events, such as the Laskiaisrieha sports event, the world’s largest sauna event WiikonWappuSauna, and the impactful Tempaus2016 promoting comprehensive schooling across Finland
  • Leading diverse teams, typically ranging from 5 to 30 members
  • Receiving several awards for distinguished volunteer work

Currently I’m the chair of the board at Guild of the Round Tower (Pyöreän Tornin Kilta), an alumni/honorary association for distinguished, graduated engineering (ex-)students.

- Other -

Developing a Linux-based nanosatellite on-board computer: Flight results from the Aalto-1 mission

Combining rapid development and ECSS standards: on-board computer development for the ICEYE mission

  • Co-author, conference paper, Sep 2014
  • Published in Tartu Conference on Space Science and Technology, Sept. 22-24, Tõravere, Estonia. 2014