Save Job
Posted 1y ago

Junior Software Developer - Real-time Operating System

@ Huawei
Ottawa, Ontario, Canada
OnsiteContract
Responsibilities:develop OS tooling, solve scheduling, allocate resources
Requirements Summary:Entry-level contract role for junior software developer focused on real-time OS; requires C/C++, embedded systems knowledge, CPU architecture, ability to research complex topics and communicate findings.
Technical Tools Mentioned:C, C++, Embedded Systems
Save
Mark Applied
Hide Job
Report & Hide
Job Description

Job description

Huawei Canada has an immediate contract opening for a Junior Software Developer.

About the team:

The Intelligent Real-Time Operating System Lab focuses on OS architecture, concurrency challenges, and optimal resource management for diverse use cases such as the compute required for AI/ML. This lab aims to innovate operating system designs for mixed-criticality environments that exceed traditional methods. The focus of this lab is to develop next-generation OS platform support to enable high performance, maximum concurrency and challenging resource management with ML/AI agents or services. Our goal is to ensure enhanced performance and reliability in increasingly complex environments that embedded devices at the edge presents.

About the job:

  • Exploring the real-time OS research or development targeting embedded devices, cloud & virtualized computing and automotive domain.

  • Contribute and help build the next-generation real-time OS technology to power a broad range of compute platforms.

  • Solve some very challenging problems around scheduling, resource allocation, isolation and IPC in very complex systems use cases.

  • Focus on developing tooling and solutions to performance challenges in the system.

Job requirements

About the ideal candidate:

  • Experience and expertise in the field of real-time operating system design, development and integration.

  • Experience in system software development (mainly C/C++).

  • CPU architecture knowledge for system software development.

  • Strong ability to research complex topics, distill knowledge into concrete designs and apply to new or existing projects.

  • Strong communication ability to document and present technical information and solutions effectively to both technical and non-technical audiences.