Senior Embedded Software Engineer @Hexagon Mining
Software Development
Salary unspecified
Remote Location
Employment Type full-time
Posted 3wks ago

[Hiring] Senior Embedded Software Engineer @Hexagon Mining

3wks ago - Hexagon Mining is hiring a remote Senior Embedded Software Engineer. 💸 Salary: unspecified 📍Location: Canada

Role Description

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 safety-related 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-in-the-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.

Qualifications

  • 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.

Requirements

  • 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.
  • Bare-metal and/or RTOS development — interrupt handling and priority design, scheduling, cyclic task structure, timing and latency analysis, and multicore considerations.
  • Able to read hardware schematics, MCU datasheets and reference manuals and derive correct peripheral, driver and I/O configuration from them.
  • 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.
  • Practical use of debug probes, oscilloscopes, logic analysers and bus loggers to diagnose faults on real hardware.
  • Experience developing to an enforced coding standard such as MISRA, with static analysis in the development loop.
  • 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.
  • Experience working to formal, traceable requirements and interface control documents.
  • Python and shell scripting for test automation, tooling and data analysis.

Travel

  • 10% or less travel

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.

Company Description

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.

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.

Before You Apply
️
remote Be aware of the location restriction for this remote position: Canada
‼ Beware of scams! When applying for jobs, you should NEVER have to pay anything. Learn more.
Senior Embedded Software Engineer @Hexagon Mining
Software Development
Salary unspecified
Remote Location
Employment Type full-time
Posted 3wks ago
Apply for this position
Did not apply ✓
Applied ✓
Sent Follow-Up ✓
Interview Scheduled ✓
Interview Completed ✓
Offer Accepted ✓
Offer Declined ✓
Application Denied ✓
Unlock 135,000+ Remote Jobs
️
remote Be aware of the location restriction for this remote position: Canada
‼ Beware of scams! When applying for jobs, you should NEVER have to pay anything. Learn more.
Apply for this position
Did not apply ✓
Applied ✓
Sent Follow-Up ✓
Interview Scheduled ✓
Interview Completed ✓
Offer Accepted ✓
Offer Declined ✓
Application Denied ✓
Unlock 135,000+ Remote Jobs
×
Apply to the best remote jobs
before everyone else

Access 135,000+ vetted remote jobs and get daily alerts.

4.9 ★★★★★ from 500+ reviews

⚡ 136,320+ remote jobs, refreshed hourly

🔔 Real-time alerts: Apply first, direct to employer

🛡️ Vetted companies, no scams, true remote only

Unlock All Jobs Now

Maybe later