2 months ago
Christchurch, New ZealandSenior
Responsibilities
- Design, develop, and maintain shared frameworks and libraries for cloud-based geoscience computing workloads.
- Support the transition of desktop-based algorithms to scalable cloud-native solutions.
- Develop and optimize computational algorithms for performance and scalability on CPUs and GPUs.
- Apply profiling, optimization, parallelization, and high-performance computing techniques.
- Develop reusable algorithmic components used by multiple engineering teams.
- Collaborate with engineering and cross-functional teams to enable adoption of the cloud compute framework.
- Provide technical input, lead technical discussions and presentations, and guide design and requirements decisions.
- Contribute to code reviews, coding standards, knowledge sharing, and technical best practices.
Requirements
- 5+ years of professional experience designing and developing scalable, testable code at a product-wide level.
- Strong software engineering experience with C/C++ and Python.
- Experience with scalable software design, clean architecture principles, performance profiling, and optimization.
- Experience with parallel computing or distributed systems.
- Experience with CI/CD pipelines and tools such as GitHub or GitLab.
- Bachelor's degree in Computer Science, Engineering, or a related field, or equivalent experience.
- Interest in mathematics, science, or computational problem-solving.
- GPU programming experience, such as CUDA, is highly desirable.
- Cloud environment experience is a plus.
Benefits
- Office-based working environment in Christchurch, with work from the office three or more days per week.
