Software Engineer
About Farsight Vision:
Farsight Vision develops AI-powered geospatial intelligence solutions for defence and security operations. The platform transforms raw aerial and sensor data into real-time 3D environments, actionable analytics, and AI-assisted operational scenarios, enabling enhanced situational awareness, mission planning, and faster decision-making for both human operators and autonomous systems. We operate at the intersection of geospatial data, computer vision, and defense operations — and if that interests you, read on.
We are looking for a Robotics Engineer to own motion control for our unmanned ground vehicle (UGV) end-to-end — from control theory on paper to a robot that actually moves the way you designed it to. This is not a role for someone who wants control loops handed to them pre-tuned: you will design, implement, and validate them on hardware yourself.
Responsibilities:
- Implement navigation and control algorithms for different types of UGVs: differential drive, tracked wheels, Ackermann steering, etc.
- Design and implement control algorithms (PID and beyond) that translate navigation commands into reliable robot motion.
- Own the control stack end-to-end — from algorithm design through tuning and validation on the physical unit.
- Simulate physical driving for different types of wheels and terrains before deploying to hardware.
- Work closely with the Robotics team on actuator and sensor integration, since control quality is only as good as what it’s built on.
- Debug control issues that only show up in the field, not in simulation — this role is hands-on with the physical robot in Lviv.
- Collaborate with the Perception Engineer so control decisions correctly account for obstacle and environment data.
- Propose architecture and design decisions rather than waiting to be handed a fully-scoped ticket: this is a small team building a new capability almost no one in the Ukrainian market has shipped yet.
Requirements:
- Strong mathematical foundation: linear algebra, calculus, and the algorithmic thinking control systems are built on.
- Practical experience with control theory — PID control at minimum, ideally more advanced control approaches.
- Background in robotics, guidance, or navigation systems (e.g., autonomous vehicle guidance, drone terminal guidance, or similar).
- Experience with physics simulators (e.g. Gazebo, NVIDIA Isaac, MATLAB, Simulink), with the ability to simulate dynamic models and verify controller performance before deployment.
- Experience working with sensors such as IMU, LiDAR, etc.
- Knowledge of state estimation and filtering (e.g. Kalman filter, extended Kalman filter, complementary filter).
- Solid programming skills in C++ (and Python for prototyping).
- Good OOP skills — ability to write and design clean code that’s flexible to extend and maintain.
- Comfortable working close to hardware, not purely in a software abstraction layer.
- Upper-Intermediate+ English.
Nice to have:
- Experience with ROS/ROS2
- Path planning algorithms (A*, D*, RRT, etc.)
- Prior work on UAV or UGV guidance/navigation systems
- Defense-tech or military-tech industry exposure
- Embedded systems or hardware-adjacent experience
Security Eligibility:
Our platform is actively used by the Armed Forces in live operations. As an Estonian-Ukrainian defence technology company handling sensitive operational data, we have a responsibility — legal, ethical, and practical — to ensure the integrity of everyone on our team.
All candidates must be able to confirm the following:
Neither you nor your close relatives (parents, spouse, siblings, children) reside in Russia, Belarus, or temporarily occupied Ukrainian territories
You have no regular personal, financial, business, or professional contact with individuals in those territories
You consent to a deeper security verification if the process advances to later stages
If any of the above criteria are not met, please do not proceed with your application.
Why Farsight Vision
We are a startup operating under real-world conditions — our product is in active deployment, and the pace reflects that. We are not a company where you get to run the same experiment three times until it’s elegant — we need someone who wants to see their control loop working on a real robot within weeks, not quarters, and who is motivated by the fact that what you build here gets used, not shelved.
Flexible working hours. Paid vacation and sick leave. Direct access to founders and leadership.
Application Process:
- Apply with your CV and a brief cover letter explaining your interest and relevant experience
- Complete a short practical assignment involving a control/navigation problem drawn from our platform
- Interview with the Recruiter and Lead Robotics Engineer