About Averian:
Averian is an AI and custom solutions company building real-world systems deployed in mission-critical, production environments. We design and deliver advanced platforms and solutions that help enterprises build cutting-edge applications that improve quality, reliability, and operational efficiency. Our work goes beyond prototypes. Our software is used in live environments where accuracy, stability, and performance truly matter.
Working with global technology partners across North America and Europe, we operate as a focused, senior team where engineers and product leaders have meaningful ownership, direct access to customers, and a strong influence on technical and architectural decisions.
If you enjoy solving complex technical problems, working closely with real customers, and seeing your work deployed in production, we want to hear from you!
Averian offers a high-impact environment where your contributions genuinely matter.
Job Summary
We are seeking a highly skilled Embedded Software Developer to join our engineering team developing embedded and connected systems across automotive, industrial, IoT, and AI-enabled applications.
This role involves hands-on development of embedded firmware and software, architecture contribution, system integration, debugging, and collaboration across software, hardware, requirements, and validation teams. The ideal candidate combines strong low-level programming expertise with the ability to work effectively in large and complex codebases while contributing to high-quality, production-ready solutions.
You will work on technically challenging projects involving microcontrollers, RTOS, communication stacks, diagnostics, hardware integration, and system-level validation.
Key Responsibilities
- Design, develop, test, and maintain embedded firmware/software in C and C++
- Contribute to software architecture, technical design, and implementation decisions
- Integrate and troubleshoot communication protocols such as CAN, LIN, SPI, I2C, UART, Ethernet, BLE, and related interfaces
- Collaborate with hardware, system, requirements, and test teams to deliver robust and scalable solutions
- Participate in platform bring-up, debugging, performance tuning, and system integration activities
- Develop reliable and maintainable code using unit testing, static analysis, and automated validation practices
- Participate in code reviews, design reviews, and technical discussions
- Support development and maintenance of CI/CD pipelines, build systems, and automated test environments
- Investigate and resolve complex system-level and firmware-related issues
- Produce clear technical documentation and follow established development processes and standards
Qualifications & Experience
- Bachelor’s or Master’s degree in Electrical Engineering, Computer Engineering, Computer Science, or related field
- Minimum 7 years of experience in embedded software or firmware development
- Automotive industry experience is highly valued but not required
- Strong proficiency in C and C++ programming
- Experience working with microcontroller-based embedded systems and resource-constrained environments
- Strong understanding of Real-Time Operating Systems (RTOS) and/or bare-metal embedded development
- Experience working with communication protocols such as CAN, LIN, SPI, I2C, UART, Ethernet, BLE, or similar technologies
- Ability to understand, debug, and extend large existing software systems and codebases
- Strong debugging and troubleshooting skills using tools such as oscilloscopes, logic analyzers, JTAG debuggers, and protocol analyzers
- Experience with version control systems (Git), issue tracking tools, and CI/CD workflows
- Familiarity with automated testing, unit testing, integration testing, and hardware-in-the-loop validation
- Experience with bootloaders, firmware upgrade mechanisms, diagnostics and communication stacks is considered an asset
- Experience developing software for Linux-based embedded systems is a plus
- Experience in IoT, telecom, industrial automation, or AI-enabled systems is considered valuable
- Strong communication, collaboration, and problem-solving skills
Other Requirements
This role is 100% work from office. It is based in Ottawa, Ontario, Canada.
Relocation of candidates will not be considered or provided.
Why Join Us?
- Opportunity to lead and shape the engineering vision of next-gen solutions.
- Collaborative and fast-paced work environment.
- A chance to work on cutting-edge technology and make a real business impact.
- A chance to work with customers on the cutting edge of technology development and adoption
Pay: $100,000.00-$130,000.00 per year
Benefits:
- Casual dress
- Dental care
- Disability insurance
- Life insurance
- On-site parking
- Paid time off
- RRSP match
- Vision care
Ability to commute/relocate:
- Kanata, ON: reliably commute or plan to relocate before starting work (required)
Education:
- Bachelor's Degree (required)
Experience:
- C/C++ software development: 7 years (required)
Language:
Work Location: In person