HPC Research and Development Specialist

Job Description: Advanced Management Technology Inc (AMTI) is accepting applications for the position of High Performance Computing (HPC) consultant to join the Advanced Software Technology Group (ASTG) at NASA GSFC in Greenbelt, Maryland. Responsibilities - Provide a broad spectrum of expert consulting support to users of NASA's HPC resources - Answer general user questions, provide one-on-one code debugging, optimization and porting help - Provide expertise in evaluation/benchmarking/selection of HPC hardware and software - Install, maintain, document, support and keep up-to-date third-party software - Keep abreast of developments in the high performance computing field - Provide HPC training through in-class and online tutorials and bring-your-code workshops - Refactor large legacy codes using modern software practices such as Object Oriented Design, Unit Testing and software coding standards. Qualifications: Required - Bachelor's degree in computer science or science/engineering/mathematics. - Software development experience in C or C++ or Fortran preferably in a Unix environment. - Experience writing parallel programs using MPI and OpenMP preferably for scientific applications. - Experience in debugging and profiling tools for complex computer programs. - Ability to work in a team environment with minimal supervision. - Possess astute interpersonal skills, and an ability to communicate well orally and in writing. - Enthusiastic, proactive and dynamic. Desired - Graduate degree. - Experience with frameworks for software development and modeling. - Experience with batch schedulers such as PBS and LSF. - Experience with benchmarking of parallel programs Responsibilities: - Provide a broad spectrum of expert consulting support to users of NASA's HPC resources - Answer general user questions, provide one-on-one code debugging, optimization and porting help - Provide expertise in evaluation/benchmarking/selection of HPC hardware and software - Install, maintain, document, support and keep up-to-date third-party software - Keep abreast of developments in the high performance computing field - Provide HPC training through in-class and online tutorials and bring-your-code workshops - Refactor large legacy codes using modern software practices such as Object Oriented Design, Unit Testing and software coding standards. Skills: C, C++, Fortran, Unix, debugging and profiling tools, parallel computing, MPI, OpenMP, multithreading, interprocess communication, batch queuing systems Education: Bachelor's degree in computer science or science/engineering/mathematics required. Graduate degree a plus Experience: Required Software development experience in C or C++ or Fortran preferably in a Unix environment. Experience writing parallel programs using MPI and OpenMP preferably for scientific applications. Experience in debugging and profiling tools for complex computer programs. Ability to work in a team environment with minimal supervision. Possess astute interpersonal skills, and an ability to communicate well orally and in writing. Enthusiastic, proactive and dynamic. Desired Experience with frameworks for software development and modeling. Experience with batch schedulers such as PBS and LSF. Experience with benchmarking of parallel programs.