Day-to-day activities include resolving user problems running scientific computing jobs on HPC systems. This includes troubleshooting Linux OS related problems, analyzing job submission scripts, and diving into code looking for bugs. In addition, users often ask for new software, or new versions of existing software, to be installed for them, requiring appropriate research to find the software, download, and compile it for optimal use on an HPC system. Specific duties:
- Configure, compile, and install open source research applications and libraries from source
- Craft functioning examples, either from examples included with the software, from the internet, or built from scratch for software installed to serve as a guide for users
- Install and maintain multiple commercial applications such as mathematical and statistical software, math libraries, compilers, debuggers, and profilers
- Collaborate in evaluating the organization, delivery, and maintenance of software and finding or building improved systems
- Help validate the performance benchmarking and performance diagnosis of ARC services and systems
- Assist users with performance, system or other issues related to their use of our systems
- Assist users in identifying national resources, such as ACCESS, perform testing on those resources, assist preparing computational components of proposals, and assist users in learning to use granted resources
- Evaluate new, user-facing tools for their potential to improve users' interaction with ARC services and resources that make the services easier to approach
- Propose better solutions to organize, update, and deliver user facing software
- Evaluate software development tools that assist users improving performance of their software, e.g., compilers, profilers, and libraries
- Create and publish documentation including user guides, application-specific web documentation, and documentation for internal programs and procedures
- Participate in designing and offering workshops and training for ARC and other research computing systems (this may include written assignments, in-person presentation, or video recording)
- Work individually with users to create manageable, well-documented workflows that incorporate or integrate with ARC provided services
- Mentor and train junior staff in the following areas of our operations and address any missing skills from above up to 80% remote work from home.