Senior Embedded Software Engineer

Posted 6 Days Ago
Be an Early Applicant
Hiring Remotely in Toronto, ON, CAN
In-Office or Remote
Senior level
Information Technology • Software • Consulting
From microns to Mars, we measure what matters for the future.
The Role
Design, implement, verify, and maintain safety-related embedded C/C++ firmware for vehicle control ECUs. Responsibilities include real-time software, CAN and J1939 communications, diagnostics, I/O control, hardware-in-the-loop testing, CI/CD automation, embedded Linux connectivity, formal requirements traceability, code reviews, and field commissioning. The role requires extensive microcontroller, hardware debugging, safety coding standards, and vehicle network experience.
Summary Generated by Built In
The Company:

Hexagon is a global leader in digital reality solutions, combining sensor, software, and autonomous technologies. We are putting data to work to boost efficiency, productivity, quality, and safety across industrial, manufacturing, infrastructure, public sector, and mobility applications.

Our technologies are shaping the production and people-related ecosystems to become increasingly connected and autonomous — ensuring a scalable, sustainable future.

Hexagon’s Mining division solves surface and underground mine challenges with proven technologies for planning, operations, and safety.

Hexagon (Nasdaq Stockholm: HEXA B) has approximately 24,000 employees in 50 countries and net sales of approximately 5.5bn USD. Learn more at hexagon.com and follow us @HexagonAB.

Purpose of Position:

As a Senior Embedded Software Engineer you will design, develop, verify and maintain the safety-related firmware at the heart of our Vehicle Control Platform.
This is a hands-on engineering role; you will own microcontroller code from design through implementation, meeting formal requirements while optimising system performance.
You will join a senior, multi-disciplinary platform team and work day -to -day alongside hardware and electrical engineers, system architects, functional safety engineers, application software teams and product management.

Major Areas of Responsibility:

Firmware Design and Implementation

  • Design, implement, debug and maintain embedded C (and C++ where appropriate) firmware for safetyrelated vehicle control ECUs, from requirement through to released, verified software.
  • Implement and maintain vehicle communication interfaces — CAN 2.0A/B, J1939 and other higher-layer CAN protocols, and serial links — against formally controlled interface specifications.
  • Develop I/O and actuation software: digital and analogue inputs, PWM and proportional outputs, sensor signal conditioning, scaling, calibration and plausibility checking.
  • Implement diagnostics, fault detection and fail-safe behaviour: watchdogs and monitors, fault classification, and transitions into clearly defined safe states.
  • Contribute to migrating and modernising an existing production firmware platform onto current hardware.

Safety, Quality and Traceability

  • Develop against decomposed, traceable requirements and maintain bidirectional traceability from requirement to design, code and verification evidence.
  • Author and maintain design documentation, interface specifications and verification records.
  • Perform and participate in rigorous peer design and code reviews, and help raise the team’s engineering standards.

Verification, Tooling and Automation

  • Build and maintain automated test capability: embedded unit and integration tests, and hardware-inthe-loop test rigs.
  • Extend continuous integration and delivery pipelines for embedded builds, static analysis, automated test execution, versioning and release artefact packaging.
  • Work with Linux-based coprocessors and services used for data logging, connectivity, remote diagnostics and observability.
  • Support bench, vehicle and field commissioning; investigate and root-cause issues found in integration testing.
Knowledge and Experience - Required:
  • Bachelor’s or Master’s degree in Electrical or Electronic Engineering, Computer Engineering, Mechatronics, Computer Science or a closely related discipline; or equivalent demonstrable experience.
  • 10+ years of professional embedded software development, including at least two (2) years delivering production firmware on 32-bit microcontrollers.
  • Embedded C: Expert-level embedded C, with working proficiency in C++. Deep comfort with fixed-point and bounded-resource programming, and with codebases where dynamic memory allocation is prohibited.
  • Real-time software: Bare-metal and/or RTOS development — interrupt handling and priority design, scheduling, cyclic task structure, timing and latency analysis, and multicore considerations.
  • Hardware fluency: Able to read hardware schematics, MCU datasheets and reference manuals and derive correct peripheral, driver and I/O configuration from them.
  • Vehicle networks: Hands-on CAN experience — CAN 2.0A/B plus J1939 or a comparable higher-layer protocol; defining and maintaining message sets and signal databases; bus analysis and fault-finding with standard CAN tooling.
  • On-target debugging: Practical use of debug probes, oscilloscopes, logic analysers and bus loggers to diagnose faults on real hardware.
  • Coding standards: Experience developing to an enforced coding standard such as MISRA, with static analysis in the development loop.
  • Development environment: Comfortable in Linux development environments, with Git-based workflows, code review culture and CI/CD pipelines.
  • Experience with TCP/IP networking and embedded Linux device-to-cloud connectivity on Arm-based processors.
Knowledge and Experience - Desired:
  • Multicore automotive-grade microcontroller families, and commercial safety-certified ECU platforms supplied with a vendor BIOS/HAL and configuration tooling.
  • Containerised build environments and self-hosted CI runners for embedded builds and automated hardware test.
  • Custom embedded Linux distribution builds with the Yocto or Buildroot — BSP and layer maintenance, kernel and device-tree configuration.
  • Requirements management tooling, and Jira / Confluence or equivalent.
  • Requirements discipline: Experience working to formal, traceable requirements and interface control documents.
  • Scripting and automation: Python and shell scripting for test automation, tooling and data analysis.
Travel:
  • 10% or less travel

Join Hexagon Mining: Become a key member of a team that is dedicated to precision, adaptability, and innovation. Take the next step in your career with a company that values the contributions of its diverse workforce and fosters an environment of growth and learning.

How to Apply: To apply for the position, please submit your resume and a cover letter explaining your relevant experience and your suitability for this role at Hexagon Mining.

Hexagon is an equal opportunity employer committed to diversity in the workplace. All qualified applicants will be considered regardless of race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status.

Skills Required

  • Bachelor’s or Master’s degree in Electrical Engineering, Electronic Engineering, Computer Engineering, Mechatronics, Computer Science, a related discipline, or equivalent demonstrable experience.
  • 10 or more years of professional embedded software development experience.
  • At least 2 years delivering production firmware on 32-bit microcontrollers.
  • Expert-level embedded C and working proficiency in C++.
  • Experience with fixed-point, bounded-resource programming and codebases where dynamic memory allocation is prohibited.
  • Bare-metal and/or RTOS development experience, including interrupt handling, priority design, scheduling, timing and latency analysis, and multicore considerations.
  • Ability to read hardware schematics, MCU datasheets, and reference manuals and configure peripherals, drivers, and I/O.
  • Hands-on CAN 2.0A/B and J1939 or comparable higher-layer vehicle network protocol experience.
  • Experience defining message sets and signal databases and troubleshooting vehicle networks with CAN tooling.
  • Practical experience using debug probes, oscilloscopes, logic analyzers, and bus loggers on real hardware.
  • Experience developing to enforced coding standards such as MISRA and using static analysis.
  • Comfort with Linux development environments, Git workflows, code reviews, and CI/CD pipelines.
  • Experience with TCP/IP networking and embedded Linux device-to-cloud connectivity on Arm-based processors.
  • Experience with multicore automotive-grade microcontrollers and commercial safety-certified ECU platforms.
  • Experience with containerized build environments and self-hosted CI runners for embedded builds and hardware testing.
  • Experience building custom embedded Linux distributions with Yocto or Buildroot, including BSP, layers, kernel, and device-tree configuration.
  • Experience with requirements management tools such as Jira, Confluence, or equivalent.
  • Experience working with formal traceable requirements and interface control documents.
  • Python and shell scripting experience for test automation, tooling, and data analysis.
Am I A Good Fit?
beta
Get Personalized Job Insights.
Our AI-powered fit analysis compares your resume with a job listing so you know if your skills & experience align.

The Company
HQ: Stockholm
778 Employees
Year Founded: 1992

What We Do

At Hexagon, we don’t just measure the world – we define its future. As the global leader in measurement technologies, we provide the confidence that vital industries rely on to build, navigate, and innovate. From microns to Mars, our solutions drive productivity, quality, safety, and sustainability across aerospace, agriculture, automotive, construction, manufacturing, and mining. We bridge the physical and digital worlds with cutting-edge metrology, reality capture, and positioning solutions – making industries and cities safer, smarter, and more sustainable. Measurement is the foundation of progress. When it has to be right, it has to be Hexagon.

Similar Jobs

In-Office or Remote
6 Locations
402 Employees
168K-204K Annually

Oshkosh Corporation Logo Oshkosh Corporation

Senior Software Engineer

Artificial Intelligence • Automotive • Computer Vision • Machine Learning • Agriculture • Defense • Manufacturing
In-Office or Remote
7 Locations
15000 Employees
79K-127K Annually
In-Office or Remote
2 Locations
877 Employees
115K-149K Annually

Ethernovia Logo Ethernovia

Firmware Engineer

Industrial • Manufacturing
Remote
Canada
65 Employees
175K-240K Annually

Similar Companies Hiring

Onshore Thumbnail
Artificial Intelligence • Fintech • Software • Financial Services
New York, New York
60 Employees
Revel Thumbnail
Aerospace • Hardware • Robotics • Software
Marina Del Rey, California
60 Employees
Blee Thumbnail
Artificial Intelligence • Marketing Tech • Software
New York, New York
30 Employees

Sign up now Access later

Create Free Account

Please log in or sign up to report this job.

Create Free Account