At Ascent, our Robotics Engineers are focused on developing the interface between our AI systems and the physical world transferring our research results into reality. They not only develop code but also make it work on our robotic arms, both real and virtual.

As a member of the Robotics Engineering Team, you'll work closely with software engineers and researchers on our diverse and stimulating range of projects including: designing robotic architectures, developing cutting edge algorithms and prototype applications, providing software design and programming support, along with implementing full robotic solutions. You won't spend all your time over your favorite IDE or editor though, we have plenty of hands-on work to validate our algorithms on real hardware.

At Ascent we are creating a passionate and engaging culture, combining the best of academia and product-led environments, providing a balance of structure and flexibility. Our approach encourages collaboration across all groups within the research team, leading to creativity and innovative breakthroughs at the forefront of robotics.

Responsibilities

  • Architect and implement software libraries
  • Design, build and integrate robotic systems
  • Provide software design and programming support to research projects
  • Report and present software development status and project progress

Requirements

Minimum Qualifications:

  • BSc/BEng degree in computer science, engineering, robotics, or equivalent
  • Strong math and physics foundation
  • Proficient in C/C++, with strong command of CS fundamentals
  • Experience with Python
  • Familiarity with software collaboration tools (git, Jira, etc.)
  • Good Linux knowledge
  • Self-motivated learner
  • Experience at least one of the following robotic subjects:
  • Computer vision (Conventional or Deep-Learning based)
  • Control theory
  • Numerical Optimization
  • Sensor fusion
  • Path planning (IK, A*, RRT, ...)
  • Experience working with one or more of the following software areas:
  • Experience with a robotic middleware (ROS, ROS2, OpenRTM, Orocos, etc.)
  • Industrial robots programming (FANUC KAREL, Kawasaki AS, Staübli VAL3, KUKA KRL, ABB RAPID...)
  • Computer vision or perception (OpenCV, PCL, ...)
  • Implementing machine learning software (with Tensorflow, Pytorch, Caffe...) or platforms (such as Kubeflow, Polyaxon, ...)
  • Firmware/embedded systems engineering​

Plus points for any of the following:

  • Master's degree or further education
  • Experience with GPU Programming (CUDA, OpenCL)
  • Understanding of real-time operating systems constraints
  • Experience with automated testing and deployment (CI/CD) pipelines
  • Strong debugging skills
  • Interest in machine learning and AI
  • Experience using machine learning platforms, tools and libraries
  • Knowledge of Ethernet, Serial and other network protocols and their usage
  • Experience with GAZEBO robot simulation
  • Contributions to Open Source projects