Software Engineer, Staff - SIMD Kernels

d-MatrixSanta Clara, CA
1dHybrid

About The Position

At d-Matrix, we are focused on unleashing the potential of generative AI to power the transformation of technology. We are at the forefront of software and hardware innovation, pushing the boundaries of what is possible. Our culture is one of respect and collaboration. We value humility and believe in direct communication. Our team is inclusive, and our differing perspectives allow for better solutions. We are seeking individuals passionate about tackling challenges and are driven by execution. Ready to come find your playground? Together, we can help shape the endless possibilities of AI. The role requires you to be part of the team that helps productize the SW stack for our AI compute engine. As part of the Software team, you will be responsible for the development, enhancement, and maintenance of software kernels for next-generation AI hardware. You possess experience building software kernels for HW architectures. You possess a very strong understanding of various hardware architectures and how to map algorithms to the architecture. You understand how to map computational graphs generated by AI frameworks to the underlying architecture. You have had past experience working across all aspects of the full stack tool chain and understand the nuances of what it takes to optimize and trade-off various aspects of hardware-software co-design. You are able to build and scale software deliverables in a tight development window. You will work with a team of compiler experts to build out the compiler infrastructure working closely with other software (ML, Systems) and hardware (mixed signal, DSP, CPU) experts in the company.

Requirements

  • MS or PhD in computer engineering, math, physics, or a related degree with 7+ years of industry experience.
  • Strong grasp of computer architecture, data structures, system software, and machine learning fundamentals.
  • Proficient in C/C++ and Python development in Linux environment and using standard development tools.
  • Experience implementing algorithms in high-level languages such as C/C++ and Python.
  • Experience implementing algorithms for specialized hardware such as FPGAs, DSPs, GPUs, AI accelerators using libraries such as CUDA, etc.
  • Experience in implementing operators commonly used in ML workloads—GEMMs, Convolutions, BLAS, SIMD operators for operations like softmax, layer normalization, pooling, etc.
  • Experience with development for embedded SIMD vector processors such as Tensilica.
  • Self-motivated team player with a strong sense of ownership and leadership.

Nice To Haves

  • Prior startup, small team, or incubation experience.
  • Experience with ML frameworks such as TensorFlow and/or PyTorch.
  • Experience working with ML compilers and algorithms, such as MLIR, LLVM, TVM, Glow, etc.
  • Experience with a deep learning framework (such as PyTorch or TensorFlow) and ML models for CV, NLP, or recommendation.
  • Work experience at a cloud provider or AI compute/subsystem company.

Responsibilities

  • Development, enhancement, and maintenance of software kernels for next-generation AI hardware.
  • Map computational graphs generated by AI frameworks to the underlying architecture.
  • Optimize and trade-off various aspects of hardware-software co-design.
  • Build and scale software deliverables in a tight development window.
  • Work with a team of compiler experts to build out the compiler infrastructure working closely with other software (ML, Systems) and hardware (mixed signal, DSP, CPU) experts in the company.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service