Internship Program in Advanced Research Computing

Internship opportunities for NDSU undergraduate and graduate students

The CCAST Internship Program in Advanced Research Computing offers NDSU undergraduate and graduate students opportunities to gain experience in advanced computing [i.e., high-performance computing (HPC)/supercomputing, high-throughput computing, cloud computing, data storage and management, etc.]. CCAST student interns work in the systems-facing and/or researcher-facing tracks (see below).

Open positions, if available, will be posted on the IT Student Employment Services (SES) website. Unless specified otherwise, any NDSU undergraduate or graduate students who are in good standing and possess the required experience will be considered. The positions are paid and usually require at least 10 hours/week. Graduate student interns may be eligible for graduate assistantship.

Systems-Facing Track 

Students in this track work on projects related to deployment, configuration, and maintenance of Linux-based HPC systems. This may include server and other hardware installation; TCP/IP networking; Linux operating system configuration; deployment of scientific software on physical and virtual systems; and development of new systems-related software.

What do we usually look for in an applicant?

Required (“need to have”):
  • Experience programming in one or more programming languages (Perl, Python, C/C++, Java, or others).
  • Basic experience working in a UNIX/Linux operating system.
  • Good communication (written and oral) and interpersonal skills. Ability to write clear user instructions and develop tutorials and training materials.
  • Self-motivation, willingness to learn, and strong problem-solving skills.
Bonus (“like to have”):
  • Experience scripting or automating tasks in UNIX/Linux environments using Bash, Perl, or Python.
  • System administration skills, including networking, virtualization, building software, deploying and maintaining web applications, etc.
  • Comfortable working in the Bash terminal.
Researcher-Facing Track

Students in this track work on projects related to the application of advanced computing and assist researchers in various research fields. The work includes educating researchers on proper and efficient use of shared HPC resources, building software packages, assisting researchers in troubleshooting or optimizing their code, and assisting researchers in streamlining their workflows.

What do we usually look for in an applicant?

Required (“need to have”):
  • Experience in a research field, in either biological sciences, computer and information science and engineering, engineering, mathematical and physical sciences, or social, behavioral and economic sciences, etc.
  • Experience working in UNIX/Linux environments and using HPC resources.
  • Strong communication (written and oral) and interpersonal skills. Ability to write clear user instructions and develop (online) tutorials and training materials.
  • Self-motivation, willingness to learn, and strong problem-solving skills.
Bonus (“like to have”):
  • Experience with one or more programming languages (Fortran, C/C++, Python, or others).
  • Experience with parallel programming APIs (OpenMP, MPI, CUDA, OpenACC, etc.).
  • Experience with parallelism in, e.g., Python, R, or MATLAB, and with numerical libraries (e.g., Intel MKL).
  • Experience with software compilation and installation on HPC systems.
*
CCAST provides advanced research computing resources, training, and consulting to faculty, students, and staff at NDSU and beyond. The research we enable spans a broad range of disciplines, including science, engineering, agriculture, public health, business, finance, etc.

See Also: