Embedded Firmware Engineer
Dronus, a leading company in autonomous drone technology, is seeking a highly skilled Embedded Firmware Engineer to join our innovative team in Trieste. We are looking for a professional with proven expertise in microcontroller firmware development and embedded Linux systems, passionate about advancing real-time embedded solutions for aerial automation. This role offers the chance to contribute directly to the core software that powers our next-generation drone platforms, ensuring robust, efficient, and scalable performance in dynamic environments.
Key Responsibilities
- Design, develop, and debug firmware for STM32 microcontrollers using FreeRTOS, including real-time task management, interrupt handling, and peripheral drivers (e.g., UART, SPI, I2C, CAN).
- Implement and optimize embedded Linux systems on processors, focusing on kernel customization, device tree configurations, and Yocto-based builds for drone-specific applications.
- Integrate sensors and communication protocols (e.g., GPS, IMU, LiDAR interfaces) into firmware stacks, ensuring seamless hardware‑software interaction and compliance with safety‑critical standards like IEC 62304 where applicable.
- Conduct unit testing, integration testing, and validation of firmware using tools such as oscilloscopes, logic analyzers, and automated test frameworks; perform debugging and optimization for low‑power and high‑reliability operation.
- Collaborate with hardware design, software architecture, and quality assurance teams to support prototype bring‑up, system integration, and continuous improvement initiatives.
- Contribute to over‑the‑air (OTA) update mechanisms, bootloader development, and version control using Git in an agile development environment.
- Document firmware designs, APIs, and test procedures to facilitate maintainability and knowledge transfer.
Qualifications
- Bachelor’s or Master’s degree in Computer Engineering, Electrical Engineering, or a related field.
- At least 4 years of hands‑on experience in embedded firmware development, with a strong focus on C/C++ for resource‑constrained systems.
- Proficiency in FreeRTOS or similar RTOS for STM32 microcontrollers, including multi‑threaded programming, IPC, and POSIX APIs.
- Solid experience with embedded Linux, including kernel modules, drivers, and build systems (e.g., Yocto or Buildroot).
- Familiarity with debugging tools (e.g., JTAG/SWD debuggers, GDB) and version control systems (e.g., Git).
- Knowledge of communication protocols (e.g., I2C, SPI, USB, Ethernet) and sensor integration in embedded environments.
Preferred Qualifications
- Experience with drone or robotics applications, such as real‑time control loops, sensor fusion, or autonomous navigation firmware.
- Proficiency in Python for scripting and automation in embedded testing pipelines.
- Background in safety‑critical systems development (e.g., MISRA C compliance, unit testing with frameworks like Unity or Ceedling).
- Exposure to ARM Cortex‑M architectures beyond STM32 (e.g., NXP, TI) and bare‑metal programming.
- Familiarity with agile methodologies and CI/CD pipelines for embedded software (e.g., Jenkins, GitLab CI).
Seniority level
Mid‑Senior level
Employment type
Full‑time
Job function
- Engineering and Information Technology
- Industries: Aviation and Aerospace Component Manufacturing