software engineer - machine learning research

at  ASTERA INSTITUTE

California, California, USA -

Start DateExpiry DateSalaryPosted OnExperienceSkillsTelecommuteSponsor Visa
Immediate29 Dec, 2024USD 300000 Annual05 Oct, 2024N/ADatabases,Game Engines,Distributed Systems,Reinforcement Learning,Systems Programming,One Domain,Compilers,Operating SystemsNoNo
Add to Wishlist Apply All Jobs
Required Visa Status:
CitizenGC
US CitizenStudent Visa
H1BCPT
OPTH4 Spouse of H1B
GC Green Card
Employment Type:
Full TimePart Time
PermanentIndependent - 1099
Contract – W2C2H Independent
C2H W2Contract – Corp 2 Corp
Contract to Hire – Corp 2 Corp

Description:

ABOUT US:

Astera is a foundation on a mission to help lead humanity’s transition to a scientifically advanced, abundant future.
Obelisk is the AGI research lab at Astera. Obelisk is a team of researchers who are pursuing an exploratory, neuroscience-informed approach to engineering AGI.
Astera enables the Obelisk team to focus on basic research and take a long-term view. Obelisk is unconstrained by the need to secure funding, garner profit, or publish results. The team also has access to significant computational resources.You can read more about Obelisk here.

POSITION SUMMARY:

We are seeking a software engineer to contribute to our machine learning research. This role will span a broad spectrum of activities from purely engineering to open-ended exploratory research. An ideal candidate is first and foremost a fast and clean coder and excellent debugger, but is enthusiastic about doing tasks that are more typical for a data scientist or ML researcher such as training models and analyzing the results of ML experiments.

Some of the major types of work that engineers on the team do:

  • Start with a prototype-quality implementation, or pseudo-code of a machine learning algorithm and implement it such that it’s easier to run large-scale experiments with and build upon. This may involve refactoring it to make it easier to specify hyperparameters in a standard way, performance optimization for GPUs using JAX, or adapting the code to work with different data sets or reinforcement learning environments.
  • Integrating different modules into a larger machine learning system. E.g., figuring out how to add an exploration module that was designed by one of our research scientists into a DQN-based agent.
  • Designing and implementing reinforcement learning environments (essentially games meant to test a particular capability) in JAX and C++.
  • Building tools, libraries and frameworks to enable easy and correct experiments. These tools provide or enable things like logging, debugging, hyperparameter search, distributed training.

QUALIFICATIONS:

  • Skill in at least one domain of “systems programming”. Non-exhaustive example domains that we consider to be “systems programming": compilers, operating systems, databases, game engines, high performance distributed systems, high-performance GPU programming. Basically anything that requires in-depth knowledge and the ability to debug very complex software and hardware systems.
  • Skill in at least one AOT-compiled, strongly-typed language (e.g. C++, Rust, Java).
  • Ability to train and debug models on novel data sets using PyTorch or JAX.
  • Ability to read and comprehend machine learning research.
  • Experience with reinforcement learning is a plus.

Responsibilities:

Please refer the Job description for details


REQUIREMENT SUMMARY

Min:N/AMax:5.0 year(s)

Computer Software/Engineering

IT Software - Application Programming / Maintenance

Software Engineering

Graduate

Proficient

1

California, USA