Job Title: Senior Embedded Firmware Developer
Company Name: Iris Dynamics, Ltd.
Location: 3948 Quadra St, Victoria BC, V8X1J6.
About Iris Dynamics:
Iris Dynamics is the industry leader in innovative force-controlled magnetic linear motors with a diverse application across sectors such as aerospace, mining, testing and measurement, industrial automation, and VR simulation and entertainment. At Iris Dynamics, we're not just engineers and innovators; we are pioneers crafting the future of motion technology.
Job Description:
We are looking for a Senior Embedded Firmware Developer to join our team in Victoria, BC Canada to support our ORCA Motor and Accessory lines.
ORCA Motors are linear tubular motor systems including magnetics, power drivers, sensor arrays, and control logic/feedback. Our motors break from traditional systems by tightly integrating all system level components into a single package. This allows for low latency control loops and high bandwidth control over the forces and positions of the device in a way that can be highly transparent to customers and more simple to install and maintain than incumbents. This allows our customers to focus on higher level problems while fully leveraging the advantages of linear tubular geometries.
Our products leverage ARM Cortex M, Zynq7000, AVR, and other technologies to perform the on-board sensing and control, as well as calibration and diagnostics. This job position is primarily working with our other engineers to drive our product performance, maintainability, and robustness forward..
Other activities include mentoring junior and intermediate engineers, working with leadership to roadmap features, contributing to and peer reviewing software and SDK development, and building and maintaining adjacent stacks like firmware update servers / services, etc.
Key Responsibilities:
Design, develop, and maintain embedded firmware for ORCA motor and accessory products, supporting high-performance sensing, control, calibration, and diagnostics
Implement and optimize real-time control loops for force and position control on tightly integrated linear tubular motor systems
Work across ARM Cortex-M, Zynq-7000, AVR, and related platforms, selecting appropriate architectures and tools for performance, robustness, and maintainability
Collaborate closely with electrical, mechanical, and systems engineers to deliver tightly integrated hardware–software solutions
Drive improvements in firmware quality, reliability, testability, and long-term maintainability across product lines
Contribute to system-level design decisions, including bootloaders, firmware update mechanisms, diagnostics, and fault handling
Develop and maintain supporting infrastructure such as firmware update services, internal tools, and adjacent software stacks
Participate in software and SDK development, including API design, documentation, and peer code reviews
Mentor and support junior and intermediate engineers through technical guidance, code reviews, and design discussions
Work with product and engineering leadership to roadmap features, prioritize technical initiatives, and align firmware development with business goals
Support production, bring-up, and field issues as needed, contributing to root-cause analysis and long-term corrective actions
Qualifications:
Candidates must be living in the Greater Victoria area and able to commute to the company office.
Bachelor’s degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field (or equivalent practical experience)
7+ years of experience developing embedded firmware for production systems
Strong proficiency in C and C++ for embedded, real-time applications
Experience working with real-time control systems, including sensor feedback, control loops, and timing-critical code
Hands-on experience with ARM Cortex-M microcontrollers and embedded Linux–capable SoCs (e.g., Zynq-7000 or similar)
Familiarity with bare-metal and RTOS-based systems, including task scheduling, interrupts, and low-level hardware interfaces
Experience bringing up new hardware, including working with schematics, datasheets, and test equipment (oscilloscopes, logic analyzers, etc.)
Solid understanding of embedded communications and peripherals (e.g., SPI, I²C, UART, ADCs, PWM, Ethernet)
Experience designing firmware architectures with a focus on robustness, testability, and long-term maintainability
Comfortable working in a collaborative engineering environment, including code reviews, design reviews, and cross-disciplinary problem solving
Experience mentoring other engineers or providing technical leadership on projects
Nice to Have
Experience with motor control, motion control, or power electronics
Familiarity with calibration workflows, diagnostics, and field-updatable firmware
Experience building or maintaining firmware update systems or device management services
Exposure to industrial or automation systems and their reliability requirements
Experience contributing to SDKs, developer tools, or customer-facing APIs
Work Hours:
Monday to Friday 35 hours a week
Salary Range:
$80k - $120k / year depending on experience plus performance-based bonus
Benefits:
Competitive benefits package including health insurance, paid time off, and professional development opportunities.
Application Process:
Interested candidates should submit a resume and a cover letter outlining their suitability for the role to careers@irisdynamics.com. Please include Senior Embedded Firmware Developer in the subject line.
We are unable to sponsor foreign applicants and are therefore only accepting applications from candidates who are already legally able to work in Canada.
Application Deadline:
Feb 1, 2025
Anticipated Start Date:
February 16, 2026
Job Types: Full-time, Permanent
Pay: $80,000.00-$120,000.00 per year
Benefits:
Casual dress
Company events
Dental care
Discounted or free food
Extended health care
Flexible schedule
On-site parking
Paid time off
Location:
Victoria, BC V8X 1J6 (required)
Work Location: In person