Enable job alerts via email!

Senior Neural Network Kernel Software Development Engineer

Targeted Talent

Ottawa

On-site

CAD 100,000 - 140,000

Full time

2 days ago
Be an early applicant

Generate a tailored resume in minutes

Land an interview and earn more. Learn more

Start fresh or import an existing resume

Job summary

A leading technology firm is seeking a Senior Neural Network Kernel Software Development Engineer to optimize neural networks on custom hardware. This role requires deep knowledge of C++ and neural network algorithms, and offers a chance to work on innovative systems. Candidates will be part of agile teams and provide solutions to complex problems in a dynamic technical environment.

Benefits

Comprehensive health and extended health benefits
Unlimited sick leave
Stock options
Contribution to impactful chip and software technologies

Qualifications

  • Profound knowledge of modern C++, focusing on low-level compute optimizations.
  • Familiarity with Neural Network operator algorithms like Convolutions and RNNs.
  • Aptitude in high-level conceptual understanding and intricate technical details.

Responsibilities

  • Write kernels to accelerate Neural Network execution on custom hardware.
  • Design and execute adaptable C++ programs for neural net operations.
  • Develop computation strategies for multi-channel and multi-chip implementations.

Skills

C++
Problem Solving
Neural Network Algorithms
Python

Education

Degree in Computer Science, Engineering, Math, Physics or related field

Job description

Senior Neural Network Kernel Software Development Engineer

Our client is making substantial investments in software to enhance the seamless deployment of neural networks on their hardware, streamlining the experience for researchers and developers. The focus involves the optimization of various common neural networks for optimal performance on architectures, facilitated by the software optimization tool flow.

We are seeking software developers who are driven and naturally curious. The chosen candidate will contribute within agile teams, working closely with senior software engineers for mentorship. This role presents an opportunity to tackle novel challenges using cutting-edge technologies, as they build innovative systems from scratch.

As a key team member, you will specialize in constructing efficient implementations of practical neural net kernels tailored to their distinctive hardware architecture. Additionally, you will implement diverse computing algorithms, maximizing computation and communication throughput. This role involves developing a profound understanding of the architecture's intricacies, working collaboratively with the architects and compiler engineers.

Responsibilities :

  • Experience writing kernels to accelerate Neural Network execution on custom hardware accelerators (not on CPU's)
  • Design, prototype, and execute low-level, adaptable C++ programs (kernels) for various neural net operations.
  • Define, document, and communicate configuration APIs for these kernels to the compiler team.
  • Share performance optimization concepts with both compiler engineers and architects working on future product generations.
  • Develop comprehensive computation strategies spanning kernels for multichannel and multi-chip neural net implementations.

Requirements :

  • Degree in Computer Science, Engineering, Math, Physics, or related field (preferably MS or PhD).
  • Profound knowledge of modern C++, with a focus on code generation and low-level compute optimizations.
  • Familiarity with fundamental Neural Network operator algorithms - Convolutions, Transformers, RNNs.
  • Demonstrated capability to independently navigate challenging, well-defined problems.
  • Aptitude and interest in both high-level conceptual understanding and intricate technical details.
  • Enthusiasm for problem-solving within highly structured and restricted environments.

Preferred Skills and Experience :

  • Proficiency in Python.
  • Experience with other AI accelerator programming.
  • Strong mathematical aptitude.
  • Enjoyment of solving complex problems.

Our client offers :

  • Comprehensive health and extended health benefits.
  • Unlimited sick leave.
  • Stock options.
  • Contribution to revolutionizing chip and software technologies with global impact.
Create a job alert for this search

Software Development • Ottawa, ON, Canada

Get your free, confidential resume review.
or drag and drop a PDF, DOC, DOCX, ODT, or PAGES file up to 5MB.