Robotics Research Software Engineer

Last updated one month ago
Job Type:Full Time

"We are on a mission to transform the future of grocery retail through sustained technology innovation.”

Ocado Technology is putting the world’s retailers online using the cloud, robotics, AI, and IoT. We develop the innovative software and hardware systems that power, the world’s largest online-only grocery retailer as well as the global ‘Ocado Smart Platform’. With everything from websites to fully autonomous warehouse that we design in-house, our employees need to be specialists in a wide range of technologies to help drive our business.

What does the Robotics Research Team do?

The Robotics Research team is working on sensor-guided robotic systems to further improve the efficiency of our operation. Our primary goal is to find the best way to deploy robots in the production of grocery orders. In order to do this, we pursue cutting-edge research into state of the art algorithms, sensing technologies, and manipulation techniques.

As part of our effort to be in the vanguard of robotics research, the team is involved in two European Union funded Horizon 2020 research projects with a number of leading European Universities:-

  • The SoMa project is concerned with using inherently compliant robotic mechanisms in order to exploit environmental constraints to manipulate objects with a wide variety of properties in highly variable environments. More details of the project and the list of other participants can be found at the project's website:
  • Ocado is the project coordinator for the project SecondHands: the aim of the project is to develop a robot that will act as an assistant to Ocado maintenance technicians that is able to understand a technician's activity and pro-actively offer assistance in a timely manner, i.e. it will behave as a second pair of hands for the technician. More details of the project and the list of other participants can be found at the project's website:

In addition to these projects, the team liaises with a number of leading universities performing robotics and/or computer vision research and we often host student interns.

As a Robotics Research Software Engineer you will be working on the research, design and development of novel sensor-guided robotic systems, in order to demonstrate the ability of such technology to further enhance the already highly automated Ocado product delivery systems.

As a Robotics Research Software Engineer you will be responsible for:

  • Participating effectively in investigating and implementing sensor-guided robotics solutions to specific automation problems.
  • Taking an active role in the choice of technologies and techniques used in the delivery of robotics application demonstrators.
  • Performing mathematical modelling and algorithm development to achieve real-time sensor-guided robot motions.
  • Developing software that implements novel and sophisticated solutions to specific robotic applications.
  • Documenting theoretical developments and their software implementation.
  • Demonstrating working pre-production systems and thoroughly test them to establish their operational limits.
  • Liasing with production engineering for the purpose of aiding the adoption of newly developed solutions.

What we look for...

  • 2:1 or 1st class degree in one of the following subjects:-

* Computer Science,
* Joint Maths and Computing,
* Robotics, Cybernetics, Mechatronics or Information Engineering with a strong software engineering component.

We’d love to talk to you if you have…

Strong 3D mathematical skills and experience of using them in the development of software in a number of the following domains:-

  • Analysis of robot-environment interaction, grasping and the exploitation of environmental constraints to guide robot motion
  • Robot motion planning including compliant motion
  • Impedance control
  • Machine learning techniques used in the real time control of robotic manipulation
  • Spatial occupancy and collision prediction/avoidance
  • Sensor guided robot motions, particularly 3D vision guidance
  • 3D modelling and meshing algorithms
  • Level-set methods

In addition, demonstrable experience and an understanding of the underpinning techniques (where applicable) of a number of the following is required:

  • Primary Development Language - Python,C/C++ (using the GCC toolchain and Qt4)
  • Other Languages - Unix shell scripting, Java,
  • Libraries - OpenCV, Point Cloud Library, OpenGL, OpenMesh or MeshLab, GNU Scientific Library, Numerical Recipes, Computational Geometry Algorithms Library
  • Documentation tools - Doxygen, LaTeX
  • Development tools - Git or Git Lab
  • Operating system - Linux (Ubuntu)

Experience with programming an industrial robot arm would be beneficial, but not essential providing strong programming skills in other areas can be demonstrated.

Other software development skills of interest are those applicable to real-time systems and multi-tasking/multi-threading.

What we can offer you

Our employee benefits are designed for you, we care about people and we’ve ensured we have a wealth of benefits that focus on your well-being. Within our flexible environment we can offer technically stretching work, a competitive salary and share schemes. Benefits include pension scheme, train season ticket loan (interest-free), free shuttle bus from Hatfield train station and of course, healthy Ocado retail staff discounts.

We also have regular divisional socials, sports clubs not to mention the Ocado Technology Academy for a packed schedule of courses, conferences and events such as discussion sessions, conference briefs and external guest speakers. If you think you have what it takes to make a difference, please submit your application below.

Due to the energising nature of Ocado's business, vacancy close dates, when stated, are indicative and may be subject to change so please apply as soon as possible to avoid disappointment.

Please note: If you have applied and been rejected for this role in the last 6 months, or applied and been rejected for a role with a similar skill set, we will not re-evaluate you for this position. After 6 months, we will treat your application as a new one.

Be bold, be unique, be brilliant, be you. We are looking for individuality and we value diversity above gender, sexual orientation, race, nationality, ethnicity, religion, age, disability or union participation. We are an equal opportunities employer and we are committed to treating all applicants and employees fairly and equally.