Computer Vision Software Engineer

AnyVision, Research · Full-time · Intermediate

About The Position

AnyVision Research 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 recognized as leaders in the fields of Face recognition, Object recognition, Object detection, and Visual Target Tracking.

AnyVision provides a diverse and flexible work environment so that we can recruit and retain the best talent. Working for AnyVision 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 into 2021, we are looking for highly motivated C++ Computer Vision engineers to join our Research Engineering team.


You are:

A talented and motivated engineer with a strong interest in development and building software systems. You are also passionate about the impact that AI is having in the world and you want to be part of it. You have completed a degree in a scientific or engineering discipline. You can adapt to new environments and solve new problems quickly. You are adept at producing innovative solutions based on real-world product requirements. You have strong communication and teamwork skills.

You will:

As a member of the Research team you will develop software that ensures robust and reliable execution of our cutting-edge AI portfolio. This could include algorithm implementation, hardware optimization, pipelining and proof of concept prototyping. Working at AnyVision offers the opportunity to help deliver world leading AI technology. We offer unique opportunities and challenges to learn new technologies and be at the very bleeding edge of the computer vision and machine/deep learning industry. Within the research engineering team, projects include:

●       Developing and optimizing machine/deep learning and computer vision algorithms

●       Producing reference implementations of state-of-the-art artificial intelligence algorithms that have been developed by our machine/deep learning researchers

●       Integrating deep learning components into robust pipelines.

●       Creating tools and tool sets (custom kernels, APIs, test systems/suites, etc.) for state-of-the-art hardware

●       Research and development into emerging heterogeneous languages (Halide, TVM, OpenCL)

●       Prototyping new hardware specific deep learning inference engines and pipelines (e.g. TensorRT, OpenVino, Qualcomm SNPE, ARM NN)

●       Integrating computer vision components within the GStreamer multimedia framework.

Required Skills/Experience:

●       A bachelor’s degree or higher in a relevant engineering or mathematical field

●       Experience of at least one of the machine learning inference frameworks:TensorRT, Caffe, OpenVino, SNPE, ARM NN OR at least one GPGPU frameworks: OpenCL/CUDA/C++AMP/other OR experience developing GStreamer components/pipelines with a broad understanding of video codecs, colour-space/pixel-formats and streaming protocols.

●       Strong knowledge and experience of C++11 onwards

●       Experience developing robust, maintainable, efficient and testable code for secure and reliable systems

●       Minimisation of memory footprints, data movements, allocations and de-allocations

●       Development of fast, scalable and correct concurrent programs

●       Cross-platform (Linux, Android and/or Windows) development

●       Profiling and optimisation of performance and memory system usage

●       Experience with software development practices e.g. debug tools, agile, design patterns

●       Experience with source control and collaborative development tools

●       Excellent communication and teamwork skills

●       Minimum 1 year industry experience or equivalent

Desirable Skills/Experience:

●       A PhD in a relevant engineering or mathematical field

●       Computer vision experience

●       Experience developing for hardware devices such as DSPs, FPGAs, embedded Linux

●       Clang/LLVM compiler projects

●       Knowledge/experience of domain specific languages (e.g. Halide/TVM)

●       OpenVX


UK, London or Belfast

Apply for this position