Share

16 January 2019

Research Software Engineer, Autonomy

Project Engineer, Autonomy
Location: New York
Reports To: Senior Engineering Manager, Autonomy Lead

The Drone Racing League (DRL) is the premier, global drone-racing league, and producer of world-class drone sports content. At once a tech, media, events, and sports company, DRL blends a diverse array of disciplines and industries.

Job Description:

We are seeking a Research Software Engineer with great robotic motion and path planning algorithm design skills and experience to help the Autonomy team in researching, designing, developing, and implementing, the best motion planning algorithm(s) and software for autonomous drone technology.  The ideal candidate is highly experienced with developing optimal motion and path planning algorithms, expert in robotic navigation in GPS-denied environments, has designed and implemented algorithms such as SLAM, possesses hands-on experience with the latest toolsets in motion and path planning software stack and has demonstrable experience. Demonstrable experience is experience that can be shown in the form of prior job experience, or extensive school experience through projects and/or academic research papers where a lot of practical experience was acquired, or by showcasing personal projects. You will be responsible for helping the Autonomy team in researching and developing autonomous motion and path planning algorithms and software to aid in autonomous flight. You will be an integral part of the Autonomy team designing DRL’s autonomous drones. 

Required Qualifications and Responsibilities:

  • Research and develop path planning and motion planning algorithms for autonomous flight. 
  • Use Computer Vision based perception and feedback data to use in motion and path planning.
  • Use sensor fusion data such as that from cameras, inertial sensors, rangefinders, etc. for path planning.
  • Demonstrable experience in designing and implementing robotic navigation in GPS-denied environments.
  • Experienced in implementing algorithms like Active SLAM, SLAM, GraphSLAM, Visual SLAM, EKF-SLAM, etc.
  • Experienced in designing and implementing path planning algorithms such as A*, D*, RRT, RRT*, PRM, etc. 
  • Experienced in implementing Dead Reckoning algorithms.
  • Knowledgeable in implementing Kalman Filters, Extended Kalman filters, and/or Particle Filters. 
  • Well versed in using principles such as Bellman’s principle of optimality and with mathematical optimization methods such as dynamic programming.
  • Knowledgeable in graph theory, decision theory, and algorithms like Dijkstra’s algorithm, shortest path, etc.
  • Knowledgeable in designing sampling-based planning algorithms that are probabilistic complete.
  • Knowledgeable in working with both holonomic and non-holonomic constraints. 
  • Excellent computer science fundamentals and advanced knowledge in data structures and algorithms.
  • Investigate between different algorithms for motion and path planning for Autonomy.
  • Perform mathematical asymptotic analysis on running time of algorithms and computational complexity.
  • Ability to research and design algorithms in MATLAB / Simulink using Control System toolbox. 
  • Bachelor’s Degree in Computer Science, Computer Engineering, Robotics Engineering, Electrical Engineering (Control’s background), or a technically related field. 

Bonus Qualifications:

  • 3-5 years of experience in researching, developing, and implementing optimal sampling based probabilistic complete robotic motion and path planning algorithms. 
  • 3-5 years of experience developing motion and path planning algorithms in MATLAB / Simulink or similar.
  • Extensive experience implementing SLAM, EKF-SLAM, and algorithms for GPS-denied environments.
  • Expert in Computer Science for Artificial Intelligence and control theoretic optimization problems.
  • Expert in designing algorithms for autonomous guidance, navigation, and control for GPS-denied environments.
  • Able to mathematically define optimal and dynamically feasible trajectories. 
  • Familiarity with UAV dynamics, system identification, model based and model predictive controls.
  • Ability to write software in C/C++ or Python to showcase simulation of path planning algorithms.
  • Demonstrable experience in generating dynamically feasible trajectories and optimum trajectories with UAV. 
  • Well versed in LQ control, state estimator / observer design, transfer function generation, transfer function to state space conversions, linearization around operating / equilibrium point, PID control.
  • Familiarity with non-linear control system design approaches such as feedback linearization and SDRE control. 
  • Knowledgeable in Computer Vision methods and algorithms.
  • Ability to do frequency domain analysis such as Root Locus and Nyquist plots etc.
  • Familiarity with assessing stability via Lyapunov’s stability theory. 
  • Familiarity with Machine Learning algorithms.
  • Experience using OMPL and OpenCV.
  • Familiarity with Keras, Tensorflow, or similar APIs and toolsets. 
  • Experience with writing software in either Python or C/C++ a plus.
  • Experience with source code control such as GitHub a plus.
  • Master’s Degree in Computer Science, Computer Engineering, Robotics Engineering, Electrical Engineering (Control’s background), or a technically related field.

DRL offers a compensation package that is commensurate with experience and abilities. Please apply to jobs@drl.io

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×

Subscribe To Our Newsletter

Join our mailing list to receive the latest news and updates from the DRL team.

You have Successfully Subscribed!