Vacancies for Research Engineers

If you are a Prospective Industry Sponsor and would like to list a vacancy on this page, please contact

If you are a prospective Research Engineer, you can apply here.


Ref: codeplay-2017-01

Large-Scale Data Processing using Heterogeneous Parallel Systems

Codeplay Software Ltd is an independent company that is based in Edinburgh. Codeplay is internationally recognized for expertise in Heterogeneous Systems, and has many years of experience in the development of Compilers, Runtimes, Debuggers, Test Systems, and other specialized tools.

Codeplay has delivered standards-compliant systems for some of the largest semiconductor companies in the world, focusing specifically on high-performance heterogeneous processor solutions for CPUs, GPUs, DSPs, FPGAs and other specialized imaging and vision processors. Working within The Khronos™ Group to define new open standards such as OpenCL™, SPIR™, SYCL™, and Vulkan®, and leading the creation of new System Runtime and Tools standards through the HSA Foundation, Codeplay has earned a reputation as one of the leaders in compute systems.

This project will investigate large-scale data processing using heterogeneous parallel processing systems. Self-driving autonomous vehicles and other AI applications, such as natural language processing, will generate massive amounts of data from a large number of sources (e.g. multiple cooperating vehicles in a city). The problem is to collate, analyse and process this data quickly and effectively. The project will study advanced algorithms that can effectively exploit new heterogeneous parallel processing systems for this purpose (comprising e.g. a mixture of CPUs, GPUs, DSPs and FPGAs). This will involve embedded processing, centralised processing (e.g. to collate/analyse data from multiple distinct sources) and/or peer-to-peer processing (for information sharing, to allow better use of computing resources, or to support e.g. flocking-style behaviours from multiple cooperating autonomous systems).

We would expect a successful applicant to have experience of:

  • Parallel Programming
  • Programming language implementation
  • Heterogeneous parallel systems (CPU, GPU, FPGAs) (optional, but an advantage)
  • Artificial intelligence (optional, but an advantage)
  • Handling large volumes of data (optional, but an advantage)

The successful RE will work in our office in Edinburgh, as part of the research team supervised by Uwe Dolinsky.