Job Description Firmware Engineer Location: Remote
Position Type: Contract
Contract Duration: 6 Months with possibility of extension
Position Overview
The Firmware Engineer will be responsible for maintaining and updating firmware on four proprietary hardware devices critical to the operations of the Demand Response business. These devices support remote energy monitoring, control equipment toggling, and secure communication with central servers and dispatch platforms.
This role requires a detail-oriented embedded systems engineer with deep knowledge of microcontroller architectures, communication protocols, and legacy firmware systems. The ideal candidate will be a proactive problem solver with a strong interest in sustaining long-lifecycle products and supporting hardware deployed in the field.
Essential Functions Technical Firmware Maintenance Maintain and enhance embedded firmware for low-power microcontroller-based systems. Analyze, debug, and resolve field-reported issues, ensuring reliability and uptime. Modify and extend legacy codebases with minimal documentation. Collaborate with electrical engineers to support device-level debugging and testing. Hardware Interface Integration Work with digital I/O, relays, KYZ pulse counting, analog inputs, and related interfaces. Use development tools and equipment such as debuggers, oscilloscopes, and logic analyzers. Integrate serial protocols including UART, RS-232, RS-485, SPI, and I2C. Communication Systems Support and troubleshoot cellular modem communications using AT commands. Maintain and optimize firmware for reliable data transmission from field-deployed units. Support satellite module integration for remote telemetry. Product Lifecycle & Sustainability Participate in long-term support for embedded products used in energy monitoring. Maintain secure firmware update mechanisms, bootloaders, and OTA processes. Ensure backward compatibility and long-term maintainability of deployed firmware. Collaborate with senior engineers to understand design rationale and architecture. Documentation & Collaboration Create and maintain technical documentation outlining firmware behavior and architecture. Work cross-functionally with hardware and field teams to coordinate debugging and enhancements. Record and share tribal knowledge to enhance future sustainability. Other Duties Support continuous improvement efforts in firmware processes and maintainability. Assist with legacy code refactoring efforts while minimizing risk to deployed systems. Provide input into hardware design with firmware constraints in mind. Requirements Education Bachelor’s degree in Electrical Engineering, Computer Engineering, or a related field, or equivalent experience. Work Experience 2–5 years of experience in embedded firmware development. Prior exposure to legacy code maintenance and fielded device support. Certifications No certifications required. Familiarity with secure firmware design or industrial communication protocols is beneficial. Skills & Tools Experience in embedded systems programming with competence in C/C++, Python, and Linux Shell Script. Experience working with Embedded Linux and associated open-source resources, including cross-compile toolchains and Yocto image build software. Ability to use debuggers, oscilloscopes, and logic analyzers. Experience with serial communication protocols including UART, RS-232, RS-485, SPI, and I2C. Experience with Modbus, KYZ pulse metering, and industrial energy monitoring equipment. Familiarity with battery-powered device design and power optimization. Clear communication and strong documentation practices.
Comfort with schematics and cross-functional engineering collaboration
Show more Numbers & Facts Location (or Remote), MA (Remote )
Skills
Analysis Skillsunmatched
Bootingunmatched
C Programming Languageunmatched
C++ Programming Languageunmatched
Communication Skillsunmatched
Communication Systemsunmatched
Communications Protocolsunmatched
Communications Serversunmatched
Computer Engineeringunmatched
Computer Firmwareunmatched
Continuous Improvementunmatched
Cross-Functionalunmatched
Debugging Skillsunmatched
Debugging Toolsunmatched
Detail Orientedunmatched
Documentationunmatched
Electrical Engineeringunmatched
Embedded Linuxunmatched
Embedded Programming Languagesunmatched
Embedded Systemsunmatched
Hardware Administrationunmatched
Hardware Designunmatched
I2Cunmatched
Identify Issuesunmatched
Image Editorsunmatched
Industrial Designunmatched
Input/Outputunmatched
Linux Operating Systemunmatched
Logic Analyzerunmatched
Low Powerunmatched
Microcontrollerunmatched
Modemsunmatched
Open Sourceunmatched
Oscilloscopeunmatched
Problem Solving Skillsunmatched
Process Improvementunmatched
Product Lifecycleunmatched
Product Supportunmatched
Programming Toolsunmatched
Python Programming/Scripting Languageunmatched
RMONunmatched
RS-232unmatched
RS-485unmatched
Refactoringunmatched
Risk Managementunmatched
Serial Communications Protocolsunmatched
Sustainabilityunmatched
Systems Engineeringunmatched
Systems/Internals Programmingunmatched
Technical Writingunmatched
Telemetryunmatched
Testingunmatched
Universal Asynchronous Receiver-Transmitter (UART)unmatched
Unix Shell Programmingunmatched
Show more Level up your application Browse dozens of recruiter approved resume templates, layouts and formats. Choose your favorite and make it your own in minutes.
Free resume templates
Improve your existing resume or start from scratch and create a standout, ATS-friendly resume. Add job-specific content, download and apply.
Free resume builder