Scientific Software Engineer

Arizona State UniversityTempe, AZ
Onsite

About The Position

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.

Requirements

  • 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

Nice To Haves

  • Master's degree in Computer Science or Computer Engineering.
  • Familiarity with Linux cluster environment and GPU acceleration.
  • FPGA experience preferable

Responsibilities

  • Collaborate with researchers to port, optimize, and scale scientific applications on FPGAs and accelerator-based 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.

Benefits

  • health, dental, and vision insurance plans
  • life insurance and disability programs
  • sick leave and holidays
  • ASU/UA/NAU tuition reduction for the employee and qualified family members
  • state and optional retirement plans
  • access to ASU recreation and cultural activities
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service