Low Level HPC Developer
Indexed description
We operate three world-class green supercomputer clusters, running a large suite of scientific applications. The research and development team of mathematicians, geophysicists, and software engineers are responsible for creating and maintaining this suite of signal-processing and subsurface imaging tools.
We're looking for talented low-level software developers who are keen to apply their skills to a new scientific domain. We operate a mixed C / C++ / Python / Java environment and make heavy use of CPUs (incl. Intel Xeon Phi and its AVX-512 instruction set) and GPUs (via CUDA). You'll leverage your experience to determine when it's worth it to operate in C, to decide when there's value in hand-vectorising, and when it's a waste of time. When submitting your application, you'll show that you have an attention to detail by including ‘Shibboleth' in your cover letter.
List Of Responsibilities
- High- and detailed-level design of scientific processing software
- Implementation, testing, optimisation and maintenance of software written in the most appropriate language to solve each problem (including Java, C/C++ and Python)
- Inspection and maintenance of software written by other members of the team
- Becoming conversant in the problem domains of new and existing products
- Acting as 3rd-level technical support, for otherwise-unresolvable customer issues
- Providing and receiving regular, constructive feedback to and from your peers
- Collaborating on priority and scheduling for rapid product iterations
- Acting as mentor for an exceptional intern or junior developer
- Demonstrable expert-level skills as a software developer in C or C++ (if you also have Java or Python expertise, so much the better)
- Demonstrable abilities in low-level performance optimisation (you should be comfortable having an in-depth conversation about concepts such as threading, concurrency, vectorisation, memory alignment, loop unrolling, etc.)
- A history of advanced work in some of our major focus areas, such as data management, large I/O, highly-parallel computing, or numerical processing (in another industry is fine; we're interested in the "how", not the "why")
- Excellent written and spoken business and technical English, suitable for working directly with clients
- A position in one of the most exciting high-tech companies in Australia
- An international team with some of the best software engineers from all over the world
- A low overhead, flat management structure designed to minimise bureaucracy so you can focus on what you're great at
- Centrally located in Australia's sunniest capital city, modern offices with end-of-trip facilities, views over Kings Park and nearby food options
- Opportunity to participate in organised social events with like-minded colleagues
Disclaimer
The offer is subjected to pre-employment screenings that may include, but are not limited to:
- Verification of your right to work in the respective location
- Provision of applicable and relevant qualifications
- Nationally approved criminal history check
Create a free Caio profile to unlock more results and save your role and location preferences.
Unlock free search