Embedded Software Engineer – Platform & Firmware

location_onReno, Nevada, United Statesschedule2 days ago
apartmentWork style:On-site
badgeEmployment:Full-time
schoolEducation:Bachelor’s degree
Apply Nowopen_in_new

Job description

Embedded Software Engineer – Platform & Firmware

Overview

The Embedded Software Engineer (Platform & Firmware) is a full-time, on-site role based in either Fremont, CA or Reno, NV. This role designs, develops, and tests software that interfaces directly with hardware, such as microcontrollers and processors in Pivotal’s flow control products, including gas flow and ratio controllers.

This role focuses on foundational software development, including drivers, bootloaders, and the embedded platform, using C, C++, and assembly to manage system resources and optimize device performance. It works closely with our Firmware Engineers, who build product-level control and communication firmware on top of this platform.

You will need a deep understanding of computer architecture, hardware-software integration, and low-level debugging. As a core member of our software engineering team, you will collaborate closely with embedded software and hardware engineers to deliver high-performance, reliable systems.

Key

Responsibilities

  • Develop Low-Level Software: Write and maintain firmware, bootloaders, and device drivers for embedded hardware platforms.
  • Optimize Performance: Ensure code efficiency and performance on resource-constrained systems (limited memory, CPU, and power).
  • Hardware-Software Integration: Collaborate with hardware teams to validate and troubleshoot system-level issues.
  • Debug and Test: Use tools such as oscilloscopes, logic analyzers, and in-circuit debuggers to identify and resolve issues at the hardware/software boundary.
  • System Resource Management: Implement low-level system features such as power management, memory allocation, and communication protocols (SPI, I2C, UART, etc.).
  • Embedded Linux Platform: Develop and maintain device trees, kernel configuration and drivers, init and system services, and userspace daemons where applicable.
  • Build and Release Infrastructure: Maintain toolchains, build systems, and automated builds for embedded targets, and support secure firmware update mechanisms.

Required Skills and

Qualifications

  • Proficiency in C, C++, and assembly language for embedded development.
  • Strong understanding of microcontrollers, processors, and memory management.
  • Experience with device trees, real-time operating systems (RTOS), and device driver development.
  • Skilled in using low-level debugging tools such as oscilloscopes, logic analyzers, JTAG, and in-circuit emulators.
  • Excellent analytical and problem-solving skills to address complex hardware/software integration issues.
  • Bachelor’s or Master’s degree in Computer Engineering, Electrical Engineering, or Computer Science.

The ideal candidate will also have:

  • Experience with EtherCAT technology.
  • Experience with CAN-based protocol stacks such as DeviceNet and CANopen.
  • Embedded Linux platform experience, including device trees, init/system services, userspace daemons, and kernel or driver development.
  • Python utility development experience for log parsing and packet/trace inspection.
  • PLC familiarity (software and hardware).
  • Experience in semiconductor, industrial automation, or other high-tech manufacturing environments.
  • Experience with Copy Exactly! / Copy Exact! and related design replication methodologies.
  • Familiarity with sensors, instrumentation, and control devices used in industrial equipment.

Skills mentioned


Reno, Nevada, United States

Apply for this job

Use the application link supplied with this listing to apply to pivotalsys. Check the destination before entering personal information.

Apply Nowopen_in_new