Embedded software engineer [h1.location_city]
[job_alerts.create_a_job]
Embedded software engineer • lynn ma
- [promoted]
Embedded Software Engineer
ExtropicBoston, MA, USSr. Embedded Software Engineer
Rise RoboticsSomerville, Massachusetts, United StatesStaff Embedded Software Engineer
LightmatterBoston, Massachusetts, United States- [promoted]
Senior Embedded Software Engineer
Owl LabsBoston, MA, USEmbedded Software Engineer
IntePros ConsultingBoston, Massachusetts, USEmbedded Software Intern
The Charles Stark Draper LaboratoryCambridge, Massachusetts, USA- [promoted]
Senior Embedded Software Engineer
LumafieldCambridge, MA, US- [promoted]
Senior Embedded Software Engineer
Webster & Webster AssociatesBoston, MA, United StatesPrincipal Embedded C++ Software Engineer
Full SpectrumBoston, Massachusetts, United States- [promoted]
Software Development Engineer - Embedded Quality
Sonos IncBoston, MA, United States- [promoted]
Principal Embedded Software Engineer
draper labsCambridge, MA, United States- [promoted]
Sr. Embedded Software Engineer
RISE RoboticsSomerville, MA, US- [new]
Staff Embedded Software Engineer (Wireless Networking)
SimplisafeBoston, Massachusetts, United States- [promoted]
Embedded Software Engineer II
Specter AerospacePeabody, MA, US- [promoted]
Senior Software Engineer, Embedded
ViasatBoston, MA, United StatesEmbedded Software Engineer [Aerospace|Medtech]
Critical-softwareCambridge, Massachusetts, United States- [promoted]
Staff Embedded Software Engineer (Wireless Networking)
SimpliSafeBoston, MA, USEmbedded Software Engineer
FormlabsSomerville, Massachusetts, United StatesEmbedded Software Engineer
Morse CorpCambridge, Massachusetts, United StatesEmbedded Software Engineer
ExtropicBoston, MA, US- [job_card.full_time]
Job Description
Job Description
Position Overview :
Extropic is seeking a highly skilled Embedded Software Engineer with deep experience in both bare-metal firmware development and embedded Linux application design. The ideal candidate should have a strong background working with heterogeneous multi-core RISC-V or ARM processors (e.g., Cortex-R5, Cortex-A53), excel in C / C++ and Python programming languages, and be comfortable developing across the entire embedded software stack—from low-level drivers to Linux user-space applications to host-side tooling.
This role is highly hands-on and involves close interaction with the systems, IC design, test, and physics cross-functional engineering teams. You will architect, implement, and debug complex embedded systems, integrating multiple processors, real-time firmware, and Linux-based applications.
Key Responsibilities
- Architect, design, and implement embedded software across bare-metal, RTOS, and embedded Linux environments.
- Develop firmware, Linux drivers, user-space applications, and host-PC tools supporting the full embedded software stack.
- Work with heterogeneous multi-core SoCs (e.g., Cortex-R5 real-time cores and Cortex-A53 application cores), enabling inter-processor communication, synchronization, and resource sharing.
- Implement multi-threaded, multi-core software architectures with attention to power, performance, determinism, and reliability.
- Develop and maintain low-level drivers for peripherals including SPI, I2C, UART, GPIO, timers, and DMA engines.
- Debug real-time embedded systems using JTAG / SWD debuggers, in-circuit emulators, and software diagnostic tools.
- Perform hands-on system characterization using oscilloscopes, logic analyzers, and protocol analyzers (SPI / I2C / UART, LVDS, Ethernet, USB, etc.).
- Write clean, robust, well-tested C / C++ code for bare-metal and Linux environments.
- Develop Python tools for automation, test, and host-side applications.
- Collaborate closely with hardware, FPGA, and systems engineers to bring up new boards, validate interfaces, and resolve integration issues.
- Contribute to system architecture decisions, design reviews, and technical documentation.
Required Qualifications
Preferred Experience
Soft Skills
We may use artificial intelligence (AI) tools to support parts of the hiring process, such as reviewing applications, analyzing resumes, or assessing responses. These tools assist our recruitment team but do not replace human judgment. Final hiring decisions are ultimately made by humans. If you would like more information about how your data is processed, please contact us.