Principal Software Engineer - Kernels

d Matrix
Santa Clara, CA, United States
2 months ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
7 years minimum
Compensation
$200,000.0 - $300,000.0
Working hours
Regular working hours
Job source

Tech stack

Artificial Intelligence Basic Linear Algebra Subprograms C++ (Programming Language) Compilers Nvidia CUDA Computer Engineering Data Structures Programming Tools Field-Programmable Gate Array (FPGA) Python (Programming Language) Linux System Administration Machine Learning
+8 more
Systems Development Life Cycle Tensorflow Software Construction System Software Graphics Processing Unit (GPU) Pytorch Deep Learning Hardware Acceleration

Job description

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 toolchain and understand the nuances of what it takes to optimize and trade off various aspects of hardware-software co-design. You can 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

Do you have experience in System development?, * MS in computer engineering, math, physics, or a related degree with 12+ years of industry experience or a 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 environments 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, and 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.

Preferred:

  • Prior startup, small team, or incubation experience.
  • Experience with ML frameworks such as TensorFlow and/orPyTorch.
  • 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.

About the company

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.

Location:

Hybrid, working onsite at our Santa Clara, CA, headquarters 3-5 days per week.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on indeed.com

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

3:15 min

Leveraging tensor cores for deep neural network execution

Paul Graham Paul Graham · LIVE

2:35 min

Preventing remote code execution in PyTorch models

Balázs Kiss · WWC 2023

1:51 min

Evolution of custom compilers and virtual machines

Florian Rappl · LIVE

1:39 min

Fundamentals of tensors and the TensorFlow library

Håkan Silfvernagel · LIVE

2:36 min

Exploring high-level Python frameworks for accelerated enterprise artificial intelligence

Paul Graham Paul Graham · LIVE

3:14 min

Structuring career paths and localized data architectures

Ulrich Wurstbauer +1 · LIVE

Videos

See all

Related articles

See all