Place and Route Engineer
Cerebras is developing a radically new chip and system to dramatically accelerate deep learning applications. Our system runs training and inference workloads orders of magnitude faster than contemporary machines, fundamentally changing the way ML researchers work and pursue AI innovation.
We are innovating at every level of the stack – from chip, to microcode, to power delivery and cooling, to new algorithms and network architectures at the cutting edge of ML research. Our fully-integrated system delivers unprecedented performance because it is built from the ground up for the deep learning workload.
Cerebras is building a team of exceptional people to work together on big problems. Join us!
The Place & Route team designs a backend system that transforms an abstract computational graph to a specific plan that can be run on our hardware. Our team consists of highly skilled PhDs and engineers with strong backgrounds in parallel computing, graph algorithms, constrained optimization, and machine learning, with many combined years of industry experience. We are looking to grow our team with highly motivated individuals eager to solve challenging algorithmic problems and implement their methods, following sound engineering principles.
As a Place & Route Engineer, you will directly impact the performance at which deep learning models are executed on hardware and be responsible for enabling next-generation AI applications that require substantial computational capabilities.
In this position, you will develop algorithms that manipulate distributed programs represented as graphs. Specific responsibilities may include:
- Develop algorithms that match parts of the computational graph against the kernels
- Develop algorithms that allocate hardware resources to and establish physical connectivity among kernels, in order to meet the resource constraints.
- Design a backend system that incorporates these methods in an end-to-end fashion.
Skills & Qualifications
- PhD degree in Computer Science or related field.
- Expert knowledge of graph algorithms, tile computing, or constrained optimization.
- Strong proficiency in C/C++ or other language for designing large, performant systems.
- Familiarity with Python or other scripting language.
- The ability to operate at multiple levels of abstraction.
Successful candidates need to have demonstrated the ability to both solve challenging algorithmic problems and implement them cleanly in performant code.
- Summer Internship & New Grad / Full Time:
- Headquarters/Los Altos Office
- Remote Office
- San Diego Office
- Toronto Office