Software Engineer at Canonical

Igor Luppi

Software Engineer · Linux, flight software & embedded systems

I build software that has to keep working where nobody can reach it: flight software for satellites in orbit, and the Linux packages that ship AMD's ROCm AI stack in Debian and Ubuntu.

São Paulo, Brazil

Portrait of Igor Luppi
years of hands-on Linux
10+
years building NASA cFS flight software
5+
flight software updates shipped in orbit
30+

About

Software engineer with 10+ years of hands-on Linux experience, from kernel drivers and systemd to Debian/Ubuntu packaging. At Canonical I maintain AMD's open-source ROCm AI software stack across Debian and Ubuntu.

Before that I spent five years in the space industry at Visiona Space: I owned the on-board computer of VCUB1, the first nanosatellite designed entirely by the Brazilian industry, from design through launch and in-orbit operations, then led the OBDH subsystem of the SatVHR Earth observation satellite.

Experience

  1. Jul 2025 – Present

    Software Engineer, Silicon Alliances

    Canonical · Remote

    Silicon Alliances team, partnering with silicon vendors to make their software stacks first-class on Ubuntu.

    • Package maintainer for AMD's open-source ROCm AI software stack across the Debian and Ubuntu ecosystems, for GPU-accelerated AI workloads.
    • Linux systems administration, hardware and software testing, bug fixes and patching to keep the stack compatible and the platform stable.
    • Debian packaging
    • Ubuntu
    • ROCm
    • LXC
  2. Feb 2023 – Jul 2025

    Software Engineer, OBDH Subsystem Lead

    Visiona Space · São José dos Campos, Brazil

    Led the on-board data handling (OBDH) subsystem of SatVHR, a very high-resolution Earth observation satellite funded by a FINEP/AEB innovation grant.

    • Took the OBDH subsystem from mission requirements through PDR and CDR, driving flight software development to ECSS standards and starting OBC hardware/software integration.
    • Designed a mission-agnostic, table-driven Autonomous Mission Mode Manager cFS application, so mission rules change through tables instead of software builds.
    • Redesigned the OBC–AOCS interface, cutting command overhead by over 90%.
    • Designed a single-failure-tolerant emergency unit (EMCU) that monitors and recovers the on-board computer, integrated with the power system.
    • Refactored the Ruby ground software for multi-mission support and automated test execution, with self-hosted CI/CD runners.
    • NASA cFS
    • C
    • ECSS
    • FDIR
    • Ruby
    • CI/CD
  3. Feb 2020 – Feb 2023

    Software Engineer

    Visiona Space · São José dos Campos, Brazil

    Owned the cFS-based on-board computer of VCUB1, a 6U CubeSat launched on Falcon 9, from PDR through launch, then operated and sustained it in orbit.

    • Built the end-to-end CCSDS TM/TC chain: the CADU/CLTU synchronization layer in C, a Reed–Solomon FEC encoder/decoder, and the ground baseband protocol and configuration.
    • Designed multi-layer FDIR, from runtime self-checks and systemd watchdogs to an external MCU that power-cycles the OBC over CAN.
    • Shipped 30+ flight software updates in orbit, and kept the satellite alive after two storage failures by migrating cFS to tertiary hardware.
    • Owned the OBC platform: Linux kernel image, drivers and modules, real-time clock and critical EEPROM storage.
    • Built Ruby ground software and a Django/Python telemetry analysis tool with real-time Sinatra APIs.
    • NASA cFS
    • C
    • Linux kernel
    • CCSDS
    • Ruby
    • Python
  4. Feb 2019 – Dec 2019

    Software Engineer Intern

    Embraer · São José dos Campos, Brazil

    Developed an aircraft data collection system for a Corporate Aviation project, focused on appraiser processes, and automated workflows and infrastructure as an IT DevOps intern.

    • Java
    • Spring
    • DevOps

Projects

SatVHR

Small satellite for very high-resolution Earth observation, developed under an AEB/FINEP economic grant for innovation. Led its OBDH subsystem through CDR.

  • Embedded C
  • NASA cFS
  • Ruby
  • Python
FINEP award

VCUB1

The first nanosatellite designed entirely by the Brazilian industry, with a high-resolution optical camera and software-defined radio IoT. Owned its on-board computer from design to decommissioning.

  • Embedded C
  • NASA cFS
  • Linux
  • Ruby
Platform

iLoop32 OS

An operating system written in C-, compiled by my own C- compiler, running on iLoop32, a RISC processor I designed in Verilog and ran on an FPGA.

  • Verilog
  • FPGA
  • Compilers
  • OS
Demo video

Writing & talks

Skills

Languages
  • C
  • C++
  • Rust
  • Python
  • Ruby
  • Bash
  • PHP
  • Java
  • SQL
  • JavaScript
  • MATLAB/Simulink
  • Verilog
Linux & systems
  • Debian/Ubuntu
  • Kernel modules & drivers
  • systemd
  • dpkg-buildpackage
  • Docker
  • LXC/LXD
  • Git
Embedded & interfaces
  • UART
  • SPI
  • I2C
  • GPIO
  • CAN/CSP
  • FPGA
  • HAL design
  • FDIR & watchdogs
Space standards
  • NASA cFS
  • ECSS
  • CCSDS (SPP, TM/TC Sync & Channel Coding, SDLP, CFDP)
Data & tooling
  • PostgreSQL
  • MySQL/MariaDB
  • Redis
  • Grafana
  • GitHub Actions
  • CI/CD

Education

  • BSc (Hons) Computer Engineering

    Federal University of São Paulo · First-Class Honours, first in class (9.4/10)

Awards

  • 2020 Outstanding Student of Computer Engineering · Brazilian Computer Society
  • 2019 Outstanding Internship Project · Embraer Internship Program
  • 2016 First Place, Programming Competition · Federal University of São Paulo