Junior Software Developer
University of Chicago
About the Role
As a member of the Globus Labs research and software development team, this position will help launch and lead day-to-day work for the newly formed effort in AI interpretability applied to scientific discovery. The role sits at the intersection of mechanistic interpretability, scientific foundation models, and open data infrastructure. It offers an opportunity to shape a new research direction from the ground up while building software used by thousands of researchers. The researcher will also contribute to projects that use those models to uncover new scientific insight in domains including materials science, chemistry, catalysis, x-ray science, and more. We're looking for a highly skilled developer and emerging researcher with experience applying interpretability methods to large language models and scientific models and using these to understand and improve model performance while also extracting key scientific insights from the models. This work also supports open science initiatives backed by the NSF, NIST, DOE, and the Genesis Mission, as well as a growing set of frontier laboratory and industry collaborations.
Key Responsibilities
- Coordinate the day-to-day activities of the new effort in interpretability for scientific discovery.
- Assist in developing the group’s research roadmap and priorities.
- Serve as a primary hands-on contributor to research and engineering across group projects.
- Develop tutorials and onboarding materials, and organize regular group check-ins and technical discussions.
- Implement and apply mechanistic interpretability techniques to scientific foundation models and AI systems, including feature discovery, sparse dictionary learning, circuit analysis, probing, and activation steering.
- Investigate how models trained on scientific data represent physical, chemical, and materials concepts.
- Build and maintain reusable tooling, pipelines, and GPU-accelerated workflows for interpretability experiments.
- Support foundation model training, agentic oversight frameworks, and autonomous laboratory efforts.
- Contribute to high-priority laboratory initiatives, including Globus GPU-accelerated inference, ISAAC and other Genesis programs, Terminal-Bench Science.
- Contribute to developing, deploying, and managing data infrastructure services, including systems for publishing large datasets.
- Help define and document requirements and architecture for secure, scalable, asynchronous data access services.
- Develop, test, document, and maintain software on a cloud-based platform, including REST, command-line, and socket-based interfaces. Apply GitOps principles for reproducible deployments.
- Work with other development teams to integrate cross-service features, and troubleshoot day-to-day technical problems.
- Support external engagement, including partnership discussions, technical meetings, and relationships with program managers and collaborators.
- Help identify real-world applications for the group’s technologies.
- Perform code testing on components and ensure implementation standards are met.
- Investigate and resolve day-to-day technical problems using standard procedures.
- Perform other related work as needed.
Requirements & Tech Stack
- Python (required)
- Node.js and/or a compiled language such as C/C++ (knowledge of)
- PyTorch or JAX (experience with)
- Hugging Face Transformers (familiarity with)
- Mechanistic interpretability methods (familiarity with), including sparse autoencoders, dictionary learning, probing, circuit analysis, activation patching, or activation steering
- Transformer architectures (understanding of)
- GPU-accelerated workloads (experience running)
- HPC clusters or cloud GPU instances (experience on)
- Job schedulers such as Slurm (familiarity with)
- Cloud computing platforms (knowledge of) such as AWS, GCP, Azure
- Software development best practices, including version control (Git), code review, testing, documentation, and CI/CD pipelines
- REST APIs and command-line tools (experience building or consuming)
- Asynchronous or socket-based interfaces (familiarity with, a plus)
- Data science and analysis tools such as NumPy, pandas, scikit-learn, Jupyter
- Handling large datasets
- Materials science, chemistry, catalysis, or x-ray science (interest in or exposure to, preferred but not required)
- Tools such as TransformerLens, nnsight, or SAELens (experience with, a plus)
Qualifications
- College or university degree in a related field.
- Less than 2 years of work experience in a related job discipline.
- Relevant experience may include: Research internships, research assistantships, or co-op positions in machine learning, AI interpretability, computational science, or software engineering.
- Hands-on work on research projects involving large language models, scientific foundation models, or other deep learning systems.
- Contributions to open-source software projects, particularly in machine learning, interpretability tooling, or scientific computing.
- Experience developing, testing, and deploying software in a collaborative team setting.
- Exposure to research outputs such as co-authored papers, workshop submissions, technical reports, posters, or conference presentations (preferred but not required).
- Strong analytical and problem-solving skills.
- Excellent written and verbal communication skills in English.
- Ability to work effectively in a dynamic, hybrid work environment.
- Interest in and experience developing software to support data-driven research.