Senior Embedded Software Engineer

Ottawa, ON, CA, Canada

Job Description

Summary: We are seeking a highly skilled Embedded Linux Software Engineer with hands-on experience in low-level Linux development, hardware bring-up, and driver/kernel module development. The ideal candidate will possess strong expertise in Linux kernel internals, device drivers, and hardware-software integration for ARM-based SoCs, particularly in complex embedded environments. Key Responsibilities: o Develop embedded software in Linux and U-Boot for custom hardware platforms. o Perform board bring-up for new hardware prototypes. o Interface with hardware using I2C, SPI, UART, CAN, IC Bus, PCIe, NVMe, NOR Flash, DDR, EEPROM, GPIO, and USB. o Configure and manage Linux kernel, root filesystem (RootFS), device trees, and systemd. o Design and implement Linux kernel modules and device drivers. o Work with Yocto build systems, manage builds using GitLab. o Write applications and scripts using C, C++, Go, Python, and Bash scripting. o Apply knowledge of multi-threading and inter-process communication (IPC) for system performance and reliability. o Collaborate with system architects to design complex embedded systems and write detailed technical documentation and specifications. Mandatory Skills: o Proven experience in embedded Linux development (U-Boot, kernel, drivers) o Proficiency in C/C++, Go, Python, and Linux shell scripting o Strong hands-on experience in board bring-up and debugging o Expertise in interfacing with various hardware peripherals and buses o Linux system configuration, including kernel, RootFS, device tree, systemd o Experience in writing new Linux kernel modules and drivers o Familiarity with build systems (Yocto) and Git-based workflows o Solid understanding of multi-threaded application development and IPC o System-level design and technical specification writing Preferred Skills: o Experience with ARM-based SoCs o Knowledge of TCP/IP networking protocols o Experience with REST and gRPC APIs o Familiarity with containers (e.g., Docker) Other Requirements: o Strong English communication skills (written and verbal) o Ability to work independently and in cross-functional teams o Aerospace or safety-critical development experience is a plus .

Job Type: Fixed term contract
Contract length: 12 months

Pay: $30.00-$35.00 per hour

Ability to commute/relocate:

Ottawa, ON: reliably commute or plan to relocate before starting work (required)
Application question(s):

Do you have an Active LinkedIn ID?
Experience:

Linux: 6 years (required) USB: 1 year (preferred)
Language:

* English (required)

Beware of fraud agents! do not pay money to get a job

MNCJobz.com will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Related Jobs

Job Detail

  • Job Id
    JD2458117
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    Not mentioned
  • Employment Status
    Permanent
  • Job Location
    Ottawa, ON, CA, Canada
  • Education
    Not mentioned