Design, development and integration of software for embedded systems using real-time operating systems (RTOS)
Analyze technical requirements and translate them into software architecture and modules for deterministic scheduling, multithreading, and priority management
Develop and optimize C/C++ firmware for tasks, interrupt-based scheduling, and low-level hardware programming (e.g., timers, I/O, memory access)
Perform debugging, code reviews, unit and integration testing, and performance optimization
Work closely with hardware, QA, and system architecture teams to ensure stable and efficient real-time solutions
Requirements
Degree in Computer Science, Electrical Engineering, or a comparable technical qualification
Several years of hands-on experience in embedded software development (e.g., C/C++)
Solid experience with real-time operating systems (e.g., FreeRTOS, QNX, Zephyr, PikeOS) and deterministic scheduling
Experience with multithreading, task prioritization, interrupts, synchronization, and memory management in real-time contexts
Proficient with debugging tools, testing (unit/integration), and performance tuning
Team-oriented and collaborative
Excellent German and English skills, both written and spoken.
Benefits
Ample opportunities for personal impact and participation, with flat hierarchies
A creative and flexible working environment with exciting partners
Competitive compensation and ongoing professional development
Remote work option (if desired)
Company pension scheme
Mobility subsidies provided as benefits or vouchers
Startup mentality
Good coffee and brain food (snacks)
Applicant Tracking System Keywords
Tip: use these terms in your resume and cover letter to boost ATS matches.