remoteonsite
Embedded Software Engineer - MulticoreWare
Software Engineer
Design, develop, and debug embedded firmware for multicore and DSP platforms, using C/C++ and RTOS environments, while collaborating with hardware teams and applying Linux and Python scripting for testing and automation.
About the role
Key Responsibilities
- Develop and maintain high‑performance embedded firmware in C/C++ for multicore CPUs, DSPs, and FPGA‑based systems.
- Integrate and configure real‑time operating systems (e.g., FreeRTOS, VxWorks) to meet latency and throughput requirements.
- Collaborate with hardware engineers to define interfaces, perform board bring‑up, and troubleshoot low‑level issues.
- Write and maintain Linux device drivers and user‑space utilities for sensor and AI accelerator integration.
- Automate testing and validation using Python scripts and continuous‑integration pipelines.
- Document code, design decisions, and test results following industry best practices.
Requirements
- Bachelor’s degree in Computer Engineering, Electrical Engineering, or related field with 2–5 years of embedded software experience.
- Proficiency in C, C++, and Embedded C, with strong debugging skills on ARM or similar architectures.
- Hands‑on experience with RTOS kernels and Linux kernel development.
- Familiarity with hardware bring‑up, JTAG/SWD debugging, and peripheral interfaces (I2C, SPI, UART).
- Experience using version control (Git) and scripting languages such as Python for test automation.