software engineer - machine learning research
at ASTERA INSTITUTE
California, California, USA -
Start Date | Expiry Date | Salary | Posted On | Experience | Skills | Telecommute | Sponsor Visa |
---|---|---|---|---|---|---|---|
Immediate | 29 Dec, 2024 | USD 300000 Annual | 05 Oct, 2024 | N/A | Databases,Game Engines,Distributed Systems,Reinforcement Learning,Systems Programming,One Domain,Compilers,Operating Systems | No | No |
Required Visa Status:
Citizen | GC |
US Citizen | Student Visa |
H1B | CPT |
OPT | H4 Spouse of H1B |
GC Green Card |
Employment Type:
Full Time | Part Time |
Permanent | Independent - 1099 |
Contract – W2 | C2H Independent |
C2H W2 | Contract – 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