Senior Embedded System Engineer
Listed on 2026-09-04
-
Software Development
Software Engineer, Embedded Systems/ Firmware/ IoT
Full-time or contract-to-hire | Compensation DOE
FlotronIQ is launching My Water Controller, a smart inline water leak detection and automatic shutoff valve system. The product combines various sensors, LoRa/BLE/Wi-Fi connectivity, remote valve control, and a companion mobile app, with a family of wireless sensors. We are entering certification and pilot testing ahead of a full product launch in November 2026. Our product has certain features that none of the competition has, and that will clearly prove our product is superior in its protection capability and seamlessly blend into the user’s life.
Currently, we are operating out of our HQ in north Scottsdale (near the airport). The team consists of the founders and an engineering team abroad.
The RoleYou will take ownership of all product firmware, working with our current outside engineering firm, and become our first in-house engineer. The immediate mission is stabilizing the hub and sensor firmware for production launch and supporting FCC, UL Safety testing, and IAPMO (UPC) certification; the long-term mission is leading embedded development across a growing product line. You will work directly with the founders, with broad technical autonomy.
Key Responsibilities- Take over, audit, and stabilize existing ESP
32-S3 hub firmware (Arduino/C++):
Wi-Fi + MQTT/TLS to AWS IoT Core, BLE provisioning (NimBLE/CBOR), raw LoRa P2P sensor network with AES encryption, OTA updates, valve control, and pressure-based leak detection logic. - Maintain and extend battery-powered sensor firmware on Heltec Cube Cell and RAK
3172 (STM
32WL
E5/RUI3) platforms. - Drive firmware to certification readiness: verify US-band (902-928 MHz) LoRa operation, implement sustained-transmission test modes for FCC lab submission, and maintain version traceability required under UL and IAPMO listings.
- Diagnose and eliminate long-runtime stability issues (heap fragmentation, memory leaks, blocking code paths); refactor incrementally toward production-grade architecture.
- Establish firmware release discipline:
Git workflow, tagged releases, reproducible builds, documentation. - Collaborate with PCB design, cloud/backend, and mobile app development; support board bring-up and hardware revisions. Even better if you can handle most PCB design updates yourself.
- 5-8+ years of professional embedded C/C++ development.
- At least one shipped, field-deployed consumer or industrial IoT product.
- Strong ESP
32 experience (ESP
32-S3 preferred) across Arduino and ESP-IDF frameworks. - BLE (provisioning flows), Wi-Fi, and MQTT/TLS connectivity to AWS IoT Core or equivalent.
- Low-power battery-operated design: sleep modes, ISR discipline, power budgeting.
- Demonstrated success taking over and refactoring an existing codebase not originally your own.
- OTA update implementation and disciplined versioning/release practices.
- Experience with LoRa, particularly optimizing signal range with battery optimization.
- FCC Part 15 intentional-radiator testing experience, including pre-scans and forced sustained TX at fixed channels/data rates.
- STM
32WL
/ RAK
3172 (RUI3) and Heltec Cube Cell familiarity. - Experience with certified products where firmware changes trigger regulatory review (UL, IAPMO, or similar).
- Relay/actuator control and analog sensor interfacing (pressure transducers, ADC calibration).
- Hardware fluency: reading schematics, supporting PCB designers during bring-up and revision cycles.
- Self-directed and comfortable as the sole in-house engineer, reporting directly to the founders.
- Constantly curious and looking to improve the product for the user.
- Able to shadow and transition work from an offshore engineering team during handover.
- Pragmatic: stabilize first, refactor incrementally, keep the certification timeline front and center.
(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).