Senior C++ Software Engineer – Robotics in Cambridge

Senior C++ Software Engineer – Robotics in Cambridge

Cambridge Full-Time 63000 - 77000 £ / year (est.) Hybrid
F

At a Glance

  • Tasks: Develop cutting-edge C++ software for autonomous raspberry-picking robots in real-world environments.
  • Company: Join Fieldwork Robotics, a pioneering company transforming agriculture with intelligent robotics.
  • Benefits: Enjoy competitive salary, profit sharing, hybrid work, and flexible hours.
  • Other info: Collaborative team environment with excellent career growth opportunities.
  • Why this job: Make a tangible impact on farming efficiency while working with innovative technology.
  • Qualifications: Strong C++ experience, ROS2 knowledge, and a passion for robotics required.

The predicted salary is between 63000 - 77000 £ per year.

  • Senior C++ Software Engineer – Robotics
  • Job Type: Permanent, Full-time

Requirements: Candidates eligible for UK employment

Company

Overview: Fieldwork Robotics is a pioneering autonomous robotics company developing modular, multi-crop, soft and adaptive robots designed to operate in real-world, non-controllable environments such as agricultural fields.

Our mission is to transform farming through intelligent, scalable robotic systems that improve productivity, sustainability, and efficiency.

We operate a growing R&D headquarters in Cambridge and are establishing a new engineering hub in Lisbon following the incorporation of our Portugal subsidiary.

Our teams work collaboratively across hardware, software, and operations to deliver reliable, production-grade autonomous robots.

  • Why
  • Join

Us: We’re building autonomous robots that operate in one of the most challenging real-world environments imaginable: soft, irregular plants, dense foliage, moving targets, variable lighting, wind, and real commercial performance constraints.

As a Senior C++ Software Engineer, you’ll be responsible for developing the core robot control software that enables our robots to reliably, efficiently, and profitably pick raspberries in the field.

You’ll work at the intersection of robot control, perception, planning, and real-time systems, turning vision and ML outputs into robust physical actions.

This is a hands-on role with real machines, real crops, and real commercial targets.

What you’ll be doing

  • Design, develop, and maintain and deploy high-performance modern C++ 20 software for production autonomous raspberry-picking robots
  • Build robot control systems using ROS2 and ROS2 Control, integrating with hardware drivers, actuators, and sensors
  • Consume perception outputs from vision and ML systems (fruit detection, tracking, quality estimation) and convert them into actionable robot behaviour
  • Implement and improve algorithms for: Fruit tracking and state estimation Object detection integration Path and trajectory planning Obstacle avoidance in cluttered, deformable environments Pick sequencing and optimisation under uncertainty
  • Fruit tracking and state estimation
  • Object detection integration
  • Path and trajectory planning
  • Obstacle avoidance in cluttered, deformable environments
  • Pick sequencing and optimisation under uncertainty
  • Develop mathematical and algorithmic solutions to real-world robotics problems involving noise, latency, dynamics, and partial observability
  • Control and optimise the full pick cycle
  • Log performance data from the robot and build diagnostics, metrics, and tooling to analyse failures and improve reliability, speed, and yield
  • Debug complex system-level issues spanning software, hardware, perception, and environment
  • Drive improvements in robot performance against commercial KPIs such as pick success rate, throughput, damage rate, and uptime
  • Collaborate closely with robotics, vision, ML, mechanical, electronics and embedded systems, and operations teams to ship integrated solutions

What we’re looking for

  • Strong professional experience writing modern C++ in production systems
  • Docker/containerised deployment
  • Solid experience with ROS2 and ROS2 Control in real robotic platforms in distributed robotic architectures
  • Proven ability to write robust, maintainable, and testable control software
  • Experience working with perception outputs (vision, ML, sensor fusion) in robotics
  • Strong foundations in core software engineering principles coupled with a strong ability in mathematics
  • Experience with motion planning, trajectory generation, or real-time robot control
  • Comfortable working in complex, noisy, real-world environments (not just simulation)
  • Practical debugging skills — you enjoy finding the root cause of complex, cross-disciplinary problems
  • Experience working with production level software

Engineering practices & tooling

  • Git Lab for version control and code review and CI/CD pipelines
  • Jira for planning and delivery tracking
  • Structured release processes and versioning strategies
  • Emphasis on code quality, documentation, and long-term maintainability

Nice to have

  • Experience with embedded/edge compute platforms (e. g. NVIDIA Jetson-class hardware)
  • Familiarity with cloud platforms, data systems, and fleet-level software
  • Experience with agricultural, mobile, or outdoor robotics
  • Familiarity with real-time systems, hardware interfaces, or embedded Linux
  • Experience tuning systems based on field data and operational feedback
  • Background in optimisation, estimation, or probabilistic robotics

Why this role matters

Your work directly determines whether the robot

  • picks the right fruit
  • avoids damaging crops
  • operates fast enough to be commercially viable
  • survives real farms, real weather, and real seasons
  • You won’t just be writing software — you’ll be driving the robot to hit its performance and commercial targets.

What We Offer

  • Competitive salary and benefits package
  • Profit sharing / share options
  • Hybrid working model
  • Flexible working hours
  • On-site parking (UK)
  • Casual dress
  • Company events & social activities
  • Career progression in a fast-scaling robotics company
  • Opportunity to work on real-world autonomous robots deployed in production environments

Senior C++ Software Engineer – Robotics in Cambridge employer: Fieldwork Robotics

Fieldwork Robotics is an exceptional employer, offering a dynamic work culture that fosters innovation and collaboration in the field of autonomous agriculture. With opportunities for professional growth and hands-on experience in real-world applications, employees can thrive in a supportive environment while contributing to cutting-edge technology in picturesque farm settings across the UK and Portugal.

F

Contact Details:

Fieldwork Robotics Recruitment Team

StudySmarter Expert Advice🤫

We think this is how you could land Senior C++ Software Engineer – Robotics in Cambridge

✨Join Local Tech Meetups

Get out there and mingle with fellow developers by joining local tech meetups. It’s a fantastic way to meet people who might be working at Fieldwork Robotics or know someone who does. Plus, you can pick up some trendy tech skills and trends while you're at it!

✨Contribute to Open Source Projects

Show off your coding chops by jumping into open-source projects. Not only does this give you practical experience, but it also gets you noticed in the dev community. You'll create a killer portfolio that speaks volumes about your skills to Fieldwork Robotics.

✨Tap into Online Developer Communities

Don’t underestimate the power of online developer communities like GitHub, Stack Overflow, and even Reddit. Participate in discussions, share your projects, and build your visibility. We can often find opportunities through these channels that can lead to a full-time gig at companies like Fieldwork Robotics.

✨Explore Job Boards Specifically for Tech Roles

Keep your eyes peeled on job boards that focus on tech roles. Sites like TechCareers or Stack Overflow Jobs can often have listings for companies like Fieldwork Robotics that might not show up on broader job sites. Make it a habit to check these regularly, and don’t hesitate to apply directly through our website!

We think you need these skills to ace Senior C++ Software Engineer – Robotics in Cambridge

C++ 20
ROS2
ROS2 Control
Robot Control Systems
Machine Learning Integration
Algorithm Development
Motion Planning

Some tips for your application 🫡

Show off your coding skills:When applying for a software engineering role, it's super important to showcase your coding skills. Make sure your CV includes your tech stack, any relevant programming languages you’re comfortable with, and examples of projects you've worked on. If you have a GitHub profile, link it up! We love to see code in action.

Tailor your portfolio:For a full-time role, we’d expect to see some solid examples of your work in your portfolio. Make sure to include at least two or three projects that highlight your problem-solving skills and your ability to work with different technologies. Focus on the projects that are most relevant to the position at Fieldwork Robotics.

Craft a killer cover letter:Your cover letter is your chance to stand out—make it personal! Explain why you want to work at Fieldwork Robotics and how your skills align with the role. Show us your passion for software development. We dig enthusiastic candidates who understand the value of collaboration and continuous learning!

Be clear and concise:When it comes to writing your CV and cover letter, clarity is key. Avoid jargon that could confuse us and stick to simple, direct language. Highlight your achievements with quantifiable results where possible, and keep everything easy to read. A well-organised application goes a long way!

How to prepare for a job interview at Fieldwork Robotics

✨Brush Up on Your Coding Skills

For a full-time software engineering role, it's crucial that we stay sharp with our coding abilities. Expect technical questions that might involve solving problems on the spot or discussing algorithms. Practise on platforms like LeetCode or HackerRank to get comfortable with the types of questions that often come up.

✨Know Your Tools and Frameworks

Make sure we’re well-acquainted with the tools and technologies listed in the job description. Familiarise ourselves with any specific frameworks or programming languages mentioned. If Fieldwork Robotics uses React or Node.js, for instance, be ready to discuss how we’ve used them in previous projects or coursework.

✨Showcase Your Projects

Bring along a portfolio that highlights our best work. This could be code samples, GitHub repositories, or any side projects we’ve built. Make sure we can talk through our thought process for each project, especially the challenges we faced and how we solved them—this shows our problem-solving skills in action.

✨Prepare for Behavioural Questions

While technical skills are key, full-time positions also require cultural fit. Be ready to discuss our previous experiences and how we handle teamwork, conflict, and deadlines. Brush up on the STAR method—Situation, Task, Action, Result—to clearly articulate our past experiences when discussing how we've contributed to a team.