I presume when we're talking about such ultra low latency systems the software stack is uniquely manual memory management languages, or maybe I should say non-gc, with Rust gaining traction. At the same time the LMAX exchange runs on JVM, as far as I know. Reading some opinions you feel like for low-latency a GC language is a no-go. Maybe you care to comment on that.
Generally, I feel like when discussing these systems the wow factor of "speed of light is a factor" dwarfs the more mundane aspects. Maybe it would be enlightening to consider slower 1ms max pause systems. With such requirements you don't care about being within earshot of the exchange anymore, and you'll probably not use FPGAs, but you still need latency that is deterministic and low. When a software engineer has to develop such a system, what are the challenges, considerations, etc?