1

C Linux Developer Jobs in Ontario (NOW HIRING)

C/C++ application development for embedded Linux systems. * POSIX programming including threads, sockets, timers, IPC, file I/O, and memory management. * Python and shell scripting for automation ...

Software Developer (C/C++)

Ottawa, ON · On-site

CA$117K - CA$143K/yr

Proficiency with Linux development and debugging tools (GDB, GCC, Valgrind...) is a plus ... engineering teams and product development groups. Our team culture emphasizes continuous learning ...

Proficiency with Linux development and debugging tools (GDB, GCC, Valgrind...) is a plus ... engineering teams and product development groups. Our team culture emphasizes continuous learning ...

C++ Developer

Ottawa, ON

CA$50 - CA$62.25/hr

C++ Developer We are seeking a highly skilled and experienced C++ Developer. In this role, you ... Design, develop, test, and maintain C++ applications within a Linux environment, with a focus on ...

... C++, Python, and other relevant programming languages. * Strong experience in development for Embedded Linux distributions; including kernel development * Knowledge of telematics systems and data ...

Build Developer

Kanata, ON

CA$90K - CA$110K/yr

... C++ build systems in Linux-based development environments. What you'll do * Design, develop, and ... Implement DevOps best practices for source control, configuration management, code review, and ...

next page

Showing results 1-20

C Linux Developer information

What is the difference between C Linux Developer vs C Embedded Developer?

AspectC Linux DeveloperC Embedded Developer
Required CredentialsBachelor's in Computer Science or related, Linux certifications beneficialBachelor's in Electrical/Computer Engineering, embedded systems certifications helpful
Work EnvironmentDeveloping on Linux OS, often in software companies or tech firmsWorking on hardware, microcontrollers, often in manufacturing or IoT sectors
Industry UsageIT, software development, open-source projectsConsumer electronics, automotive, IoT devices
Common Search/ComparisonYesYes

The main difference between a C Linux Developer and a C Embedded Developer lies in their work environment and focus. C Linux Developers primarily work on software applications running on Linux systems, while C Embedded Developers focus on programming microcontrollers and embedded hardware. Both roles require knowledge of C programming, but their applications and industries differ significantly.

What are some common challenges faced by C Linux Developers when working on large-scale systems?

C Linux Developers often encounter challenges such as managing system resources efficiently, debugging complex multi-threaded applications, and ensuring compatibility across different Linux distributions. Working on large-scale systems requires careful attention to performance bottlenecks and memory leaks, as well as thorough testing to maintain stability. Collaboration with other developers and system administrators is crucial, as many projects involve cross-functional teams and integration with various hardware or software components.

What is a C Linux Developer?

A C Linux Developer is a software engineer who specializes in writing applications and system-level programs in the C programming language for the Linux operating system. Their work often involves developing or maintaining software that interacts closely with the Linux kernel, writing drivers, or building performance-critical applications. They need a strong understanding of operating system concepts, low-level programming, and familiarity with Linux development tools and environments. These developers play a key role in open-source projects, embedded systems, and server-side applications.

What are the key skills and qualifications needed to thrive as a C Linux Developer, and why are they important?

To thrive as a C Linux Developer, you need strong proficiency in C programming, a deep understanding of Linux operating systems, and experience with system-level development, typically supported by a degree in computer science or related fields. Familiarity with GNU toolchain, version control systems like Git, and debugging tools such as GDB is commonly required. Analytical thinking, problem-solving abilities, and effective collaboration are crucial soft skills for success in this role. These competencies are essential for building robust, efficient software that integrates seamlessly with Linux systems and for working effectively within development teams.
What cities in Ontario are hiring for C Linux Developer jobs? Cities in Ontario with the most C Linux Developer job openings:
Infographic showing various C Linux Developer job openings in Ontario as of July 2026, with employment types broken down into 1% As Needed, 87% Full Time, 9% Part Time, and 3% Contract. Highlights an 92% Physical, 3% Hybrid, and 5% Remote job distribution.

Senior Embedded Linux Engineer

SOCOMEC

Brampton, ON

Full-time

Posted 6 hours ago


Job description

Socomec Group (Socomec) is a global leader in electrical equipment engineering and manufacturing, specialized in low voltage energy performance.
Socomec North America (NAM) is Socomec's organization overseeing all operations in North America.

About This Role

We are looking for a Senior Embedded Linux Engineer to work on software development for industrial high-power conversion and power-management systems based on ARM System-on-Module technology. The engineer will design and implement production-grade embedded Linux services for industrial communication, field I/O supervision, local alarm/event handling, internal maintenance web access, device diagnostics, firmware update, and handover to manufacturing/service teams. The products supported by this role are used in high-power electrical environments where redundancy, reliability, serviceability, controlled recovery, and fault-tolerant operation are core design expectations.

The ideal candidate has already shipped or brought up at least one embedded Linux product and is comfortable working close to hardware. The role requires independent execution of embedded software architecture, implementation, debugging, test strategy, validation support, and documentation.

Key Responsibilities And Accountabilities

  • Design and develop robust embedded Linux applications and background services for industrial monitoring, control, diagnostics, communication, and data management on ARM-based platforms, ensuring reliable operation, maintainability, and production readiness.
  • Support Linux platform customization, BSP integration, image generation, peripheral enablement, boot configuration, and board bring-up activities using Yocto/OpenEmbedded, vendor SDKs, or Torizon-based development environments.
  • Develop and maintain reliable industrial communication services using Modbus RTU, Modbus TCP, RS485, UART, Ethernet, and TCP/IP while ensuring fault tolerance, communication integrity, and seamless integration with external monitoring and control systems.
  • Develop and maintain a lightweight embedded web interface for local configuration, commissioning, diagnostics, alarm review, and service access, including secure authentication, REST APIs, and real-time system visibility.
  • Implement alarm management, event handling, historical logging, and fault reporting functions that support system visibility, traceability, service diagnostics, controlled recovery, and long-term operational stability.
  • Integrate software with digital and analog I/O, serial interfaces, watchdogs, RTCs, and other hardware peripherals while supporting system diagnostics, troubleshooting, validation, and manufacturing test activities.
  • Develop and support local operator interfaces using Qt/QML or equivalent technologies, ensuring seamless integration between display functions, system status, alarms, diagnostics, and configuration workflows.
  • Apply software engineering best practices including code reviews, testing, debugging, version control, documentation, and release management to deliver maintainable and production-quality embedded software. 

Essential Qualifications, Experience, And Skills

  • Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, Embedded Systems, Software Engineering, or related field.
  • Minimum 7 years of embedded Linux or industrial embedded software experience.
  • Experience bringing at least one embedded Linux product from prototype to field deployment, production test, or customer validation.
  • Experience with industrial, power, automation, monitoring, gateway, data-acquisition, or field-I/O products is strongly preferred.
  • Must be able to work independently with limited supervision and provide clear architecture notes, trade-off analysis, and handover material.
  • Embedded Linux development on ARM-based SoM platforms.
  • Yocto Project, OpenEmbedded, BitBake, vendor SDKs, and Torizon OS.
  • C/C++ application development for embedded Linux systems.
  • POSIX programming including threads, sockets, timers, IPC, file I/O, and memory management.
  • Python and shell scripting for automation, diagnostics, testing, and deployment.
  • Linux system architecture, systemd services, journald, watchdogs, users/groups, networking, and security fundamentals.
  • U-Boot, Linux kernel fundamentals, device tree, pinmux configuration, and board bring-up.
  • Industrial communication protocols including Modbus RTU, Modbus TCP, RS485, UART, Ethernet, and TCP/IP.
  • Serial communication debugging and protocol analysis using Wireshark, tcpdump, libmodbus, Modbus Poll, QModMaster, and related tools.
  • Development of lightweight embedded web interfaces and REST APIs.
  • HTML, CSS, JavaScript, WebSocket, Server-Sent Events, authentication, access control, and HTTPS/TLS implementation.
  • Hardware interfacing using GPIO, I2C, SPI, UART, USB, RTC, watchdogs, and nonvolatile storage.
  • Hardware/software debugging using oscilloscopes, logic analyzers, serial consoles, and protocol analyzers.
  • Ability to read schematics and support hardware bring-up and validation activities.
  • Qt/QML development for embedded Linux HMI applications.(optional)
  • TouchGFX experience for STM32-based or companion-MCU display solutions is an asset.(optional)
  • Integration of HMI applications with alarms, logs, diagnostics, configuration, and backend services.
  • Data logging, event logging, persistence, and power-loss-aware system design.
  • Secure software update and recovery mechanisms using RAUC, SWUpdate, Mender, OSTree, or similar frameworks.
  • Factory image generation, deployment automation, production support, and field recovery procedures.
  • Version control and development tools including Git, GCC/G++, CMake, GDB, Valgrind, clang-tidy, cppcheck, and CI/CD workflows.

Compensation: $110,000 to $130,000 CAD

Upon request, we will provide reasonable accommodation for disabilities to support participation of candidates in all aspects of the recruitment process. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex or national origin.

All applications are reviewed directly by the Socomec North America Talent Acquisition team and other human reviewers. No automated or AIbased systems are used to make decisions in the application review process.

We thank all those who apply. However, only those candidates selected for an interview will be contacted.

#LIZDG