Practical Robustness: Building and Debugging an Autonomous Mobile Robot Control System in Rust

code red code red

Controlling autonomous mobile robot fleets demands a system that is not only powerful but also robust, a challenge all developers face in critical applications. But how can we guarantee that robustness and eliminate subtle logical bugs long before deployment?

This talk explores that question through the lens of a real-world Rust project, offering lessons for anyone interested in building fundamentally more reliable software. While Rust's memory safety is a great start, its true power lies in the type system and its ownership rules. The session will go beyond the headlines to give you a practical insight into how to encode complex state machines and operational protocols directly into your types, making entire classes of bugs simply impossible to write.

While the code and techniques are specific to Rust, the underlying design philosophy is broadly applicable. This session is therefore not just for Rust developers, but for any developer curious about these powerful concepts. You will leave with a new perspective on reliability and concrete examples of using the compiler as an active co-pilot to build systems that are robust by design, offering inspiration that can be valuable no matter what language you use.
 

Interview:

What is your session about, and why is it important for senior software developers? Why should attendees prioritize your session?

My session is about building robust software and how embracing strong type systems can help achieving this goal. I do this through the lens of Rust, providing real-world examples from the software system I have been working on for the last 2 years. Attend this session if you want to learn how to avoid bugs by making them impossible to write in the first place.

What are the common challenges developers and architects face in this area?

Full robustness is usually difficult to achieve and comes as a trade-off with speed, cost and complexity. Furthermore, programming languages add their own trade-offs for robustness, like dropping memory-safety in favour of lower language-complexity or using a weak type system for faster prototyping speed. All this makes it even more challenging to write robust software with reasonable effort.

What's one thing you hope attendees will implement immediately after your talk?

I hope for attendees to start experimenting with a strongly typed language like Rust and for them to try to implement invariants directly through the type system.

What makes InfoQ Dev Summit stand out as a conference for senior software professionals?

InfoQ Dev Summit provides a diverse selection of talks across the whole field of software development.

What does being part of InfoQ Dev Summit mean to you?

I’m looking forward to great sessions and interesting discussions with domain experts from different fields.


Speaker

Andy Brinkmeyer

Senior Software Engineer @arculus, Orchestrating Autonomous Robots with Rust | Previously @Airbus Defence and Space

Andy Brinkmeyer is a senior software engineer at arculus, where he works on autonomous mobile robots and builds robust production systems. Over the past two and a half years, he and his team developed a master control system entirely in Rust to coordinate fleets of autonomous mobile robots, covering everything from low-level graph algorithms for traffic control to a Kubernetes-based simulation infrastructure. Before joining arculus, Andy worked on mission systems for autonomous UAVs, among other projects.

Read more
Find Andy Brinkmeyer at: