Embedded Firmware Engineer
KP labs · Gliwice, Poland
Apply directly with the employer or job board. Applications are never handled here.
Gliwice (hybrid)##### Job description:
- Develop flight software for our on-board data processing units: firmware running on microcontrollers under a real-time operating system, written in modern C++.
- Implement and maintain device drivers and hardware abstraction layers for the buses and components on the board, such as serial interfaces, memories and sensors.
- Implement on-board services, for example telemetry acquisition, time keeping, persistent storage or fault handling.
- Implement communication stacks and interfaces between the processing unit and the satellite platform.
- Write unit tests and run them on the host and on emulated targets.
- Develop Python tooling used to configure, flash and test the firmware on the bench.
- Work with the CMake and Conan build system and CI pipelines.
- Take part in code reviews, design discussions and verification activities with other teams.
- Prepare and maintain software design documentation and test evidence.
What we expect:
- Bachelor’s degree or higher in Computer Science, Electronics, Automatic Control, Telecommunications or a related technical field.
- Commercial experience with firmware for microcontrollers, bare metal or under an RTOS, developed against real hardware.
- Practical knowledge of C++14 or newer, including the standard library.
- Knowledge of real-time operating systems: tasks and scheduling, synchronisation primitives, interrupt handling, stack and priority assignment.
- Python for test and bench tooling.
- Understanding of microcontroller peripherals and data buses (SPI, I2C, UART, CAN) and the ability to read a schematic and a component datasheet.
- Debugging skills on real hardware: JTAG debugger, logic analyzer, oscilloscope.
- Experience with a build system and version control: CMake, Git.
- Ability to write unit tests for embedded code.
- English sufficient to read documentation and standards, write technical documentation and take part in technical discussions with customers.
- Availability to work from our Gliwice office every Tuesday.
Nice to have:
- Low-level work on any 32-bit microcontroller architecture: startup code, linker scripts, interrupt controllers, MPU and cache handling.
- Familiarity with ECSS, CCSDS or other space industry standards, or with functional safety standards from another regulated industry.
- Experience with bootloaders, firmware update mechanisms and image integrity checking.
- Conan or another C++ package manager, and Jenkins or another CI system.
- Target emulation with QEMU, or hardware-in-the-loop test setups.
- Static analysis, MISRA or another coding standard applied in a real project.
What we offer:
- Work with world-class companies and institutions on the cutting-edge space industry.
- Challenging projects that have the potential to change the industry.
- Supportive environment and opportunities to learn new exciting things.
- Opportunity to attend the biggest global events related to the space industry.
- The opportunity to gain experience with support from the best specialists in the field.
- Flexible working hours and remote work option.
- A variety of perks to choose from (sports cards, private healthcare, fuel cards, foreign language lessons).
We believe in a “human” approach to work and care about work-life balance. Additionally, one of our biggest assets is our attention to mutual support and exchange of knowledge at work.
About usWho we are
At KP Labs, we keep things simple—solving problems, learning from each other, and staying open to new ideas. We value honest discussions, direct feedback, and the freedom to explore different approaches.
What you will getBenefits
Nursery and kindergarten subsidies
Flexible working hours
Company sports team
Cafeteria plan
Meal subsidies
No dress code
Employee parking
How it worksRecruitment process
Our recruitment process is designed to be efficient and transparent, giving you a no-nonsense approach to evaluating fit and next steps.
Step 1
Analysis of your CV with a technical person.
Step 2
One-stage interview (in the office or remotely) with selected candidates.
Step 3
Information about our decision within two weeks of the interview.
Join us
Interested in joining our team? Contact us at job@kplabs.pl!
Keep looking
5,000+ English-friendly jobs in Poland
Every one checked for language requirements, updated daily.