Senior Research Engineer

Job description

Pupil is looking for a Research Engineer to join us on our mission to build the most accurate and robust 3D reconstruction and scene understanding system for the built environment.

Candidates should have proven experience in computer vision and related topics such as geometry processing, computer graphics and machine learning.

The ideal candidate is someone who enjoys working on challenging problems, finding solutions to them and turning the solutions into production services that are at the core of an ambitious start-up.

As a Research Engineer, you will need to be versatile with the computer vision techniques you use and enjoy developing new skills.

Your time will be spent working with our image and 3D datasets, so familiarity with common 3D vision data structures and formats is essential

Past experience working on 3D reconstruction and deep learning-based scene understanding problems would be a big plus.

Now is an exciting time to join us in a disruptive, technology-focused business with big ambitions for the future.

  • Research and develop algorithms that capture, process and manipulate our image and 3D data
  • In collaboration with software engineers create production quality, robust code that will be used on an industrial scale
  • Maintain, improve and optimise algorithms to improve performance and efficiency
  • Stay up to date with the latest technologies and research in computer vision, computer graphics and machine learning. Communicating the latest advances with the wider team when they should be applied to our data

Job requirements

  • Masters in Machine Learning/Computer Vision/Geometry Processing or related mathematical disciplines
  • 1-2 years experience developing computer vision algorithms that process image and 3D data
  • Strong programming skills in Python and/or Modern C++
  • Experience with any of these libraries such as OpenCV, Open3D, TensorFlow, PyTorch
  • Ambition and a hunger for growth and development
  • Can provide examples of projects that demonstrate your skills

Experience with at least one of our core areas:

  • Deep Learning (CNNs, GANs, RNNs, transfer learning)
  • 3D Reconstruction (stereo, bundle adjustment, SLAM)
  • Geometry Processing (meshing, parameterisation, approximation)
  • Computational Photography (image enhancement, denoising)


  • Demonstrate commercial experience where you have tackled challenging problems and have solutions running in production
  • Experience working with cloud infrastructure (we use both AWS and GCP)
  • Experience with software engineering best practices e.g., test-driven development, continuous integration and continuous deployment