Develop and maintain safety-critical embedded systems for Flo Smart Water Shutoff products to protect homes from water damage.
Requirements
- Strong proficiency in Go and/or C for embedded systems
- Deep experience with Linux kernel and system-level programming
- Experience with D-Bus for inter-process communication
- Understanding of REST APIs and MQTT protocols
- Hardware/software integration and debugging expertise
- Understanding of real-time operating system constraints
- Experience with security patching and vulnerability management
Responsibilities
- Develop and maintain Linux-based embedded system software for Flo devices
- Design and implement hardware abstraction layers and device drivers
- Maintain operating system security through regular patching and updates
- Optimize system performance and power management
- Implement and maintain D-Bus services for system-level operations
- Support device-to-cloud connectivity infrastructure (REST APIs and MQTT)
- Implement OTA update mechanisms and device monitoring capabilities
Other
- B.S. in Software Engineer, Computer Science, Computer Engineering, or equivalent relevant experience
- Collaborate with hardware engineering on new product bring-up
- Work closely with team members to ensure knowledge sharing and redundancy
- Background in safety-critical systems
- Experience with Yocto Linux