Experience writing production-level C/C++; experience with C++11 (and later), real-time systems, and generic programming are highly desirable.
Working knowledge of Python 3 with packages like numpy, scipy, opencv etc. Ability to quickly prototype and profile algorithms in Python.
Strong Mathematical fundamentals including Linear Algebra, Vector calculus, Probability theory, Numeric optimization. Experience implementing math effectively in software; experienced in Eigen, Ceres, Boost, etc.
Strong background in core problems in robotics, including Bayesian state estimation (e.g., MAP, MMSE, MLE), 3D reconstruction, Structure-from-Motion, Visual Odometry, Visual Inertial Odometry, Bundle Adjustment etc.,
Experience working in a Linux environment.
Working knowledge of Git: creating and merging branches, cherry-picking commits, examining the diff between two hashes. More advanced Git usage is a plus, particularly: development on feature-specific branches, squashing and rebasing commits, and breaking large changes into small, easily-digestible diffs.
Background in Computer Science, Robotics, Physics, similar field(s) of study, or equivalent practical knowledge