Embedded Software Engineer

Extropic

Boston (MA)

On-site

USD 120,000 - 190,000

Full time

14 days+

A complete application in a minute

Tailored resume and cover letter, ready to send.

Get past ATS filters

Job summary

Extropic is seeking an Embedded Software Engineer in Boston to design and implement firmware across bare-metal, RTOS, and embedded Linux environments for heterogeneous multi-core SoCs. You will develop drivers, user-space applications, and host-PC tools, collaborating with hardware, FPGA, and systems teams to bring up new boards.

You will write robust C/C++ and Python, debug with GDB/OpenOCD, and contribute to architecture decisions.

Qualifications

  • 5+ years hands-on embedded firmware and Linux software development.
  • Strong proficiency in C, C++, and Python with embedded focus.
  • Deep experience with bare-metal firmware, interrupt-driven systems, and hardware bring-up.
  • Proven experience with embedded Linux (build systems, user-space, drivers, device trees).
  • Hands-on with heterogeneous multi-core RISC-V and ARM processors (Cortex-R5, Cortex-A53).
  • Strong multi-threaded and multi-core software design principles.
  • Experience developing/debugging drivers and apps using I2C, SPI, UART, DMA, etc.
  • Familiarity with Yocto/PetaLinux, Buildroot, or similar embed Linux build systems.

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.
  • Work with heterogeneous multi-core SoCs, enabling IPC, synchronization, and resource sharing.
  • Implement multi-threaded, multi-core architectures with attention to power, performance, determinism.
  • Develop and maintain low-level drivers (SPI, I2C, UART, GPIO, timers, DMA).
  • Debug real-time embedded systems using JTAG/SWD, in-circuit emulators, and diagnostic tools.
  • Characterize systems with oscilloscopes, logic analyzers, and protocol analyzers.
  • Write clean, modular C/C++ code and Python tooling for automation.
  • Collaborate with hardware/FPGA/systems teams to bring up boards and resolve issues.
  • Contribute to system architecture decisions and documentation.

Skills

C
C++
Python
Multi-core SoC
Embedded Linux
Bare-metal firmware
RTOS
GDB/OpenOCD
ARM/RISC-V
Code debugging

Education

Bachelor's or Master in Electrical Engineering, Computer Engineering, Computer Science

Tools

Yocto
Buildroot
OpenOCD
Lauterbach
RPMsg
Git

Job description

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.

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 Experience
  • Bachelor’s or Master’s degree in Electrical Engineering, Computer Engineering, Computer Science, or related field.

  • 5+ years of hands‑on experience in embedded firmware and Linux software development.

  • Strong proficiency in C, C++, and Python, with emphasis on embedded and deeply embedded programming.

  • Deep experience with bare‑metal firmware development, interrupt‑driven systems, and hardware bring‑up.

  • Proven experience with embedded Linux (build systems, user‑space applications, drivers, device trees).

  • Hands‑on experience with heterogeneous multi‑core RISC‑V and ARM processors, such as Cortex‑R5 and Cortex‑A53

  • Strong understanding of multi‑threaded and multi‑core software design principles.

  • Experience developing and debugging drivers and applications using I2C, SPI, UART, DMA, and other common peripherals.

  • Strong lab skills: oscilloscopes, logic analyzers, protocol analyzers, power measurement, and signal debugging.

  • Proficiency with software debuggers (GDB, OpenOCD, Lauterbach, etc.).

  • Ability to analyze, troubleshoot, and optimize system performance across the entire hardware/software boundary.

Preferred Experience
  • Experience with Yocto/PetaLinux, Buildroot, or similar embedded Linux build systems.

  • Familiarity with IPC mechanisms (RPMsg, shared memory, message queues) in heterogeneous SoC environments.

  • Experience integrating firmware with FPGA-based systems or custom ASIC’s.

  • Familiarity with FPGA embedded software environments such as AMD/Xilinx Vitis

  • Knowledge of network protocols and experience building socket‑based host‑PC applications.

  • Experience with continuous integration, test automation, and version control (Git).

Soft Skills
  • Strong analytical and problem-solving ability.

  • Excellent communication skills for cross‑team collaboration.

  • Self‑starter attitude and ability to take ownership of complex features from architecture to deployment.

  • Comfortable working in a fast‑paced, hands‑on engineering environment.

This position will require access to information subject to control under U.S. export control laws and regulations, including the Export Administration Regulations (“EAR”). Please note that any offer for employment will be conditioned on authorization to receive controlled items.

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Senior Software Engineer (Embedded Linux)
Senior Software Engineer (Embedded Linux)

Delaney Group • United States

On-site
USD 100,000 - 130,000
Embedded Software Engineer
Embedded Software Engineer

AT3 Professional Staffing Solutions, Inc. • Appleton (WI)

On-site
USD 85,000 - 120,000
Embedded Software Engineer
Embedded Software Engineer

SGS Consulting • Boston (MA)

On-site
USD 110,000 - 160,000
Embedded Software Engineer
Embedded Software Engineer

vigilant • Seattle (WA)

On-site
USD 150,000 - 185,000
Comprehensive Benefits Package
401k Matching
Embedded Engineer
Embedded Engineer

Cypress HCM • San Diego (CA)

On-site
USD 90,000 - 120,000
Embedded Software Engineer
Embedded Software Engineer

EOI Space • Lafayette (CO)

On-site
USD 133,000 - 187,000
Embedded Firmware Engineer: C/C++, Bring-Up Expert
Embedded Firmware Engineer: C/C++, Bring-Up Expert

AttoTude • Menlo Park (CA)

On-site
USD 175,000 - 205,000
Embedded Software Engineer, Robotics
Embedded Software Engineer, Robotics

Engtal • Austin (TX)

On-site
USD 110,000 - 160,000
Employee options
Medical insurance
Dental insurance
+3
Senior Firmware Engineer
Senior Firmware Engineer

Riccione Resources, Inc. • Dallas (TX)

On-site
USD 120,000 - 170,000
Embedded Software Engineer
Embedded Software Engineer

Green Key Resources • Tacoma (WA)

On-site
USD 110,000 - 160,000