Scientific Software Engineer
Role details
Job location
Tech stack
Job description
Assists in design, development, and troubleshooting software and applications in support of establishing a sustainable institutional technological infrastructure., The Scientific Software Engineer role in the Computational Research Accelerator will support cutting-edge research by enabling the effective use of emerging hardware platforms, including FPGAs, GPUs, and other accelerators. This role bridges advanced computing technologies and scientific applications, working directly with researchers to adapt, optimize, and deploy codes on novel architectures. In addition to hands-on technical collaboration, the position includes developing training materials, documentation, and exemplar workflows to broaden adoption across a research community. The engineer will also contribute to special projects exploring new programming models, performance strategies, and prototype systems., * Design and implement software solutions that leverage heterogeneous computing environments
- Evaluate and benchmark performance across architectures, identifying bottlenecks and opportunities for improvement
- Develop and maintain reusable code, libraries, and tools supporting accelerator-based workflows
- Create training materials, tutorials, and workshops to educate users on programming models and best practices for novel hardware
- Produce clear technical documentation, including user guides, example applications, and performance reports
- Provide user support, including debugging, profiling, and performance tuning assistance
- Participate in special projects exploring emerging technologies, programming frameworks, and experimental hardware platforms
- Engage with vendors, open-source communities, and internal stakeholders to stay current with evolving hardware and software ecosystems
- Utilize effective project planning techniques to break down projects into tasks and ensure deadlines are met
- Collaborate with the team in order to improve the effectiveness of research computing strategy at ASU., Graduate Assistant, Intern and part-time positions are counted as half time for experience equivalency, meaning one year equals six months of experience., Notice of Availability of the ASU Annual Security and Fire Safety Report:
In compliance with federal law, ASU prepares an annual report on campus security and fire safety programs and resources. ASU's Annual Security and Fire Safety Report is available online at https://www.asu.edu/police/PDFs/ASU-Clery-Report.pdf . You may request a hard copy of the report by contacting the ASU Police Department at 480-965-3456.
Relocation Assistance - For information about schools, housing child resources, neighborhoods, hospitals, community events, and taxes, visit https://cfo.asu.edu/az-resources .
Employment Verification Statement:
ASU conducts pre-employment screening which may include verification of work history, academic credentials, licenses, and certifications.
Background Check Statement:
ASU conducts pre-employment screening for all positions which includes a criminal background check, verification of work history, academic credentials, licenses, and certifications. Employment is contingent upon successful passing of the background check.
Fingerprint Check Statement: This position is considered safety/security sensitive and will include a fingerprint check. Employment is contingent upon successful passing of the fingerprint check.
Requirements
Do you have experience in Training material drafting?, Do you have a Master's degree?, Bachelor's degree and three (3) years of experience appropriate to the area of assignment/field; OR, Any equivalent combination of experience and/or training from which comparable knowledge, skills and abilities have been achieved., * Strong programming skills in languages such as C, C++, Python, or similar
- Experience with parallel and heterogeneous computing (e.g., CUDA, OpenCL, SYCL, MPI, OpenMP)
- Familiarity with FPGA development workflows (e.g., high-level synthesis, RTL concepts) and/or accelerator programming
- Understanding of computer architecture, memory hierarchies, and performance optimization techniques
- Experience with profiling, debugging, and benchmarking tools in HPC environments
- Ability to translate domain-specific scientific requirements into efficient computational solutions
- Strong communication skills, with the ability to explain complex technical concepts to non-expert users
- Experience developing instructional materials, documentation, or delivering technical training
- Ability to work collaboratively in interdisciplinary teams and manage multiple projects simultaneously
- Demonstrated curiosity and adaptability in learning new technologies and programming paradigms
- Master's degree in Computer Science or Computer Engineering.
- Familiarity with Linux cluster environment and GPU acceleration.
- FPGA experience preferable
Working Environment:
- Climate-controlled office setting subject to extended periods of being in a stationary position.
- Regular use of a computer and other office productivity equipment, such as a calculator, copy machine, and printer.
- Ability to clearly communicate and exchange accurate information to perform essential duties.
- Expected to be responsive to customers; engaged in work production; and resourceful, flexible, and respectful of others.
Benefits & conditions
4.24.2 out of 5 stars Tempe, AZ $66,200 - $80,000 a year - Full-time, Pulled from the full job description
- Health insurance
- Retirement plan
- Vision insurance
- Dental insurance
- Relocation assistance
- Life insurance
- Disability insurance