Embedded Software Engineer

Embedded Software Engineer

Posted Today by GNRSystems

Negotiable
Undetermined
Hybrid
Remote or Bloomington, Illinois

Summary: We are seeking an experienced Embedded Software Engineer to design, develop, and maintain embedded software solutions in Bloomington, IL. The ideal candidate will work closely with hardware, firmware, and systems teams to deliver high-quality embedded products in a hybrid work environment.

Key Responsibilities:

  • Design, develop, and debug embedded software/firmware
  • Develop software in C/C++ for embedded systems
  • Work with microcontrollers and embedded processors
  • Develop and integrate device drivers, BSPs, and low-level software
  • Collaborate with hardware teams for board bring-up and testing
  • Perform unit testing, debugging, and performance optimization
  • Support integration, validation, and production issues
  • Create and maintain technical documentation

Key Skills:

  • Strong experience in embedded software development
  • Proficiency in C and/or C++
  • Experience with RTOS (FreeRTOS, VxWorks, QNX, Embedded Linux, etc.)
  • Experience with microcontrollers (ARM, STM32, NXP, TI, etc.)
  • Strong debugging skills using JTAG, oscilloscopes, logic analyzers
  • Experience with Git or other version control systems

Salary (Rate): £45

City: Bloomington

Country: United States

Working Arrangements: hybrid

IR35 Status: undetermined

Seniority Level: undetermined

Industry: IT

Detailed Description From Employer:

We are seeking an experienced Embedded Software Engineer to design, develop, and maintain embedded software solutions in Bloomington, IL. The ideal candidate will work closely with hardware, firmware, and systems teams to deliver high-quality embedded products in a hybrid work environment.

Responsibilities:

  • Design, develop, and debug embedded software/firmware

  • Develop software in C/C++ for embedded systems

  • Work with microcontrollers and embedded processors

  • Develop and integrate device drivers, BSPs, and low-level software

  • Collaborate with hardware teams for board bring-up and testing

  • Perform unit testing, debugging, and performance optimization

  • Support integration, validation, and production issues

  • Create and maintain technical documentation

Required Skills:

  • Strong experience in embedded software development

  • Proficiency in C and/or C++

  • Experience with RTOS (FreeRTOS, VxWorks, QNX, Embedded Linux, etc.)

  • Experience with microcontrollers (ARM, STM32, NXP, TI, etc.)

  • Strong debugging skills using JTAG, oscilloscopes, logic analyzers

  • Experience with Git or other version control systems

Preferred Qualifications:

  • Experience with Embedded Linux

  • Experience with communication protocols (I2C, SPI, UART, CAN, Ethernet)

  • Experience with bootloaders and BSP development

  • Knowledge of safety or regulated environments (ISO, IEC, etc.)

  • Experience in Agile development environments