About this role
Salary: £65,000 - 65,000 per year
Requirements
- At least 3 years of relevant software engineering experience with C or C++
- Practical experience in control systems or robotics
- Experience developing closed-loop algorithms to control multiple motors or servo mechanisms, including PID/PI tuning and position or velocity control
- Sound understanding of gearing, inertia, friction, backlash, acceleration, overshoot, oscillation, and stability
- Experience with motor drives, feedback devices, and real-time software
- Degree in engineering, or equivalent qualification or experience
- Python
- RTOS
- Linux development, scripting, and system diagnostics
- General embedded systems experience
- Advanced control or estimation methods, such as feed-forward control, Kalman filtering, sensor fusion, or system identification
- Experience with IMUs, gyroscopes, accelerometers, GNSS, or multi-axis motion-control systems
- MATLAB/Simulink or Python-based control and simulation tools
- Experience with interfaces such as CAN, SPI, I2C, UART/RS-485, or Ethernet
- ROS 2, ros2_control, CANopen/CiA 402, or EtherCAT
Responsibilities
- Develop low-latency control systems for multi-axis movement to dynamically search for and track satellites using feedback loops
- Deploy control systems on embedded Linux or microcontrollers
Technologies
- Embedded
- Ethernet
- Linux
- Matlab
- Python
- ROS
- Robotics
- RS-485
- Sensor Fusion
- C++
- EtherCAT
More
We offer a Senior Software Engineer role with significant autonomy across architecture and implementation. Our work involves complex challenges in geometry, coordinate systems, and real-time astronomical tracking.
last updated 45 week of 2026