Skip to main content
S

Embedded Software Engineer

Spectra Defense Technologies

Location

Las Cruces, NM

Salary

Not specified

Type

fulltime

Posted

Today

via linkedin

Job Description

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.

Looking for more opportunities?

Browse thousands of graduate jobs and entry-level positions.

Browse All Jobs