Embedded Firmware Developer
- Compensation
- Not disclosed
- Location
- Calgary, Alberta, Canada
- Work setup
- Hybrid
- Seniority
- Not specified
- Employment
- Full time
- Experience
- 5+ years
- Category
- Embedded
- Posted
Skills
Must have
- Bachelor's degree in Computer Engineering, Software Engineering, Electrical Engineering, Computer Science, or equivalent experience.
- 5+ years of embedded firmware development experience.
- Strong proficiency in: C programming Python Linux
- Experience with embedded networking and communications protocols.
- Experience with MQTT-based IoT systems.
- Experience using JSON and Protocol Buffers.
- Solid debugging and troubleshooting skills.
- Experience using Git/GitHub and Agile development tools such as Jira.
- Ability to read electrical schematics and collaborate with hardware designers.
- Strong written and verbal communication skills.
Nice to have
- Experience with FreeRTOS.
- Experience with ESP32 development using ESP-IDF.
- Experience with AWS IoT Core.
- Experience with RS485, Modbus, UART, and I²C.
- Experience with wireless mesh or low-power radio networks, including Synapse radios.
- Familiarity with OTA firmware update architectures.
- Experience designing communication protocols for distributed systems.
- Knowledge of automated testing, CI/CD, and firmware release processes.
- Experience with agricultural, industrial, or IoT products.
Full description
Embedded Firmware Developer
Location: Calgary, AB (Hybrid)
Employment Type: Full-Time
Company: OPIsystems Inc.
About OPIsystems
For over 40 years, OPIsystems has helped farmers and agribusinesses around the world protect and optimize the value of stored grain through innovative monitoring, control, and data-driven solutions. Our hardware, firmware, cloud platform, and analytics technologies are deployed globally to support safer and more efficient grain storage operations.
Position Overview
We are looking for an experienced Embedded Firmware Developer to join our engineering team immediately. This role will focus initially on supporting and enhancing our BLUE® platform, including bug fixing, system stabilization, code refactoring, and feature development. Over time, the successful candidate will transition into the development of next-generation products within our EPIQ® platform, helping shape the future of connected agricultural IoT systems.
This position is hands-on and ideal for someone who enjoys troubleshooting complex field issues, improving legacy codebases, and developing reliable firmware for distributed embedded systems operating in challenging real-world environments.
Immediate Responsibilities
You will work primarily on embedded Linux-based systems and be responsible for:
- Investigating and resolving firmware defects and field-reported issues.
- Refactoring and modernizing existing C and Python codebases.
- Designing and implementing new product features.
- Improving system reliability, maintainability, and performance.
- Collaborating with QA to identify root causes and validate fixes.
- Supporting wireless communications based on Synapse radio networks.
- Developing and maintaining data exchange protocols using:
- MQTT
- JSON
- Protocol Buffers (protobuf)
- Working closely with cloud and application development teams to ensure seamless system integration.
Participating in system architecture and design discussions.
Long-Term Responsibilities
As part of our strategic product roadmap, you will contribute to the development of next-generation IoT devices and control systems:
- Design and develop firmware for ESP32-based devices.
- Develop applications running on FreeRTOS.
- Implement communications using: