Senior/Staff Software Engineer, Edge AI - Toolchain

ENGINEERING Singapore, Singapore


Description

We are looking for Senior/Staff Software Engineers to grow our Edge AI & Systems software team to the next level. This team works within the larger ASIC team to architect and enhance Neural Network solutions in the Video Processor roadmap including these current and older products:
  • https://www.ovt.com/products/oax8000/
  • https://www.ovt.com/products/oax4600/
  • https://www.ovt.com/products/oa7100/
This position works in a smaller team that specifies, develops and delivers the toolchain that allows our customers and partners to develop or port AI models to run optimally on our Neural Processing Units.
 
Responsibilities:
  • Specify and develop new toolchain features for existing and new NPU architectures, working with the inference engine sub-team
  • Enhance, maintain and support existing toolchain features, and modify model network layers for NPU optimality, working with the application engineering teams and sometimes customers/partners.
  • Constantly improve productivity through automation in all areas
Skills:
  • Strong Python class based product development skills based on knowledge of design patterns
  • Strong understanding of all aspects of a compiler and related development and debugging technologies, code generation, program analysis, and pipeline optimizations
  • Good communication, collaboration, task estimation & reporting, CI/CD via tools such as Confluence, Git, JIRA etc.

Familiarity with the following is a plus:

  • Deep Learning compilers like TVM
  • Deep Learning framework - PyTorch
  • Eclipse development for toolchain frontend
  • CPU/DSP/GPU/NPU architectures
Requirements:
  • Ph.D./MS/BS in Computer Science or Computer Engineering
  • At least 5 years of commercial development experience of which at least 3 are in compiler-related areas