Embedded Software Engineer (C, C++, RTOS)

Josh Pros LLC
Plano, TX, United States
about 1 month ago
Apply on www.indeed.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Job source

Tech stack

Board Bringup C (Programming Language) Software Applications ARM Architecture C++ (Programming Language) Code Review Software Debugging Device Drivers Memory Management Embedded Software Firmware FreeRTOS
+13 more
Inter-Process Communication Joint Test Action (IEEE Standards) Python (Programming Language) Performance Tuning Real-Time Operating Systems System Programming Universal Asynchronous Receiver/Transmitter VxWorks Serial Peripheral Interface PIC Microcontroller Git Software Version Control Hardware Debugging

Job description

We are seeking an Embedded Software Engineer to design, develop, and optimise firmware and low-level software for resource-constrained devices. You will work close to the hardware - writing and debugging C/C++ on real-time operating systems, bringing up boards, integrating device drivers and peripherals, and validating on target. The role sits with cross-functional hardware, systems, and QA teams to deliver reliable, high-performance embedded solutions., * Design and develop embedded firmware and application software in C and C++.

  • Build and debug on an RTOS, managing tasks, scheduling, interrupts, and inter-process communication.
  • Bring up hardware and develop or integrate device drivers for peripherals (SPI, I2C, UART, GPIO, CAN).
  • Optimise for memory, power, and real-time performance on resource-constrained targets.
  • Debug at the hardware level using JTAG, oscilloscopes, and logic analysers.
  • Write scripts and tooling in Python for automation, test, and validation.
  • Collaborate with hardware and systems teams and participate in code reviews.

Requirements

  • Strong proficiency in C and C++ for embedded development
  • Hands-on experience with a real-time operating system (RTOS) such as FreeRTOS, VxWorks, or Zephyr
  • Python for automation, scripting, test, and tooling
  • Board bring-up, device drivers, and peripheral integration (SPI, I2C, UART, GPIO, CAN)
  • Microcontroller and microprocessor architectures (ARM Cortex-M/A or similar)
  • Hardware debugging with JTAG, oscilloscopes, and logic analysers
  • Understanding of memory management, interrupts, and low-level performance optimisation
  • Familiarity with version control (Git) and CI for embedded builds
  • Experience developing to reliability, safety, or quality standards is a plus

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.indeed.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

8:07 min

Transitioning from web development to constrained hardware engineering

Philipp-Alexander Blum · LIVE

6:21 min

Investigating push inefficiencies with upstream Git experts

Jonathan Creamer · Coffee With Developers

2:19 min

Orchestrating over-the-air firmware updates for vehicle modules

Denis Grahovac · World Congress 2021

51 sec

Programming languages optimized for embedded vehicle software

Martin Schmiedecker · LIVE

2:13 min

Evaluating Rust for modernizing embedded C firmware

Michael Friedrich Michael Friedrich · World Congress 2026 Europe

1:53 min

Entering software development through retro computing platforms

Alex Soto Alex Soto · LIVE

Videos

See all

Related articles

See all