EngineerJobs.io
← Back to all jobs

Job Description

Embedded Software Engineer for small unmanned aircraft systems, this role focuses on creating and integrating low-level software across bare-metal, RTOS, and Linux environments. Proficiency in C/C++ and Python is required, with a leadership component directing small to medium development efforts within cross-functional teams.

Responsibilities

  • Develop low level embedded software for bare-metal, RTOS, and Linux based systems
  • Work on projects using C, C++, and Python within a Linux development environment
  • Create prototypes to explore new concepts and support iterative development cycles
  • Design and implement core algorithms and state machines
  • Develop software for embedded devices running Linux, RTOS, or bare-metal environments, including cameras and sensor systems
  • Perform low-level debugging with tools such as logic analyzers and oscilloscopes
  • Troubleshoot and resolve software challenges across diverse use cases
  • Provide technical leadership on small to medium sized projects or features, including design documentation, testing, code reviews, and collaboration with product and project managers

Requirements

  • 2+ years of experience delivering commercial-grade software for embedded systems
  • Bachelor’s or advanced degree in Computer Science, Electrical Engineering, Computer Engineering, or a related field
  • Strong proficiency in C and/or C++ for embedded systems, including object-oriented and modern C++ practices
  • Experience developing software for bare-metal, RTOS, or lightweight embedded Linux environments
  • Hands-on experience with board bring-up, peripheral integration, and low-level hardware interaction
  • Proficiency with debugging tools such as logic analyzers, oscilloscopes, and in-circuit debuggers (SWD/JTAG)
  • Experience with ARM-based microcontrollers (e.g., STM32) or similar embedded platforms
  • Familiarity with common embedded interfaces (I2C, SPI, UART, USB, etc.)
  • Ability to design and troubleshoot algorithms, state machines, and real-time behaviors
  • Experience working in Linux-based development environments with Git, build systems, and command-line workflows

Technologies

  • STMicroelectronics microcontrollers (STM32), NVIDIA Jetson
  • Bare-metal, RTOS, embedded Linux
  • C, C++, Python
  • Linux development environment, logic analyzers, oscilloscopes
  • I2C, SPI, UART, USB
  • Docker, Git
  • FreeRTOS, Zephyr, NuttX
  • SWD/JTAG

Benefits

  • Dental insurance
  • Health insurance
  • Paid time off

Preferred Qualifications

  • Experience with sensors, cameras, or other embedded peripherals
  • Experience with NVIDIA Jetson or other heterogeneous compute platforms
  • Experience with real-time operating systems such as FreeRTOS, Zephyr, or NuttX
  • Proficiency in Python for tooling, scripting, prototyping, or test automation
  • Experience using Docker as a primary development environment, including containerized toolchains and build environments
  • Familiarity with networking or radio communication systems

Compensation

$110,000.00 - $165,000.00 per year

Location and Work Arrangement

  • Location: Spanish Fork, UT (onsite)
  • Work arrangement: In person

Similar Jobs

Get Job Alerts

New jobs delivered to your inbox.