1

Embedded Software Engineer Jobs in Toronto, ON (NOW HIRING)

Senior Firmware Application Engineer

Toronto, ON · On-site

CA$110K - CA$152K/yr

Strong embedded software engineering skills with hands-on experience in C/C++ and Python scripting ... Strong analytical and debugging skills, with experience using industry-standard hardware and ...

Systems Engineer

Guelph, ON · On-site

CA$95K - CA$135K/yr

Structural engineering and dynamics * Embedded systems * Industrial control systems * Product ... Embedded Software Ownership: Own and maintain the embedded software, operating systems, network ...

Principal Software Engineer Location: Miami, Florida or Ontario, Canada Function: AI Engineering ... You will act as a technical authority and multiplier, shaping how AI is embedded into our platforms ...

Systems Engineer

Guelph, ON · On-site

CA$95K - CA$135K/yr

Structural engineering and dynamics * Embedded systems * Industrial control systems * Product ... Embedded Software Ownership: Own and maintain the embedded software, operating systems, network ...

Principal Software Engineer Location: Miami, Florida or Ontario, Canada Function: AI Engineering ... You will act as a technical authority and multiplier, shaping how AI is embedded into our platforms ...

Banyan Software is the best permanent home for software businesses that serve specialized ... The FDE will be temporarily embedded within delivery teams to directly drive the modernization of ...

Experienced building low-level software, drivers, embedded systems, or performance-critical ... Proficient with Linux systems programming and debugging tools such as gdb, strace, and perf.

Programming assignments may involve PC and/or PLC's, and the integration of various third-party ... embedded software development experience using C/C++; prior working experience with automotive ...

next page

Showing results 1-20

Embedded Software Engineer information

See Toronto, ON salary details

$57.7K

$107K

$162.7K

How much do embedded software engineer jobs pay per year?

As of Jun 9, 2026, the average yearly pay for embedded software engineer in Toronto, ON is $106,953.00, according to ZipRecruiter salary data. Most workers in this role earn between $85,890.00 and $120,246.00 per year, depending on experience, location, and employer.

What is the difference between Embedded Software Engineer vs Firmware Engineer?

AspectEmbedded Software EngineerFirmware Engineer
CredentialsBachelor's in Computer Engineering, Electrical Engineering, or related fields; often requires knowledge of C/C++Similar credentials; strong C/C++ skills, understanding of hardware
Work EnvironmentDevelops software for embedded systems in various industries like automotive, IoT, consumer electronicsFocuses on low-level hardware interaction, often working closely with hardware teams
Industry UsageCommon in automotive, medical devices, consumer electronics, industrial automationPrimarily in consumer electronics, IoT devices, and hardware startups

Embedded Software Engineers design and develop software for embedded systems, focusing on system-level programming. Firmware Engineers write low-level code that directly interacts with hardware components. While both roles require similar skills and work environments, Embedded Software Engineers often work on a broader range of software, whereas Firmware Engineers focus on hardware-specific code. Understanding these differences helps in choosing the right career path or job search focus.

What Is an Embedded Software Engineer?

Embedded software is installed on devices that operate like personal computers. Examples of embedded software can be found in geographic positioning systems, or GPS devices, smart watches, and calculators. Embedded software engineers perform a range of embedded software engineering functions, including running system software updates and designing software for embedded systems. Embedded software engineers also advise on product development, approve new product designs, and optimize the product lifecycle.

What are the key skills and qualifications needed to thrive as an Embedded Software Engineer, and why are they important?

To thrive as an Embedded Software Engineer, you need a solid background in computer science or electrical engineering, strong programming skills in C/C++, and experience with embedded systems design. Familiarity with real-time operating systems (RTOS), microcontroller architectures, debugging tools, and version control systems like Git is typically required. Excellent problem-solving abilities, attention to detail, and effective communication skills set top engineers apart. These competencies are crucial for building reliable, efficient, and safe embedded solutions that meet industry standards.

What are Embedded Software Engineers?

Embedded Software Engineers are professionals who design, develop, and maintain software that runs on embedded systems—specialized computing devices that are part of larger systems, such as cars, medical devices, industrial machines, and consumer electronics. Their work involves programming in languages like C or C++ to interact closely with hardware components, ensuring optimal performance, reliability, and safety. Embedded Software Engineers work closely with hardware engineers to integrate and test software with physical devices, often working within real-time and resource-constrained environments. Their expertise is crucial in developing the 'brains' of many devices we use every day.

How does an Embedded Software Engineer typically collaborate with hardware engineers during product development?

Embedded Software Engineers work closely with hardware engineers throughout the product development lifecycle. Collaboration often involves joint design reviews, debugging sessions, and integration testing to ensure software and hardware function seamlessly together. Effective communication is crucial, as changes in hardware can impact software functionality and vice versa. This cross-disciplinary teamwork helps resolve technical issues quickly and ensures the end product meets performance and reliability standards.
What are the most commonly searched types of Embedded Software Engineer jobs in Toronto, ON? The most popular types of Embedded Software Engineer jobs in Toronto, ON are:
What job categories do people searching Embedded Software Engineer jobs in Toronto, ON look for? The top searched job categories for Embedded Software Engineer jobs in Toronto, ON are:
What cities near Toronto, ON are hiring for Embedded Software Engineer jobs? Cities near Toronto, ON with the most Embedded Software Engineer job openings:

Embedded Systems Validation & Integration Engineer

Finlink Group

Markham, ON • On-site

Full-time

Posted 12 days ago


Job description

Embedded Systems Validation & Integration Engineer
Are you passionate about building reliable, real-time embedded software that powers complex hardware systems in the real world? We’re looking for a hands-on Embedded Systems Validation & Integration Engineer to help design and deliver production-grade firmware for advanced energy, power electronics, and electromechanical platforms.This role is ideal for an engineer who enjoys solving challenging technical problems at the intersection of software and hardware. You’ll work on embedded control systems involving motors, pumps, battery systems, hydraulics, and power electronics, contributing directly to products that demand high reliability, performance, and scalability. Reporting to the Director of Software, you’ll play a key role in firmware architecture, hardware integration, system optimization, diagnostics, and continuous improvement initiatives across the development lifecycle.What You’ll Be DoingEmbedded Firmware Development
  • Design, develop, and maintain embedded firmware in C/C++ for real-time control applications.
  • Build scalable and maintainable firmware architectures for embedded platforms.
  • Develop RTOS-based applications with deterministic timing and robust task scheduling.
  • Create low-level drivers and middleware for microcontrollers, sensors, communication interfaces, and power electronics.
  • Design and tune closed-loop control systems for motors, pumps, hydraulics, converters, and battery-related systems.
  • Optimize firmware performance, memory usage, boot times, and overall responsiveness.
Hardware Integration & Bring-Up
  • Lead firmware bring-up activities for new hardware platforms.
  • Debug issues at the hardware/software interface using lab instrumentation and diagnostic tools.
  • Collaborate closely with hardware, systems, and validation teams during integration and testing.
  • Develop and maintain Board Support Packages (BSPs) and Hardware Abstraction Layers (HALs).
Reliability, Diagnostics & Product Quality
  • Build resilient firmware with strong fault detection and recovery mechanisms.
  • Implement telemetry logging, watchdog management, crash diagnostics, and recovery strategies.
  • Support OTA firmware update workflows and deployment validation.
  • Drive root-cause investigations and corrective actions for manufacturing and field issues.
  • Improve product reliability, uptime, and maintainability.
Engineering Excellence
  • Write clean, modular, and testable code following best practices and coding standards.
  • Participate in code reviews and contribute to continuous improvement initiatives.
  • Support automated testing, static analysis, and CI/CD workflow enhancements.
  • Contribute to firmware architecture decisions and long-term technical roadmaps.
  • Mentor junior developers and share technical knowledge across the team.
Debugging & Problem Solving
  • Diagnose complex embedded system issues using oscilloscopes, logic analyzers, debuggers, and telemetry tools.
  • Lead root-cause analysis for critical firmware and integration challenges.
  • Improve debugging efficiency, issue reproducibility, and resolution timelines.
Security & Compliance
  • Implement secure firmware design practices including secure boot and encrypted communications.
  • Support functional safety and compliance initiatives where applicable.
  • Participate in security reviews and vulnerability assessments.
Requirements:
  • Bachelor’s degree in Electrical Engineering, Computer Engineering, Computer Science, Mechatronics, or a related field.
  • 3+ years of embedded firmware/software development experience in production environments (including co-op experience).
  • Strong proficiency in C/C++ for embedded systems.
  • Experience working with RTOS platforms such as FreeRTOS, Zephyr, ThreadX, VxWorks, or similar.
  • Experience developing firmware for real-time and closed-loop control systems.
  • Strong understanding of:
    • Power electronics
    • Motor control systems
    • Battery systems
    • Hydraulics or pump control systems
    • Embedded communication protocols such as CAN, UART, SPI, I2C, Ethernet, and Modbus
  • Hands-on experience with embedded debugging tools and lab instrumentation.
  • Familiarity with Git-based workflows and CI/CD pipelines.
  • Strong troubleshooting and problem-solving skills.
Nice to Have
  • Experience with battery energy storage systems (BESS), EV charging, industrial automation, or power conversion systems.
  • Experience with OTA firmware deployment.
  • Familiarity with Linux-based embedded systems.
  • Exposure to functional safety standards and secure firmware architectures.
  • Experience with MATLAB/Simulink or control-system modeling.
  • Exposure to manufacturing diagnostics and production test systems.
  • Previous mentoring experience or technical leadership exposure is an asset.
Why ApplyYou’ll have the opportunity to work on technically challenging systems with real-world impact, alongside a collaborative engineering team focused on building reliable, high-performance embedded solutions. If you enjoy hands-on development, solving complex integration challenges, and continuously improving both products and processes, we’d love to hear from you.