Research Engineer, Machine Learning
About the role
Basis is a nonprofit applied AI research organization with two mutually reinforcing goals. The first is to understand and build intelligence, which involves establishing the mathematical principles of reasoning, learning, decision-making, understanding, and explaining, and constructing software that implements these principles. The second goal is to advance society's ability to solve intractable problems by expanding the scale, complexity, and breadth of problems that can be solved today and accelerating our ability to solve problems in the future. To achieve these goals, Basis builds both a new technological foundation inspired by how humans reason and a new kind of collaborative organization that prioritizes human values.
Responsibilities
- Translate research ideas into correct, robust, and scalable high-quality code.
- Engage in programming language design/implementation.
- Performance engineering, scaling research code.
- Algorithm development.
- Contribute to the culture and direction of Basis.
- (Optional) Publish and present findings in journals and conferences.
Requirements
We seek individuals who excel technically and value probing concepts at their foundations. Research engineers should possess excellent programming and software engineering skills, especially in Julia, Python, C++, and ML-family languages. They should have demonstrated the ability to drive software projects from start to finish, evidenced by open-source projects, technical reports, and publications. Comfort with digesting research from PL and/or ML venues, such as PLDI, POPL, NeurIPS, or ICML, and progress with a high degree of autonomy and under uncertainty are essential. Enthusiasm for solving real-world problems and making a positive societal impact is also crucial. Significant technical achievements in ML engineering, such as implementing variants of newly published techniques from scratch, building systems and workflows for training large models distributed across many machines, and building systems spanning all levels of the programming stack, are highly valued. A PhD (or equivalent experience) in technical areas including statistics, programming languages, machine learning, computational neuroscience, cognitive science, physics, or mathematics is advantageous.