Embedded Software Developer
Chemelex Edmonton, Alberta, Canada
Appliances, Electrical, and Electronics Manufacturing · 5,001-10,000 employees
Applying here? Try the free cover letter tool — paste this posting and your résumé, no account needed.
About the role
The developer will implement firmware for microcontrollers using Rust and collaborate within an Agile team to create new industrial and commercial products. They are responsible for debugging hardware-firmware interactions and participating in peer code reviews to ensure quality.
What they look for
Requirements
Candidates must hold a bachelor's degree in a relevant engineering or computer science field and possess at least two years of experience in embedded software development. Proficiency in Rust or C/C++ is required, along with the ability to work independently in a collaborative office environment.
Full description
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
Similar roles
-
Senior Embedded Software Test Engineer
KRUSH Labs B.V. Eindhoven, North Brabant, Netherlands
-
Softwareentwickler (m/w/d) Embedded Software
Störk-Tronic Stuttgart, Baden-Württemberg, Germany
-
Software Engineering Intern - Embedded Software
Texas Instruments Oslo, Norway
-
Embedded Software Engineer, Body Controls
Ford Motor Company Dearborn, Michigan, United States · $68K–$193K/yr
-
Senior Technical Program Manager, Photonic Hardware & Embedded Systems
Keysight Technologies, Inc. Böblingen, Baden-Württemberg, Germany
-
Engineering Technical Lead - I&C Embedded Software
GE Vernova Wilmington, North Carolina, United States · $113K–$189K/yr