Discover Technata Job board

Find your next tech job in Kanata North, Canada’s largest technology park. Then explore endless international opportunities and dream about where your career will take you. With the Country’s largest density of technology companies ranging from promising startups to leading global giants, Kanata North is the place to be if you are serious about a career in tech.

Co-op Engineer - Compiler

Huawei Technologies

Huawei Technologies

Markham, ON, Canada
Posted on Feb 6, 2026

Job description

Huawei Canada has an immediate co-op opening for an Engineer.

About the team:

The Heterogeneous Compiler Lab, led by esteemed technical experts with extensive industry and academic experience, publishes innovative research at leading conferences. Recognized as key contributors to the LLVM Compiler Infrastructure project, this lab excels in developing diversified IP compiler collaborations, focusing on AI, GPU, and CPU architectures. Our efforts include heterogeneous compilation technology and SW-HW co-design, optimizing for AI, graphics, games, and mobile applications while tackling technological challenges through open-source community.

About the job:

  • Design, develop, and test software to satisfy business requirements in a wide range of products, possibly including (but not limited to):

    • Compilers targeting next-generation mobile, network, or server hardware;

    • Language runtimes for new programming languages;

    • System-level optimization of deep learning frameworks;

    • Concurrent programming frameworks and distributed systems that can scale from embedded devices to cloud services.

  • Analyze and optimize software system performance.

  • Participate in scrums and project planning.

  • Learn and adopt new technologies; research, survey, and present industry trends to the team.

Job requirements

About the ideal candidate:

  • Currently enrolled in a university and registered with the school’s co-op program.

  • Proficiency programming in at least one of the following: C++, C, or Java.

  • Solid grasp of fundamental concepts related to system design, such as data structures, algorithms, and operating systems.

  • Experience working in Linux, or Unix-like development environment; proficiency in a Unix shell.

  • Major in Computer Science, Computer Engineering, or another relevant discipline.

or