Chemelex is a global leader in electric thermal and sensing solutions, protecting the world’s critical processes, places and people. With over 50 years of innovation and a commitment to excellence, we develop solutions that ensure safety, reliability, and efficiency in diverse environments – from industrial plants and data centers to people’s homes. We deliver future-ready technologies, advanced engineering capabilities and local expertise backed by global standards. Our offering includes a leading portfolio from our trusted brands: Raychem, Tracer, Nuheat and Pyrotenax.
We're looking for a talented Embedded Software Developer to join our team!
We are a global leader creating new industrial and commercial embedded products at our Edmonton R&D centre.
Your contributions will power next-generation embedded solutions for global markets.
With significant investment in digital transformation, this is an exciting time to join us.
WHAT YOU WILL DO:
- Research and Development: Create new products for global markets
- Agile collaboration: Work in a dynamic Agile team delivering cutting-edge solutions.
- Embedded Software Development: Under the guidance of senior embedded firmware developers:
- Refine requirements with Product Management
- Implement firmware for microcontrollers, primarily in Rust (C/C++ experience welcome), including async programming and no_std.
- Debug and troubleshoot firmware-hardware interactions using tools like IDE’s, oscilloscopes, logic analyzers, JTAG, and GDB.
- Participate in peer review of code for adherence to best practices, bug detection and quality improvement
- Testing of code through unit tests, automated test systems and manual testing
- Collaborate using GitLab, Jira, and Teams in a Windows or Linux environment (in our Edmonton office four days/week, hybrid one day/week)
YOU HAVE:
- Bachelor’s degree in Electrical Engineering, Computer Engineering, Software Engineering, Computer Science, or equivalent experience
- 2+ years of work experience developing and debugging embedded software or firmware in Rust, or C/C++ and a willingness to learn Rust.
- Attributes: Motivated, quick learner, able to work independently with direction
- Bonus Skills:
- Git proficiency
- Python or similar scripting
- Linux development, kernel programming, U-Boot
- Reading datasheets and schematics
- Electronic troubleshooting with JTAG, oscilloscopes, etc.
- Multi-threaded programming
- Communication protocols (RS-232, RS-485, IP, Modbus, CAN bus)
- Bare-metal and board bring-up
- RTOS (FreeRTOS), ARM, ESP32
- Object-oriented design and patterns
- Technical documentation skills
- Strong communication and collaboration