Senior Embedded Software Engineer

Posted 1 day ago

This is a fully remote position, open to applicants in Canada.

📋 Description

• Design, develop, troubleshoot, and maintain embedded C and C++ firmware for safety-critical vehicle control ECUs.

• Create firmware from initial requirements to released and verified software.

• Implement and sustain vehicle communication interfaces, including CAN 2.0A/B, J1939, higher-layer CAN protocols, and serial links.

• Develop software for I/O and actuation involving digital and analog inputs, PWM and proportional outputs, sensor signal conditioning, scaling, calibration, and plausibility checks.

• Implement diagnostics, fault detection, and fail-safe mechanisms, including watchdogs, monitors, fault classification, and safe-state transitions.

• Assist in migrating and modernizing the production firmware platform to current hardware.

• Develop against decomposed, traceable requirements while ensuring bidirectional traceability.

• Author and maintain design documentation, interface specifications, and verification records.

• Participate in peer design and code reviews.

• Build and maintain automated unit tests, integration tests, and hardware-in-the-loop tests for embedded systems.

• Enhance CI/CD pipelines for embedded builds, static analysis, automated testing, versioning, and release artifact packaging.

• Collaborate with Linux-based coprocessors and services for data logging, connectivity, remote diagnostics, and observability.

• Provide support for bench, vehicle, and field commissioning while addressing integration-test issues.

• Work in collaboration with hardware and electrical engineers, system architects, functional safety engineers, application software teams, and product management.


⛳️ Requirements

• Bachelor’s or Master’s degree in Electrical or Electronic Engineering, Computer Engineering, Mechatronics, Computer Science, or a closely related field; or equivalent demonstrable experience.

• Over 10 years of professional experience in embedded software development.

• Minimum of 2 years of experience delivering production firmware on 32-bit microcontrollers.

• Expert-level knowledge of embedded C and proficient in C++.

• Experience with fixed-point and bounded-resource programming, as well as codebases where dynamic memory allocation is not permitted.

• Experience in bare-metal and/or RTOS development, including interrupt handling, priority design, scheduling, cyclic task structures, timing and latency analysis, and multicore considerations.

• Ability to read hardware schematics, MCU datasheets, and reference manuals to derive peripheral, driver, and I/O configurations.

• Hands-on experience with CAN, including CAN 2.0A/B and J1939 or similar higher-layer protocols.

• Experience in defining and maintaining message sets and signal databases.

• Proficiency in bus analysis and fault-finding using standard CAN tools.

• Practical experience with debug probes, oscilloscopes, logic analyzers, and bus loggers.

• Familiarity with enforced coding standards such as MISRA, along with static analysis experience.

• Comfortable working in Linux development environments, utilizing Git-based workflows, code reviews, and CI/CD pipelines.

• Experience with TCP/IP networking and embedded Linux device-to-cloud connectivity on Arm-based processors.

• Desired: experience with multicore automotive-grade microcontrollers and commercial safety-certified ECU platforms.

• Desired: knowledge of containerized build environments and self-hosted CI runners.

• Desired: experience with Yocto or Buildroot BSP/layer maintenance, kernel, and device-tree configuration.

• Desired: familiarity with requirements management tools and Jira / Confluence or equivalent.

• Desired: knowledge of formal, traceable requirements and interface control documents.

• Desired: proficiency in Python and shell scripting for test automation, tooling, and data analysis.

• Ability to submit a resume and cover letter.


🏝️ Benefits

• Remote work: ability to telecommute or work remotely 100% of the time.

• Travel requirements of 10% or less.

• An environment that promotes growth and learning.

• A diverse workforce and equal opportunity workplace.

People also viewed

NationsBenefits21 hours ago

Software Development Engineer II

US flagFlorida OnlyFull-timeFull-stack Engineer
ApplyView job
QAVION GROUP1 day ago

Senior Fullstack Engineer

US flagUnited States OnlyFull-timeFull-stack Engineer€80k – €150k/year
ApplyView job
Weflow | getweflow.com1 day ago

Senior Software Engineer – Principal

DE flagGermany OnlyFull-timeFull-stack Engineer€90k – €110k/year
ApplyView job
Travoom1 day ago

Principal Full Stack Engineer – Ticketing, Travel Commerce

US flagTexas OnlyFull-timeFull-stack Engineer
ApplyView job
RTX1 day ago

Principal Engineer, Software Engineering

US flagIowa OnlyFull-timeFull-stack Engineer$107.5k – $204.5k/year
ApplyView job
R1 RCM1 day ago

Product Engineer II

US flagUnited States OnlyFull-timeFull-stack Engineer$105k – $202.5k/year
ApplyView job

Never miss a great job!

Get handpicked remote jobs straight to your inbox weekly.

Trusted by 7,400+ designers