Advanced Technology Software Engineer
Cerebras has developed a wafer-scale computer platform that dramatically accelerates deep learning. Our system takes today’s training times and inference latencies and reduces them by orders of magnitude, fundamentally changing the way ML researchers work and pursue AI innovation.
We are innovating at every level of the platform – from processor, to microcode, to new algorithms and network architectures at the cutting edge of ML research. Our system delivers unprecedented performance because it is built from the ground up for deep learning.
Cerebras is building a team of exceptional people to work together on big problems. Join us!
The Advanced Technology team researches innovative new applications of our technology. We apply a diverse set of techniques including learning algorithms, randomized algorithms, sparse networks, compiler technologies, network mapping strategies, microcode optimizations, and hardware architecture design. As a Software Engineer in Advanced Technology, you will work with mathematicians and researchers to implement novel algorithms and high-performance code.
Specific responsibilities for this position include:
- Working with mathematicians to implement algorithms based on theoretical and mathematical descriptions.
- Working with bare-metal representations of classical CS data-structures.
- Implementing machine learning algorithms from scratch without an ML framework.
- Prototyping network architectures using ML frameworks such as PyTorch and TensorFlow.
- Working with IEEE floating point number system and alternative proprietary number systems.
- Working with intermediate representations used in compilers and interpreters.
- Working with researchers to incorporate novel algorithms into CNN and RNN models.
This role will allow you to work closely with leading technologists in optimization, machine learning, mathematics, and hardware design. You will get to see how algorithmic innovation is applied to accelerate hardware architectures and is applied to some of the world’s most challenging machine learning problems. Your work will be applied to help ML researchers in these fields to innovate more rapidly and in ways that are not currently possible on other hardware platforms.
Skills & Qualifications
- BA, Masters, or PhD in Computer Science or related field.
- Expert in C programming; fluent in implementing classical CS algorithms from scratch.
- Familiarity with Python, shell and make programming.
- Familiarity with a machine learning framework such as PyTorch, with a good understanding of how to define custom layers.
- Experience with supervised deep learning models such as RNNs and CNNs.