HFT firms require lots of domain knowledge on top of “just” C++. Those quants are elite mathematicians and highly knowledgeable in finance in addition to being great at C++ (or OCaml).
I would say that C++ expertise is often actually “underpaid” compared to its level of difficult. If you’re doing OS stuff in C++ you’re working on something embedded. If you’re doing embedded, you’re probably selling hardware, which has low margins (compared to pure software plays). Meanwhile a Ruby on Rails dev who can iterate their web app quickly can start getting PMF and basically print money.
It may well be underpaid compared to it's difficulty level, but the jobs exist.
Meanwhile I've yet to see a Rails job that pays enough to be worth my while, despite Ruby being by far my favourite language.
I get to use Ruby a lot (rarely Rails; don't like the thing), but because I am typically in senior enough positions to have autonomy in what I choose for my projects - the moment a job is advertised as a Rails job, the pay is accordingly low.
That's surprising for me to hear (as a non-Ruby/Rails guy that doesn't know that sub-market), given how many massively successful startups were built on Rails. I get that Rails isn't the hot new thing anymore, but Airbnb pays quite well and still uses it, right?
Are there just tons of smaller fish paying peanuts?
It's worth adding to this I've been developing software professionally for 27 years, so there being few Rails jobs meeting my expectations does not mean there aren't well paid Rails jobs.
But Rails does best in a chunk of what used to be the PHP market for quick and dirty websites. Once companies scale, only a relatively small portion of their dev work tends to be Rails related, and not the most interesting/best paid parts of their dev work.
The roles you can use Ruby in are wider and there is some juicier stuff there, but most of that isn't advertised as Ruby. E.g. in a lot of devops roles you may come across quite a bit of Ruby tooling.
I would say that C++ expertise is often actually “underpaid” compared to its level of difficult. If you’re doing OS stuff in C++ you’re working on something embedded. If you’re doing embedded, you’re probably selling hardware, which has low margins (compared to pure software plays). Meanwhile a Ruby on Rails dev who can iterate their web app quickly can start getting PMF and basically print money.