Software Engineer - Dataflow Kernel Development – S006000

Location: Campbell, CA, USA

Job Type: Full Time Employee

Career Level: Experienced

 

Wave Computing is seeking a Software Engineer to develop software agents, which encompass the kernel and data movement library elements which are executed by our Dataflow Computers for Deep Learning Acceleration. Collaborating with the technical and management teams, you’ll be deeply involved in the development, testing, and release of these libraries.

 

Primary Responsibilities

In this role, you’ll understand the architecture of Wave’s Dataflow Processing Unit custom chip and the overall system architecture. You’ll be responsible for crafting agents for key elements of Wave’s dataflow architecture, which are dynamically linked together to form an entire dataflow graph executed by the hardware.

 

Required Skills and Experiences

  • C/C++, including compile, linking, libraries and tools
  • Software engineering (design, implementation, testing, and documentation)
  • Performance analysis and optimization of software
  • Numerical Linear Algebra (matrix algebra, convolution, numerical analysis/rounding errors)
  • Parallel computing (OpenMP, MPI)
  • A master’s or PhD or equivalent previous experience

 

Desired Skills

  • Experience with machine learning and data flow graphs