Associate/Research Software Engineer/Senior - The National Center for Supercomputing Applications
University of Illinois

Urbana, Illinois

This job has expired.


Associate/Research Software Engineer/Senior - The National Center for Supercomputing Applications

The National Center for Supercomputing Applications

NCSA is currently seeking one or more Associate Research Software Engineer/ Research Software Engineers/ Senior Research Software Engineer(s) to provide scientific software development on a long-term basis. In this role, you will work on multiple research projects based on your skill set and the projects' needs. You will interact with stakeholders from a wide range of scholarly disciplines at the University of Illinois and other universities, as well as government and industry. Domains may include geoscience, civil and environmental engineering, biology, materials science, agriculture, medicine, astronomy, and the humanities.

Successful candidates can come from industry or academia, and can come from computer science or a domain science with a background in development. The key to a successful candidate will be a willingness to embrace both the professional software development aspects as well as the academic aims, priorities, and research aspects of the position. Our team strives to mentor new RSEs and provide opportunities for training and learning on the job, and successful candidates will identify and support emerging RSEs through their career paths.

Associate Research Software Engineer

Research Software and Application Development:
• Develop software that addresses real world complex research problems with interfaces to powerful backend tools and interdisciplinary analyses such as science, engineering, the humanities and social sciences.
• Architect and design software programs to help researchers define and solve heterogenous problems; provide consulting expertise to researchers across a variety of domain sciences to leverage synergies across projects; and design and support shared cyberinfrastructure to support a broad range of communities.
• Integrate collaborative input and design new approaches and techniques to address project specific needs and critical technological challenges.
• Track research activity in relevant fields both programmatic and domain specific.
◦ Evaluate the strengths and weaknesses between varieties of novel approaches to research and scientific software development problems.

Research Communication:
• Contribute to publications, technical reports, and documentation in collaboration with domain scientists.
• Communicate findings from research development activities above with project colleagues, including primary investigators, to be used as needed in current programming and design efforts.

System Architecture and Design:
• Develop research-oriented code which supports an environment of secure systems, and design and develop security-oriented programs using established software development methodologies (i.e. agile, lean, rapid application, etc.) which by nature defend against disruption or misdirection of services.

Minimum Qualifications: •Bachelor's degree in computer science or related field. Alternative degree fields will be considered if accompanied by equivalent experience (depending on nature and depth of experience as it relates to current project needs)
•Software development and/or programming experience, which can include a combination of course-level and professional experience.

Research Software Engineer

Research Software and Application Development:
• Engineer and develop software that addresses real world complex research problems with interfaces to powerful backend tools and interdisciplinary analyses such as science, engineering, the humanities and social sciences.
• Architect and design software programs to help researchers define and solve heterogenous problems; provide consulting expertise to researchers across a variety of domain sciences to leverage synergies across projects; and design and support shared cyberinfrastructure to support a broad range of communities.
• Evaluate and integrate collaborative input and design new approaches and techniques to address project specific needs and critical technological challenges.
• Track research activity in relevant fields both programmatic and domain specific.
◦ Evaluate the strengths and weaknesses between varieties of novel approaches to research and scientific software development problems.

Research Communication:
• Publish and present results of scientific software research and development at national and international conferences.
• Contribute to publications, technical reports, and documentation in collaboration with domain scientists.
• Communicate findings from research development activities above with project colleagues, including primary investigators, to be used as needed in current programming and design efforts.

System Architecture and Design:
• Develop research-oriented code which supports an environment of secure systems, and design and develop security-oriented programs using established software development methodologies (i.e. agile, lean, rapid application, etc.) which by nature defend against disruption or misdirection of services.

Minimum Qualifications: •Bachelor's degree in computer science or related field. Alternative degree fields will be considered if accompanied by equivalent experience (depending on nature and depth of experience as it relates to current project needs
•Three years of software development and/or programming experience, which can include a combination of course-level and professional experience.

Senior Research Software Engineer

Research Software and Application Development:
• Engineer and develop software that addresses real world complex research problems with interfaces to powerful backend tools and interdisciplinary analyses such as science, engineering, the humanities and social sciences.
• Drive research software development projects. This involves guaranteeing milestones are achieved, coordinating effort among project members, and recognizing emergent project needs and taking initiative to ensure these are addressed and resolved.
• Evaluate and integrate collaborative input and design new approaches and techniques to address project specific needs and critical technological challenges.
• Track research activity in relevant fields both programmatic and domain specific.
◦ Evaluate the strengths and weaknesses between varieties of novel approaches to research and scientific software development problems.
• May direct and train hourly employees and interns.

System Architecture and Design:
• Architect and design software programs to help researchers define and solve heterogenous problems; provide consulting expertise to researchers across a variety of domain sciences to leverage synergies across projects; and design and support shared cyberinfrastructure to support a broad range of communities.
• Design and build the infrastructure necessary to support cutting-edge research projects. Engineer the underlying architecture of the project.
• Develop research-oriented code which supports an environment of secure systems, and design and develop security-oriented programs using established software development methodologies (i.e. agile, lean, rapid application, etc.) which by nature defend against disruption or misdirection of services.

Research Communication:

• Publish and present results of scientific software research and development at national and international conferences.
• Contribute to publications, technical reports, and documentation in collaboration with domain scientists.
• Communicate findings from research development activities above with project colleagues, including primary investigators, to be used as needed in current programming and design efforts.

Minimum Qualifications:•Bachelor's degree in computer science or related field. Alternative degree fields will be considered if accompanied by equivalent experience (depending on nature and depth of experience as it relates to current project needs)
•At least 5 years software development and/or programming experience, which can include a combination of course-level and professional experience.

Preferred Qualifications: •Programming in three or more of the following: C/C++, Java, PHP, Python, Scala, Ruby, Javascript, or other similar languages, with an ability to explain/decide why one would be utilized over another in different development scenarios.
•Subject matter expert on one or more technologies.
•Experience in one or (preferably) more of the following: o Web front end development (e.g. server side scripting, client side frameworks, HTML5, CSS, REST, OAuth). o Full-stack experience o Machine learning or data mining. o Natural language processing. o Geospatial data management and programming. o High-speed, real-time data analysis. o Computer vision or graphics. o HPC environments, cloud computing, and/or systems administration. o Databases (e.g. MySQL, MongoDB, PostgreSQL). o Linux DevOps experience.
•Ability to establish a software development effort from the ground up (create the software from scratch).
•Experience working with domain sciences.
•Contributions towards research publications.
•Ability to clearly communicate results and their importance (verbally an

Appointment Information

This is a 100% full-time Academic Professional position, appointed on a 12-month basis. The expected start date is as soon as possible. Salary is commensurate with experience. The minimum salary for the three levels is: associate level is $67,600, standard level is $83,200 and senior level is $98,800.

Application Procedures & Deadline Information

Applications must be received by 6:00 pm (CST) on April 1, 2025. Apply for this position using the Apply Now button at the top or bottom of this posting. Please submit a resume and cover letter for this position. Applications not submitted through https://jobs.illinois.edu will not be considered. For further information about this specific position, please contact jgoodly@illinois.edu. For questions regarding the application process, please contact 217-333-2137.

The University of Illinois System is an equal opportunity employer, including but not limited to disability and/or veteran status, and complies with all applicable state and federal employment mandates. Please visit Required Employment Notices and Posters to view our non-discrimination statement and find additional information about required background checks, sexual harassment/misconduct disclosures, and employment eligibility review through E-Verify .

Applicants with disabilities are encouraged to apply and may request a reasonable accommodation under the Americans with Disabilities Act (2008) to complete the application and/or interview process. Requests may be submitted through the reasonable accommodations portal , or by contacting the Accessibility & Accommodations Division of the Office for Access and Equity at 217-333-0885, or by emailing accessibility@illinois.edu .

Requisition ID: 1023380
Job Category: Research
Apply at: https://jobs.illinois.edu


This job has expired.

Get Hired Faster

Subscribe to job alerts and upload your resume!

*By registering with our site, you agree to our
Terms and Privacy Policy.

More Education and Training jobs


Southern Methodist University Inc
Dallas, Texas
Posted about 1 hour ago
Southern Methodist University Inc
Dallas, Texas
Posted about 1 hour ago
Southern Methodist University Inc
Dallas, Texas
Posted about 1 hour ago
View Education and Training jobs »