Discover your dream Career
For Recruiters

HFT engineer likens switching from C++ to Rust to "entering the gates of hell"

According to an anonymous executive at an electronic trading firm, "a lot of the super top tier guys in the C++ community are starting to experiment with Rust." One such engineer, speaking on Hackernews, had a lot of good to say about the language... but even more bad.

The engineer attempted to port a low latency trading system into Rust "but ended up abandoning after 6 months of development." However, he said the language "made my life a dream for 80% of the codebase."

So what went wrong? He says that where Rust was useful was non-critical areas with less demand for high performance. Everywhere else, it was "a nightmare to implement." Rust as a language is much safer than C++ which means it will often sacrifice speed for security. You can attempt to bypass this by labelling blocks of code as 'unsafe {}', but the engineer says this code "ended up being 1000x more error prone than C."

Click here to sign up to our technology newsletter 🔧

He attempted to use the unsafe tag to get the "best of both worlds" and switch between C for critical code and Rust for everything else. However, he says that rather than entering "C World", he entered "the literal gates of hell, where any innocent temporary cast can throw you in a random load/store reordering bug."

This doesn't mean the engineer exclusively uses C languages. He says that for heavy computation, the likes of C++ Fortran and Cobol are "just too impractical, and slow to develop." He instead advocates for Python, specifically its Pandas library, which he "conservatively" estimates that 80% of HFT and mid-frequency traders already use. 

Click here to create a profile on eFinancialCareers. Make yourself visible to recruiters hiring for top jobs in technology and finance.

Have a confidential story, tip, or comment you’d like to share? Contact: +44 7537 182250 (SMS, Whatsapp or voicemail). Telegram: @SarahButcher. Click here to fill in our anonymous form, or email editortips@efinancialcareers.com. Signal also available.

Bear with us if you leave a comment at the bottom of this article: all our comments are moderated by human beings. Sometimes these humans might be asleep, or away from their desks, so it may take a while for your comment to appear. Eventually it will – unless it’s offensive or libelous (in which case it won’t.)

author-card-avatar
AUTHORAlex McMurray Editor

Sign up to Morning Coffee!

Coffee mug

The essential daily roundup of news and analysis read by everyone from senior bankers and traders to new recruits.

Boost your career

Find thousands of job opportunities by signing up to eFinancialCareers today.
Recommended Articles
Recommended Jobs
JJA - James Joseph Associates
Senior Java Developer - Trade Platform - Front Office
JJA - James Joseph Associates
London, United Kingdom
Bonhill Partners
Quantitative Developer/ Data Scientist - Investment Bank
Bonhill Partners
London, United Kingdom
JJA - James Joseph Associates
C++ Developer Low Latency
JJA - James Joseph Associates
London, United Kingdom

Sign up to Morning Coffee!

Coffee mug

The essential daily roundup of news and analysis read by everyone from senior bankers and traders to new recruits.