- B2B
- Scale StageRapidly increasing operations
Staff Software Engineer - Kernel
- Remote •
- Full Time
Not Available
About the job
We are looking for best in class engineers to join our existing top-notch team. When you join Untether AI, you will be part of a team that designs, develops and verifies the software that interacts with our chip, collaborating with our hardware engineers and with fellow software engineers in the process. By creating software that fully realizes the capabilities of the hardware, you will help get AI inference to the general populace.
As part of this exceptional team, you are able to - and get excited by - identifying functional/performance bottlenecks and how to alleviate them in order to achieve scalable and reliable software. You excel in an environment with complex software and hardware designs.
We are looking for an experienced Senior Kernel Engineer who can help build and optimize our SDK. Our tools and libraries unlock industry-leading performance and power efficiency on our unique at-memory AI inference chips. We enable customers to compile models directly to run on our architectures, and provide tools to analyze and optimize performance.
The kernel library is at the heart of our SDK, leveraging HW features for fast computations, dividing work flexibly amongst parallel computation elements, as well as providing highly configurable data-flow options for all of our kernels.
The successful candidate will build a deep understanding of the capabilities and limitations of the architecture, and of how features of the kernel library enable performant push-button compilations.
Responsibilities
- Efficient and flexible implementation of neural network compute kernels for our chip families
- Defining / Improving abstractions of our kernel library to accelerate kernel development
- Analysis and optimization of individual kernel performance and full-network implementation performance
- Work closely with our compiler and physical allocation teams to enable efficient implementations of networks through our push-button compile tool-flow
Requirements
- Computer Science, Engineering, Math, Physics or related degree
- Experienced in Python, C/C++ and SW design
- Demonstrated ability to work independently through challenging but tightly constrained problems
- Demonstrated ability to be a technical leader on projects with teammates or engineers from other teams
- Interest and ability to work with both high level architectural and very low-level technical details
- Experience with low-level and/or parallelization optimization, e.g. assembly language development, GPU shaders, SIMD, CUDA, AI inference accelerator kernels
Preferred Skills
- Experience with spatial architectures / at-memory compute
- Knowledge of AI algorithms
- Strong mathematical skills
- Enjoy solving very complex problems (like doing IQ tests, solving tricky math problems)
What are some of the perks that you will receive being part of Untether AI?
Aligned to Untether’s philosophy, our employees enjoy the same perks, regardless of role or level. In part, these include:
20 vacation days
Strong health and extended health benefits
Unlimited sick days
Stock options
Building chips and software that will change the world
Thinking about applying?
- We’re a pretty welcoming bunch of people. If we’ve piqued your interest, you’re passionate about the same things we are but you aren’t sure if you check all the boxes, please apply anyway. We’re a great place to work, an even better place to learn and we focus on both capability and potential!
- Besides being a pretty friendly group, we’re also pretty diverse - ethnically, experientially and in our physical and mental abilities. If you are someone who needs accommodation during the interview process and/or in the workplace, please send a note along with your resume to [email protected] and we’ll be in touch.
About the company
Untether AI
- B2B
- Scale StageRapidly increasing operations