Job Title: C++ Firmware Developer
Location: Maple Heights, Ohio 44137 (In office)
Employment Type: Full Time
Overview
We are seeking a skilled C++ Firmware Engineer with hands-on experience in embedded systems and a strong understanding of vending machine technologies. This role involves developing, maintaining, and optimizing firmware that powers vending machines, including payment systems, inventory tracking, and hardware integration.
Key Responsibilities
- Design, develop, test, and maintain embedded firmware in C++ for vending machine systems
- Interface with hardware components such as bill validators, coin mechanisms, card readers, touchscreens, and IoT modules
- Implement and debug communication protocols (e.g., MDB, UART, SPI, I2C) commonly used in vending environments
- Collaborate with electrical, mechanical, and software engineers to ensure seamless integration
- Optimize system performance, memory usage, and power consumption
- Develop and maintain diagnostic tools and firmware update mechanisms (OTA or wired)
- Troubleshoot field issues and provide root cause analysis
- Ensure compliance with industry standards and payment security requirements (e.g., PCI, EMV where applicable)
Required Qualifications
- Bachelor’s degree in Computer Engineering, Electrical Engineering, or related field (or equivalent experience)
- 3+ years of experience in embedded firmware development using C++
- Strong understanding of real-time operating systems (RTOS) or bare-metal systems
- Experience working with microcontrollers (e.g., ARM Cortex-M, AVR, PIC)
- Familiarity with vending machine protocols such as MDB (Multi-Drop Bus) & DEX
- Experience integrating payment systems (cash and cashless)
- Proficiency with debugging tools (oscilloscopes, logic analyzers, JTAG debuggers)
- Strong problem-solving skills and attention to detail
Preferred Qualifications
- Experience with IoT connectivity (Wi-Fi, LTE, Bluetooth) in embedded devices
- Knowledge of Linux-based embedded systems
- Familiarity with cloud integration for telemetry and remote management
- Experience in low-power design and optimization
- Understanding of cybersecurity best practices for embedded systems
Nice-to-Have Skills
- Experience with vending machine management systems (VMS)
- Understanding or familiarity with DEX protocol
- Understanding or familiarity with MDB communication protocol
- Knowledge of telemetry, remote monitoring, and predictive maintenance
What We Offer
- Competitive salary and benefits package
- Opportunity to work on innovative, real-world embedded systems
- Collaborative engineering environment
- Career growth and development opportunities
PI19b0dad902da-38265-40444822
Requirements
- <p> <strong>Job Title:</strong> C++ Firmware Developer</p><p><strong>Location:</strong> Maple Heights, Ohio 44137 (In office) </p><p><strong>Employment Type:</strong> Full Time<br /></p><p><strong>Overview</strong></p><p>We are seeking a skilled C++ Firmware Engineer with hands-on experience in embedded systems and a strong understanding of vending machine technologies. This role involves developing, maintaining, and optimizing firmware that powers vending machines, including payment systems, inventory tracking, and hardware integration.<br /></p><p><strong>Key Responsibilities</strong></p><ul><li>Design, develop, test, and maintain embedded firmware in C++ for vending machine systems</li><li>Interface with hardware components such as bill validators, coin mechanisms, card readers, touchscreens, and IoT modules</li><li>Implement and debug communication protocols (e.g., MDB, UART, SPI, I2C) commonly used in vending environments</li><li>Collaborate with electrical, mechanical, and software engineers to ensure seamless integration</li><li>Optimize system performance, memory usage, and power consumption</li><li>Develop and maintain diagnostic tools and firmware update mechanisms (OTA or wired)</li><li>Troubleshoot field issues and provide root cause analysis</li><li>Ensure compliance with industry standards and payment security requirements (e.g., PCI, EMV where applicable)</li></ul><p><strong>Required Qualifications</strong></p><ul><li>Bachelor’s degree in Computer Engineering, Electrical Engineering, or related field (or equivalent experience)</li><li>3+ years of experience in embedded firmware development using C++</li><li>Strong understanding of real-time operating systems (RTOS) or bare-metal systems</li><li>Experience working with microcontrollers (e.g., ARM Cortex-M, AVR, PIC)</li><li>Familiarity with vending machine protocols such as MDB (Multi-Drop Bus) & DEX</li><li>Experience integrating payment systems (cash and cashless)</li><li>Proficiency with debugging tools (oscilloscopes, logic analyzers, JTAG debuggers)</li><li>Strong problem-solving skills and attention to detail</li></ul><p><strong>Preferred Qualifications</strong></p><ul><li>Experience with IoT connectivity (Wi-Fi, LTE, Bluetooth) in embedded devices</li><li>Knowledge of Linux-based embedded systems</li><li>Familiarity with cloud integration for telemetry and remote management</li><li>Experience in low-power design and optimization</li><li>Understanding of cybersecurity best practices for embedded systems</li></ul><p><strong>Nice-to-Have Skills</strong></p><ul><li>Experience with vending machine management systems (VMS)</li><li>Understanding or familiarity with DEX protocol </li><li>Understanding or familiarity with MDB communication protocol </li><li>Knowledge of telemetry, remote monitoring, and predictive maintenance</li></ul><p><strong>What We Offer</strong></p><ul><li>Competitive salary and benefits package</li><li>Opportunity to work on innovative, real-world embedded systems</li><li>Collaborative engineering environment</li><li>Career growth and development opportunities</li></ul>

