arrow_back_ios Back to List

Runtime Engineer

Codeplay’s mission is to build the largest open ecosystem for accelerator computing target. To achieve this, we provide tools and implementations to support heterogenous languages on a wide range of accelerator hardware.

Responsibilities

  • Work on designing and implementing new runtime language features, for SYCL, OpenCL or other languages
  • Work on designing and implementing parallel language runtime APIs for:
    • SYCL language runtime.
    • Unified Runtime and LLVM liboffload.
    • Implementing runtimes on top of vendor specific heterogeneous APIs.
  • Profile, benchmark and optimise parallel language implementations for execution or compile times.
  • Debug and fix reported bugs.
  • Potentially contribute to relevant standards groups, including SYCL, OpenCL, and SPIR-V.
  • Contribute to testing and CI.
  • Contribute to project documentation.
  • Work within an agile software development team.
  • Share knowledge with other engineers in your team and in the company.

Required Skills

The ideal candidate is a self-motivated individual who can work through a problem from start to finish, meet deadlines as required to support software projects, and has the ability to work under pressure. In this role you will be working on technology that is seldom announced to the public and could be several years away from public release, so confidentiality is critical. You should be able to work both independently and collaboratively within teams of varying skill sets and expertise. You should be welcoming towards, and able to adapt to, the introduction of new technologies, responsibilities and projects, as Codeplay works with cutting-edge technology and takes on a diverse range of projects.

  • Good working knowledge of C++ (e.g. usage of post C++11 constructs, familiarity with STL containers, etc).
  • Experience with tooling such as build systems and source control.
  • Ability to develop robust, maintainable, efficient and testable code for secure and reliable systems.
  • Develop correct, fast and scalable multithreaded and parallel programs.
  • Learn new technologies and development approaches on the job.
  • Excellent communication skills, both verbal and written.

Beneficial Skills

Knowledge and/or experience of any of the following would be useful for the role, but are not essential. You must be able to learn new skills, but will be given support from Codeplay’s team to get you up to speed.

  • Experience working on a parallel or heterogeneous language runtime.
  • Experience working on compilers, particularly the Clang/LLVM projects.
  • SYCL, OpenCL, CUDA, Vulkan, etc.
  • HLSL/GLSL/other shading language environments.
  • Knowledge of SPIR-V intermediate language.
  • Craft cross-platform (Various Linux flavours, Windows) solutions.
  • OS-level and/or driver development.
  • Object file formats.
  • Experience profiling and optimising performance and memory system usage.


Your application has been sent successfully. Someone should contact you within the next two working days to confirm we have received your application.

Apply

If you want to apply for multiple positions with this application, please select the relevant positions from below.
  • Runtime Engineer