Skip to content

Senior Software Engineer - Rendering Infrastructure

    • Markham, Ontario
  • 668tp

Job description

Huawei Canada has an immediate permanent opening for a Senior Software Engineer.


About the team:

The Computing Data Application Acceleration Lab aims to create a leading global data analytics platform organized into three specialized teams using innovative programming technologies. This team focuses on full-stack innovations, including software-hardware co-design and optimizing data efficiency at both the storage and runtime layers. This team also develops next-generation GPU architecture for gaming, cloud rendering, VR/AR, and Metaverse applications.

One of the goals of this lab are to enhance algorithm performance and training efficiency across industries, fostering long-term competitiveness.


About the job:

  • As a key member of the team, you will work to push the performance boundary of our rendering infrastructure. 
  • You will be contributing to design and implement some software components of Huawei cloud rendering service, such as GPU virtualization, task scheduling, frame buffer capture and streaming. 
  • Together with the team, you will deliver high quality and low latency graphics user experience in the areas of cloud gaming, wireless AR/VR/XR, rendering farm, digital twin, and Metaverse.

Job requirements

About the ideal candidate:

  • Excellent C/C++ programming skills; Expert skill of multi-threading and parallel programming.
  • Good knowledge of Linux kernel, cache, memory management, and low level device driver; Windows D3D11/12, WDDM driver development and X server experience is an asset.
  • Excellent GPU performance tuning skills. Experience of profiling, debugging, pipeline optimization and H/W debugging tools.
  • Sound knowledge of graphics rendering pipeline (rasterization and ray-tracing); GPU virtualization, hypervisor (Qemu/KVM/VirtualBox/Xen) and parallel rendering experience is an asset.
  • Experience of shader language, Vulkan GPU memory management; JIT, LLVM compiler, assembly language knowledge is an asset.
  • Knowledge of ARM and x86 CPU architecture.
  • Linux X window capture and video encoding/streaming experience is an asset.
  • Excellent communication skills and self-motivated with strong commitment to project timeline.
#LI-SZ2

or