Resume Score

Check how well your resume matches this job before you apply.

Sign in to check score

About the role

  • Senior Embedded Linux Engineer designing and implementing Linux services for industrial systems at Socomec. Working on industrial high-power conversion and power-management systems for reliability and fault tolerance.

Responsibilities

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

Requirements

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

Job type

Full Time

Experience level

Senior

Salary

CA$110,000 - CA$130,000 per year

Degree requirement

Bachelor's Degree

Tech skills

JavaScriptLinuxPythonQtShell ScriptingTCP/IP

Location requirements

HybridBramptonCanada

Report this job

Found something wrong with the page? Please let us know by submitting a report below.