×
Register Here to Apply for Jobs or Post Jobs. X

C++ Software Engineer

Job in Boise, Ada County, Idaho, 83708, USA
Listing for: Component Products Inc
Full Time position
Listed on 2026-05-20
Job specializations:
  • Software Development
    Embedded Software Engineer, Software Engineer
Salary/Wage Range or Industry Benchmark: 80000 - 100000 USD Yearly USD 80000.00 100000.00 YEAR
Job Description & How to Apply Below

If you are unable to complete this application due to a disability, contact this employer to ask for an accommodation or an alternative application process.

C++ Software Engineer

Full Time Boise, , US

6 days ago Requisition

This is an onsite position located in Boise, Idaho.

Pelco Solutions is seeking an Embedded C++ Software Engineer whose primary strength is high-quality C++ software development for embedded and real-time systems.

Work Authorization Requirement:Applicants must be legally authorized to work in the United States. The company is unable to provide or transfer immigration sponsorship for this position, now or in the future. This is a long-term, regular full-time position involving product ownership, training, and ongoing support responsibilities. We are seeking candidates who are interested in building a long-term career with the company and contributing across multiple product cycles.

Summary/Objectives: This role is intended for an engineer who can design, implement, review, debug, and maintain production-grade C++ firmware and embedded software. Hardware, electrical engineering, board bring-up, and manufacturing support experience are valuable, but the main hiring priority is strong C++ capability, sound software design judgment, and the ability to produce maintainable, testable code.

The C++ software engineer will work on embedded product platforms that may include microcontrollers, RTOS-based firmware, Embedded Linux, Yocto-based images, device communication protocols, firmware update mechanisms, diagnostics, and cloud- or network-connected product features. The role requires close collaboration with firmware, hardware, manufacturing, quality, and product teams.

Essential Duties and Responsibilities include the following (other duties may be assigned):

C++ Firmware and Embedded Software Development

  • Design, develop, debug, and maintain embedded software primarily in modern C++ with appropriate use of C where required by platform constraints.
  • Build modular, maintainable firmware architecture, including drivers, services, state machines, communication layers, diagnostics, and application logic.
  • Apply strong C++ fundamentals, including object lifetime, RAII, templates where appropriate, const-correctness, memory ownership, error handling, concurrency, and compile-time/runtime tradeoffs.
  • Write code suitable for resource-constrained, real-time, and safety-sensitive embedded environments.
  • Participate in code reviews and help improve coding standards, architecture guidelines, and long-term maintainability.
  • Develop unit tests, integration tests, simulation/mocking layers, hardware-in-the-loop tests, and automated regression checks where practical.
  • Be available as required by customer demand to work additional time (overtime) throughout the year.
  • Perform other related duties as assigned by management.
  • Consistent, reliable attendance and punctuality at assigned work location

RTOS, Yocto, and Platform Development

  • Develop and maintain firmware for bare-metal and RTOS-based systems, including task scheduling, synchronization, timing, interrupts, queues, timers, and inter-task communication.
  • Work with Embedded Linux platforms, including Yocto-based builds, board support packages, kernel/user-space interfaces, device trees, and system services when applicable.
  • Integrate bootloaders, firmware update mechanisms, secure update flows, memory layout, and device provisioning workflows.
  • Troubleshoot real-time issues such as race conditions, timing jitter, interrupt latency, deadlocks, memory corruption, watchdog resets, and resource exhaustion.

Communication Protocols and Connectivity

  • Implement, integrate, and debug embedded communication protocols such as UART, SPI, I2C, CAN, USB, RS-485, Modbus-style protocols, and custom binary protocols.
  • Work with network protocols and connected-device features such as TCP/IP, UDP, MQTT or similar messaging patterns, TLS/security concepts, and device-to-cloud communication where applicable.
  • Support wireless or field communication modules such as Bluetooth, Wi-Fi, cellular, or other industrial/IoT communication technologies as needed.
  • Design protocol parsers, framing, retry logic, checksums/CRC, message validation, telemetry, command handling, and robust error recovery.

Debugging, Reliability and Product Support

  • Debug firmware using JTAG/SWD, GDB, oscilloscopes, logic analyzers, protocol analyzers, logs, traces, and automated diagnostics.
  • Analyze field failures, RMA data, manufacturing issues, and customer-reported behavior to identify root causes and implement corrective actions.
  • Collaborate with hardware engineers on board for bring-up and firmware-hardware integration, including GPIO, ADC/DAC, timers, interrupts, sensors, communication modules, and power states.
  • Support manufacturing test firmware, production diagnostics, calibration utilities, and test fixture support.

Reasonable accommodation may be made to enable qualified individuals with disabilities or limitations related to, affected by, or…

To View & Apply for jobs on this site that accept applications from your location or country, tap the button below to make a Search.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
 
 
 
Search for further Jobs Here:
(Try combinations for better Results! Or enter less keywords for broader Results)
Location
Increase/decrease your Search Radius (miles)
0
200
Filters
Education Level
Experience Level (years)
Posted in last:
Salary