The National Center for Supercomputing Applications
Job Summary
To write software and tools to address scientific and other real world problems. Partner in NCSA’s vision of being a home for addressing complex research problems in science and society, powered by the development and application of advanced and comprehensive digital environments. Collaborate with research teams and partners to address heterogeneous research questions and to ensure appropriate resources are available to deliver innovative research outcomes.
Duties & Responsibilities
Research Software Application and Development (80%)
- Engineer and develop software that addresses real world, complex problems with simple interfaces to powerful backend tools, and analyses across human resources, finance, communications, and administration, both independently and in collaboration with team members.
- Evaluate and integrate collaborative input, and design new approaches and techniques to address project-specific needs and critical technological challenges.
- Ensure project deliverables are completed within deadlines.
- Guide project team members in terms of developing software and tools, as well as in prioritization of deliverables and deadlines.
- Evaluate the strengths and weaknesses between varieties of novel approaches to software development problems.
- Work with internal customers to leverage synergies across projects.
- Design and support common cyberinfrastructure for a broad range of communities within the University.
- Employ methodologies and develop code which supports an environment of secure systems.
- Design and develop security-oriented programs which by nature defend against disruption or misdirection of services.
- Track activity in relevant fields both programmatic and domain-specific.
Research Communication (20%)
- Communicate findings with project colleagues to be used as needed in current programming and design efforts.
- Publish and present results of software research and development to contribute to internal documentation.
Minimum Qualifications
Requirements: Bachelor’s degree in Computer Science or related field plus three (3) years of experience in software development. Programming experience in one or more programming languages (e.g. Java, C++, Python, Scala, Ruby, Javascript). Six (6) months of experience researching, presenting, and/or publishing technical projects or papers in a professional or academic setting.
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 after 11/12/2026. Salary is commensurate with experience. The salary range for this position is $87,027-$88,000.
This position is eligible for sponsorship for work authorization.
This position is intended to be eligible for benefits. This includes Health, Dental, Vision, Life Insurance, a Retirement Plan, Paid time Off, and Tuition waivers for employees and dependents.