Job Description:
Research Software Engineer/Senior Research Software Engineer
Office of Information Technology
The mission of the Center for Computation and Visualization (CCV, ccv.brown.edu) is to provide the scientific and technical computing expertise required to advance computational research and support Brown’s academic mission. We envision an environment where computational best practices, innovative solutions, and expert knowledge combine to build advanced tools for research and to enable new discoveries. We are a team of data scientists and research software engineers with a wide range of scientific backgrounds (e.g., Engineering, Physics, Computer Vision, Biology, Psychology, Statistics, Applied Math, Computer Science, Software Engineering, Industry, etc.).
The Research Software Engineer (RSE) will join the HPC team in the Advanced Research Computing group (ARC) within the Center for Computing and Visualization (http://ccv.brown.edu). Within the HPC team, the Research Software Engineer will provide the scientific and technical computing expertise required to advance research utilizing High Performance Computing (HPC) and support Brown’s academic mission. The RSE is responsible for keeping up-to-date knowledge and understanding of best practices needed to take full advantage of the University’s diverse set of HPC computing resources including the HPC cluster, GPUs and IT infrastructure. The RSe will conduct Scientific software Optimization for HPC applications, including performance tuning and benchmarking. This includes recommending algorithmic, software and hardware solutions, and designing, debugging and utilizing best practices in software engineering to deploy applications on Brown’s HPC computational resources at scale. A critical part of this position is to ensure that complete documentation of all processes are created and maintained according to prevailing best practices. The Research Software Engineer is also responsible for helping users adopt best practices in software engineering and optimized solutions based on both, algorithmic and IT infrastructure standpoints. Other responsibilities include contributing to outreach activities such as workshops and technical presentations, providing support for software engineering and acting as a consultant for researchers.
CCV embraces a community enriched and enhanced by diverse dimensions, including race, ethnicity and national origins, disability status, gender and gender identity, sexuality, class and religion. We believe diversity brings innovation and progress. We are especially committed to increasing the representation of those populations that have been historically underrepresented in STEM. The RSE is expected to adhere to and embrace CCV’s commitment to diversity and inclusion initiatives.
Qualifications: (Research Software Engineer - Grade 10)
-
Master's degree with a minimum of 2 years of experience or equivalent education and experience
-
An advanced science degree with strong computational emphasis (exceptional undergraduate work or experience may be an acceptable substitute)
-
Advanced knowledge of Linux/UNIX systems and shell scripting and scheduling systems
-
Strong programming skills with experience in parallel programming approaches
-
Experience building, installing, optimizing and profiling open source software
-
Strong debugging and troubleshooting skills
-
Experience with distributed parallel computing architectures and software systems
-
High professional standards with the ability to manage competing requirements in a diverse user population
-
Excellent interpersonal, oral and written communication skills with strong analytical ability
-
Knowledge of advanced numerical computing concepts
-
Possesses a willingness and ability to support a diverse and inclusive environment.
Desirable Qualifications
Candidates with some or all of the following qualifications are highly preferred:
-
A PhD degree with an emphasis on scientific computing is desirable
-
Familiarity with HPC resources such as XSEDE and EXASCALE
-
Experience with parallel programming models (e.g., use of OpenMP, MPI)
-
Expertise with one more low level programming languages such as C, C++, Fortran
-
Experience with GPU computing (e.g CUDA programming, tensorflow)
-
Experience with MATLAB, Python, Mathematica is desirable
-
Experience with HPC administration or Previous HPC center support experience is desirable
-
Experience with parallelization of serial computational applications
-
Experience with cloud computing software and services
-
Experience with scientific visualization in one or more science domains
-
Mentoring experience and or Teaching experience, especially in research
-
Experience in scientific disciplines specifically domain knowledge in the physical sciences is desirable
-
Ability to work both independently and as a team member.
-
Ability to manage multiple projects with competing priorities and deadlines, and an eagerness to take ownership of challenging and open-ended assignments.
Qualifications: (Senior Research Software Engineer - Grade 11)
-
Master's degree with a minimum of 5 years of experience or equivalent education and experience
-
An advanced science degree with strong computational emphasis (exceptional undergraduate work or experience may be an acceptable substitute)
-
Advanced knowledge of Linux/UNIX systems and shell scripting and scheduling systems
-
Strong programming skills with experience in parallel programming approaches
-
Experience building, installing, optimizing and profiling open source software
-
Strong debugging and troubleshooting skills
-
Experience with distributed parallel computing architectures and software systems
-
High professional standards with the ability to manage competing requirements in a diverse user population
-
Excellent interpersonal, oral and written communication skills with strong analytical ability
-
Knowledge of advanced numerical computing concepts
-
Possesses a willingness and ability to support a diverse and inclusive environment.
Desirable Qualifications
Candidates with some or all of the following qualifications are highly preferred:
-
A PhD degree with a minimum of two years of experience in HPC environments with scientific computing is desirable
-
Familiarity with HPC resources such as XSEDE and EXASCALE
-
Experience with parallel programming models (e.g., use of OpenMP, MPI)
-
Expertise with one more low level programming languages such as C, C++, Fortran
-
Experience with GPU computing (e.g CUDA programming, tensorflow)
-
Experience with MATLAB, Python, Mathematica is desirable
-
Experience with HPC administration or Previous HPC center support experience is desirable
-
Experience with parallelization of serial computational applications
-
Experience with cloud computing software and services
-
Experience with scientific visualization in one or more science domains
-
Mentoring experience and or Teaching experience, especially in research
-
Experience in scientific disciplines specifically domain knowledge in the physical sciences is desirable
-
Ability to work both independently and as a team member.
-
Ability to manage multiple projects with competing priorities and deadlines, and an eagerness to take ownership of challenging and open-ended assignments.
Successful completion of a criminal background check and education verification is required.
Benefits of Working at Brown:
Information on the Benefits of Working at Brown can be found here.
Recruiting Start Date:
2024-12-06
Job Posting Title:
Research Software Engineer/Senior Research Software Engineer
Department:
Office of Information Technology
Grade:
Grade 11
Worker Type:
Employee
Worker Sub-Type:
Regular
Time Type:
Full time
Scheduled Weekly Hours:
37.5
Position Work Location:
Onsite
Submission Guidelines:
Please note that in order to be considered an applicant for any staff position at Brown University you must submit an application form for each position for which you believe you are qualified. Applications are not kept on file for future positions. Please include a cover letter and resume with each position application.
Still Have Questions?
If you have any questions you may contact [email protected].
EEO Statement:
Brown University is an E-Verify Employer.
As an EEO/AA employer, Brown University provides equal opportunity and prohibits discrimination, harassment and retaliation based upon a person’s race, color, religion, sex, age, national or ethnic origin, disability, veteran status, sexual orientation, gender identity, gender expression, or any other characteristic protected under applicable law, and caste, which is protected by our University policies.
Top Skills
What We Do
Located in historic Providence, Rhode Island and founded in 1764, Brown University is the seventh-oldest college in the United States. Brown is an independent, coeducational Ivy League institution comprising undergraduate and graduate programs, plus the Alpert Medical School, School of Public Health, School of Engineering, and the School of Professional Studies.
With its talented and motivated student body and accomplished faculty, Brown is a leading research university that maintains a particular commitment to exceptional undergraduate instruction. Brown’s vibrant, diverse community consists of about 6,200 undergraduates, 2,000 graduate students, 490 medical school students, more than 5,000 summer, visiting, and online students, and over 700 faculty members.
Brown students come from all 50 states and more than 115 countries. Undergraduates pursue bachelor’s degrees in more than 70 concentrations, ranging from Egyptology to cognitive neuroscience. Anything’s possible at Brown—the university’s commitment to undergraduate freedom means students must take responsibility as architects of their courses of study.
Brown University has 51 doctoral programs and 28 master’s programs. The broad scope of options vary from interdisciplinary opportunities in molecular pharmacology and physiology to a master’s program in acting and directing through the Brown/Trinity Repertory Consortium.
Around the world, nearly 90,000 Brown alumni are - in the words of Brown’s charter - leading lives of “usefulness and reputation” in every imaginable field of endeavor. Through events around the globe, reunions on campus, career resources, a host of online connections, and other services, the Brown Alumni Association fosters and supports a vibrant alumni community, wherever its members may be