Key Responsibilities Design, develop, and debug RTOS based embedded system firmware Implement multitasking systems utilizing: Tasks, semaphores, mutexes, queues, event flags, timers and interrupts Develop low‑level drivers for peripherals (UART, SPI, I2C, GPIO, Ethernet, etc.) Optimize firmware for real‑time performance, memory usage, and stability Integrate firmware with hardware and collaborate closely with hardware engineering teams Debug complex system issues using JTAG, logic analyzers, oscilloscopes and networking tools Support bring‑up of new hardware platforms Write and maintain technical documentation (design specs, APIs, release notes) Participate in code reviews and contribute to firmware architecture decisions Support manufacturing, test, and field issues as needed Required Qualifications Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or equivalent experience 5+ years of embedded firmware development experience Expert-level C programming for embedded systems Strong understanding of: RTOS concepts (scheduling, priorities, context switching) Interrupt handling and real‑time constraints Memory management in constrained systems Experience working with ARM‑based microcontrollers (e.g., Cortex‑A) Familiarity with embedded toolchains and debuggers (Segger, IAR, Keil, GCC, etc.) Experience reading schematics and datasheets Strong debugging and problem‑solving skills Preferred / Nice‑to‑Have Qualifications Experience with bootloaders and firmware upgrade mechanisms Experience in networked embedded systems and communication protocols (TLS, HTTP, TCP/IP, Ethernet, CAN, USB) Experience with unit testing and CI for embedded systems Familiarity with µC/OS-II and other RTOSes (FreeRTOS, ThreadX, Zephyr) Soft Skills Strong communication and documentation skills Ability to work independently and within cross‑functional teams Comfortable working on complex, long‑lifecycle products Detail‑oriented with a focus on product quality and reliability You must submit an online application to be considered for the position. Our Trust Charter is our Code of Conduct and demonstrates our commitment to ethics, safety, sustainability, quality and cybersecurity, underpinning every aspect of our business and our willingness to behave and respond respectfully and in good faith to all our stakeholders.