Internship / Job

Embedded Linux Developer

Company
Estonian Student Satellite
Position address
Tartu / Tallinn / remote
Required languages
English

Details about the role

We are seeking a developer to join our team and contribute to the design and maintenance of software and framework for the Command and Data Handling System (CDHS) utilised in our CubeSat Command Module. The role is voluntary and unpaid, remote work possible.

The Mission Software is the code running on the application controller unit of the CDHS, operating in an Embedded Linux environment, and it is responsible for the high-level logic relating to the long-term mission goals and payload operations. It includes software for the spacecraft’s autonomous decision-making functions, AI-based operations, in-orbit firmware updates, filesystems and logging, along with commanding the scientific payloads on board the spacecraft.

This role involves configuring the Embedded Linux running on both devkits and System on a Modules (SoMs) that will be on the actual flight hardware.

Expectations for the candidate

We are looking for you, if you:
- Have minimal knowledge with C/C++ and Python
- Have some knowledge of Git, Jira, Embedded Linux
- Are motivated to learn new technologies and willing to research topics related to them, such as Yocto
- Be able to work around 8 hours a week and be present on the weekly meeting(s)

You do not need extensive prior experience to apply. We primarily look for candidates who demonstrate curiosity, responsibility, and a willingness to learn, experiment, and collaborate in a student team environment.

Opportunities

Your responsibilities will include:
- Create and maintain Yocto-based Embedded Linux builds for multiple hardware targets,
- Create and maintain CI/CD pipelines, enabling the rest of the Mission Software team to work remotely,
- Write documentation about your work,
- Be responsible for delivering a high-performance and fault-tolerant CDHS that enables real-time operations for our CubeSat future satellite platforms

Applying for a job

One can apply until a suitable candidate is found or until the end of the application period.

Application period
06.05.2026 - 31.07.2026