Firmware Engineer
About the role
As a Firmware Engineer at AssetWatch, you will work on production firmware for industrial IoT devices, including vibration sensors, BLE-enabled devices, edge hubs, diagnostics, firmware updates, wired and wireless networking, Wi-Fi communication, cybersecurity-sensitive firmware protocols, and manufacturing/test workflows.
- Design, implement, and debug firmware features for sensor communication, diagnostics, scheduling, data collection, configuration, and firmware updates.
- Work with BLE communication paths between hubs and battery-powered sensors, including scanning, connection handling, command/response flows, diagnostics, and update behavior.
- Develop and debug firmware features involving Wi-Fi communication, wired Ethernet, cellular connectivity, TCP/IP networking, MQTT communication, device diagnostics, and edge-to-cloud data paths.
- Support wired and wireless networking behavior across hubs and connected devices, including connectivity state, provisioning, configuration, reconnection behavior, signal quality, network diagnostics, and failure recovery.
- Implement and review firmware cybersecurity features and protocols, including secure communication, device identity, authentication, authorization, encrypted transport, credential handling, signed firmware, secure update flows, and protection of device interfaces.
- Support embedded Linux or edge-device services that interact with firmware, hardware, MQTT interfaces, diagnostics, logs, backend/cloud systems, and network interfaces.
- Build and maintain production firmware release workflows, including versioning, changelogs, pull requests, build pipelines, packages, OTA/FOTA artifacts, and security review checkpoints.
- Collaborate with hardware and test engineering on bring-up, regression testing, validation, fixture development, failure analysis, and production readiness.
- Support hardware qualification phases such as prototype, EVT, DVT, PVT, and production ramp.
- Investigate field issues involving sensors, hubs, wireless communication, wired networking, power behavior, firmware updates, diagnostics, security, or manufacturing/test failures.
- Write clear technical documentation, including firmware specifications, process procedures, release notes, test plans, interface references, security notes, and troubleshooting guides.
- Participate in design reviews, code reviews, sprint planning, Jira workflows, and cross-functional technical discussions.
Requirements
Experienced in using AI tools to accelerate FW production and quality
Strong experience developing production embedded firmware in C or C++
Hands-on experience debugging firmware on real hardware using tools such as J-Link, oscilloscopes, logic analyzers, power profilers, serial logs, packet captures, network logs, or equivalent lab/debug equipment.
Experience with Git-based development workflows, pull requests, code review, branching, and release discipline.
Understanding of embedded communication protocols, device state machines, diagnostics, logging, and fault handling.
BLE experience, especially GATT, central/peripheral roles, scanning, connection lifecycle, pairing/bonding, encryption, authorization, Nordic/nRF, or NUS-style command interfaces.
Wi-Fi experience, especially 802.11 behavior, WPA2/WPA3, provisioning, connection management, roaming, signal quality, reconnection behavior, and wireless diagnostics.
Wired networking experience, especially Ethernet interfaces, link detection, IP configuration, routing, DNS, DHCP, firewalls, VPN behavior, and network troubleshooting on embedded Linux or edge devices.
Experience securing connected firmware systems using TLS/mTLS, certificates, secure provisioning, device identity, signed firmware, secure boot, encrypted OTA/FOTA, key management, or secure storage.
Experience with network-connected devices using protocols or technologies such as Ethernet, Wi-Fi, cellular, TCP/IP, UDP, DNS, DHCP, TLS, MQTT, HTTP/HTTPS, VPNs, or similar device communication paths.
Experience with firmware cybersecurity principles and secure communication protocols, including authentication, authorization, encryption, secure credential handling, secure firmware update concepts, and protection of device communication interfaces.
Experience working with wireless, sensor, IoT, embedded Linux, RTOS, or similar connected-device systems.
Ability to collaborate across firmware, electrical engineering, mechanical engineering, test engineering, backend/cloud, cybersecurity, product, support, and manufacturing teams.
Strong written communication skills and a willingness to maintain clear technical documentation.
Practical problem-solving mindset for ambiguous hardware, firmware, networking, cybersecurity, and field reliability issues.
Qualifications
- Experience with low-power battery-powered devices, sleep states, current measurement, power optimization, and field reliability.
- Experience with embedded Linux, Debian packaging, system services, shell scripting, Makefile/CMake, systemd, networking tools, or device-side daemons.
- Experience with MQTT, JSON payloads, diagnostics, sensor schedules, edge-to-cloud communication, or industrial IoT systems.
- Experience with OTA/FOTA firmware updates, rollback strategy, release validation, production deployment risk management, and cybersecurity review of update mechanisms.
- Experience with CI/CD pipelines, semantic versioning, changelogs, release branches, package repositories, build automation, and software bill of materials or vulnerability tracking.
- Experience supporting EVT/DVT/PVT, manufacturing test, end-of-line testing, fixture automation, IQA, CM coordination, or production ramp.
- Experience with vibration sensors, condition monitoring, industrial equipment, or other ruggedized field hardware.