Stanford University's School of Medicine is launching an interdisciplinary Neuro-AI project to build a foundation model of the brain, aiming to create a functional 'digital twin' that captures brain activity dynamics and intelligent behavior. The project seeks to provide insights into the brain's algorithms and align AI models with human-like neural representations. The role is crucial for developing and scaling systems to support scientists, ensuring reproducibility, production-readiness, and implementing CI/CD processes.
Requirements
- Strong programming skills in Python and system-level languages (e.g. C/C++, Rust)
- In-depth experience with version control systems like Git and collaborative development platforms like GitHub
- Experience setting up and maintaining CI/CD principles through tools such as GitHub Actions and Jenkins
- Strong understanding and experience in test-driven software development with knowledge of different testing methodologies such as unit testing, integration testing, and end-to-end testing
- Experience with containerization technologies like Docker and orchestration platforms like Kubernetes and Slurm
- Knowledge of software design patterns and architectures
- Familiarity with machine learning frameworks such as TensorFlow or PyTorch
Responsibilities
- Develop and maintain reproducible, production-grade software/library for various aspects of the project, including data processing, machine learning, and data/compute infrastructure management
- Implement and manage CI/CD pipelines using tools like GitHub Actions, Code Coverage, and unit testing frameworks
- Collaborate with data scientists, machine learning engineers, and systems engineers to ensure seamless and timely integration of code and infrastructure
- Help establish and enforce coding standards, best practices, and documentation guidelines across the project
- Conduct code reviews and provide constructive feedback to maintain code quality and consistency
- Optimize code performance, scalability, and reliability
- Troubleshoot and debug software issues, and provide timely solutions
Other
- 3+ years of experience in developing and maintaining production-grade codebases
- Excellent problem-solving, communication, and collaboration skills
- Ability to work effectively in a fast-paced, multidisciplinary environment
- Experience with the challenges of scientific software development
- Experience contributing to and/or maintaining open-source software projects or libraries