The Scientific Computing Core (SCC) at the Flatiron Institute is seeking a Software Engineer Intern to develop tools and expertise for high performance computing (HPC) to support various scientific centers and the broader scientific community.
Requirements
- Written or made a major contribution to a significant project in one of the following languages: C/C++, Julia, Python, MATLAB, FORTRAN, CUDA
- Basic knowledge of the Linux command line
- Working expertise with object oriented programming in C++ and Python, desired
- Practical experience in HPC and cluster computing topics such as MPI, GPU/CUDA and Slurm, desired
- Course experience in data structures and algorithms or equivalent, desired
- Basic knowledge of Git/GitHub, particularly when dealing with shared projects, desired
Responsibilities
- Assist in planning and implementation of novel generic open source computational tools and broader research software.
- Use github to organize workflow and effectively collaborate on team programming projects
- Use Flatiron cluster resources to profile/benchmark/test software
- Perform any other duties or tasks as assigned or required
- Collaborate on an open-source project while learning about numerical algorithms, GPU computing, MPI, and various other high performance computing (HPC) topics
- Apply development skills to original computational projects
- Present progress and participate in discussions
Other
- Must be a student enrolled in an accredited graduate degree program
- Students enrolled in physics, mathematics, computer science, or related disciplines preferred
- Must enjoy working in a research-driven environment
- Desire to document code and process, deliberative decision-making
- Strong oral and written communication