
Embedded Software Engineer
Spectra Defense Technologies, Las Cruces, NM, United States
We are seeking a skilled
Embedded Software/Firmware Engineer
to design, develop, and optimize firmware and low-level software for our embedded systems. The ideal candidate will have experience working with hardware interfaces, writing efficient, reliable code in C/C++, and a strong understanding of computer architecture and hardware-level programming. This role will also involve developing and maintaining the Board Support Package (BSP) for new hardware platforms, including bootloaders, peripheral drivers, and low-level system initialization.
Responsibilities
Design, develop, and maintain
firmware for embedded systems, microcontrollers, and Linux applications.
Develop and maintain BSPs
for custom hardware, including initialization routines, device tree configurations, and hardware abstraction layers.
Write and optimize low‑level code
in C/C++ for performance, reliability, and scalability on resource‑constrained environments.
Interface with hardware
through device drivers and manage communications with peripherals (I2C, SPI, UART, etc.).
Collaborate with hardware engineers
to understand hardware specifications, timing constraints, and ensure firmware compatibility.
Debug and troubleshoot firmware
and BSP issues at the hardware level, using oscilloscopes, logic analyzers, and other debugging tools.
Develop and execute tests
to validate BSP and firmware functionality, reliability, and performance in real‑time embedded systems.
Maintain technical documentation
for BSP, firmware design, implementation, and debugging processes.
Perform code reviews
and contribute to firmware architecture and process improvements.
Qualifications
Bachelor’s degree
in Computer Science, Electrical Engineering, or related field
4+ years
of experience in low‑level software/firmware development for embedded systems.
Proficiency in C/C++
programming with experience in low-level debugging and optimization.
Experience with BSP development
for embedded hardware, including system initialization and device tree configuration.
Hands‑on experience with hardware debugging tools
such as oscilloscopes, multimeters, and logic analyzers.
Familiarity with version control systems like
Git .
Experience with communication protocols
such as I2C, SPI, UART, CAN, and USB.
Knowledge of assembly language, ARM or similar microcontroller architecture is a plus.
Strong problem-solving skills
and the ability to work independently as well as in a collaborative team environment.
Familiarity with scripting languages
(e.g., Python) for test automation.
#J-18808-Ljbffr
Embedded Software/Firmware Engineer
to design, develop, and optimize firmware and low-level software for our embedded systems. The ideal candidate will have experience working with hardware interfaces, writing efficient, reliable code in C/C++, and a strong understanding of computer architecture and hardware-level programming. This role will also involve developing and maintaining the Board Support Package (BSP) for new hardware platforms, including bootloaders, peripheral drivers, and low-level system initialization.
Responsibilities
Design, develop, and maintain
firmware for embedded systems, microcontrollers, and Linux applications.
Develop and maintain BSPs
for custom hardware, including initialization routines, device tree configurations, and hardware abstraction layers.
Write and optimize low‑level code
in C/C++ for performance, reliability, and scalability on resource‑constrained environments.
Interface with hardware
through device drivers and manage communications with peripherals (I2C, SPI, UART, etc.).
Collaborate with hardware engineers
to understand hardware specifications, timing constraints, and ensure firmware compatibility.
Debug and troubleshoot firmware
and BSP issues at the hardware level, using oscilloscopes, logic analyzers, and other debugging tools.
Develop and execute tests
to validate BSP and firmware functionality, reliability, and performance in real‑time embedded systems.
Maintain technical documentation
for BSP, firmware design, implementation, and debugging processes.
Perform code reviews
and contribute to firmware architecture and process improvements.
Qualifications
Bachelor’s degree
in Computer Science, Electrical Engineering, or related field
4+ years
of experience in low‑level software/firmware development for embedded systems.
Proficiency in C/C++
programming with experience in low-level debugging and optimization.
Experience with BSP development
for embedded hardware, including system initialization and device tree configuration.
Hands‑on experience with hardware debugging tools
such as oscilloscopes, multimeters, and logic analyzers.
Familiarity with version control systems like
Git .
Experience with communication protocols
such as I2C, SPI, UART, CAN, and USB.
Knowledge of assembly language, ARM or similar microcontroller architecture is a plus.
Strong problem-solving skills
and the ability to work independently as well as in a collaborative team environment.
Familiarity with scripting languages
(e.g., Python) for test automation.
#J-18808-Ljbffr