Optimization Team Lead

AnyVision, Research · Full-time

About The Position


AnyVision Research UK is a world leading team of scientists and engineers that creates AI for the Real World. With deployments and clients spanning the globe, we are recognised as leaders in the fields of Face Recognition, Object Recognition, Object Detection, and Visual Target Tracking.

 

Any Vision is dedicated to providing a diverse and flexible work environment so that we can recruit and retain the best talent. Working for Any Vision you will:

 

  •         Be a part of a diverse, multinational and inclusive team
  •         Receive challenging work and assignments
  •         Receive world class training and experience on cutting edge systems and complex projects
  •         Be supported by a flexible and supportive work environment

 

As we grow in scope and ambition in 2019, we are looking for a highly motivated individual who will be responsible for leading a team of 4 optimization engineers. The primary goal of this team of engineers is to improve the runtime of AnyVision’s leading algorithms, which have been deployed on a range of hardware devices (e,g, NVIDIA, Qualcomm, Intel, Ambarella, etc).


You are:

You are a highly motivated individual with a rigorous, meticulous, and scientific approach to life. You are also passionate about technology and software. You will have completed a degree in a scientific discipline, with some emphasis on programming. You will likely also have studied to a higher level (e,g, MSc or PhD, within a technical discipline). You will have had significant exposure (at least 2 years) to the development of highly parallelized software within a commercial environment. You will also be a confident individual who has experience leading a group of engineers and delivering to tight deadlines in a fast paced environment.


You will:

Your primary responsibility is to lead, expand, and direct AnyVision’s growing optimisation team within AnyVision’s Belfast office. Currently a team of 4 engineers focusing on Deep learning runtime optimisation with 3rd party SDKs (Intel OpenVino, Qualcomm SNPE, Nvidia TensorRT, ARM NN), kernel optimisation (CUDA), and heterogeneous languages (Halide, TVM), our goal is to significantly expand the team inline with our ambitions for wider market penetration and algorithm deployment ‘anywhere’.

The main responsibilities of the team are to design, implement and maintain linear algebra and machine learning libraries in C++, implementing, optimising and parallelising deep learning algorithms, and prototyping pipelines with 3rd party SDKs. Over-time, our goal is to reduce reliance on manufacturer provided inference engines.

A strong component of your day-to-day work will include mentoring and leading the team in developing robust and portable parallel algorithms to support deep learning execution and computer vision. This position requires solid working knowledge of modern C++11, GPGPU, (CUDA, OpenCL, SYCL) and understanding of generic programming and high-level C++ abstractions.

We deploy our algorithms everywhere from cloud systems with enterprise GPUs (e.g. Nvidia T4) down to low-power edge devices (e.g. Nvidia Nano, Intel NUC) and smartphones.

Requirements


Must have skills:

  • Experience of leading projects and mentoring
  • Strong knowledge and experience of C++11
  • Ability to work with generic, heavily templated C++ code
  • Development of fast, scalable and correct concurrent programs
  • Knowledge and experience of software parallelization techniques
  • Profiling and minimisation of memory footprints, data movements, allocations and de-allocations
  • Performance profiling and optimization
  • Knowledge and experience of the GPGPU programming models like CUDA, OpenCL, SYCL
  • Ability to debug code effectively
  • Working knowledge of version control systems
  • Craft cross-platform (Linux, Android and/or Windows) solutions
  • Learn new technologies and development approaches on the job
  • Excellent communication skills, both verbal and written

Desirable skills:

  • Engineering knowledge of machine learning frameworks such as TensorFlow or Caffe
  • Knowledge of machine/deep learning

Benefits:

  • Highly competitive salary and regular salary reviews
  • Technical training
  • Contributory pension scheme
  • Private healthcare
  • Gym membership
  • Flexible working
  • Regular company social events and activities

Location:

Belfast, United Kingdom

The closing date for applications:

14th September 2019

Apply for this position