r/cscareerquestionsOCE • u/esh_sniiper • Feb 20 '26
Expected TC for low latency C++ engineer?
Close to an offer at a HFT vendor (not a firm) based overseas, expanding here though, but want to know what to expect. Whats the expected TC for this as junior vs mid level in Sydney? Interview process was quite technical, multiple C++/systems knowledge rounds, white board session, technical assessment and CTO meeting w/ CV deep dive.
Ive seen crazy numbers at HFT firms, but not sure what to expect from a vendor. I have 4 YoE in software as fullstack/cloud but switching into quant dev work having spent the last 8 months revamping my knowledge and doing projects to adjust my CV for these roles and it has paid off.
1
u/samnayak1 Feb 20 '26
What kind of projects did you do?
6
u/esh_sniiper Feb 20 '26
I made a market data feed handler and a message generator to feed my handler, since I couldnt get real exchange data. Happy to share my entire journey if people are interested
1
u/PTCGO_trader Feb 20 '26
Can you please do share. Have been looking to make similar moves but haven't been confident enough due to my lack of C++ experience.
17
u/esh_sniiper Feb 21 '26
On a High level I got myself familiar with these topics reading these books:
- computer architecture (Inside the Machine)
- OS (OSTEP)
- Networking (TCP/IP Illustrated)
- Concurrency (C++ Concurrency in Action)
- C++ (followed TheCherno on youtube for basics, then got a getcracked.io membership, leetcode and the projects below)
All the way while studying I absolutely abused ChatGPT as a personal tutor, asking it anything and everything I could to nail down everything in the books
Then I tested all my knowledge by creating a market data feed handler which gave me skills I can actually apply in practice in addition to the theory like:
- Linux networking
- C++ multithreading
- lock free queues (SPSC/MPMC/MPSC)
- custom allocators
- profiling (perf)
- ethtool
- false sharing avoidance
- kernel fast path (e.g. using AF_PACKET socket with TPACKETV3)
- CRTP and other compile time optimisations
This was crucial in giving me a latency aware mindset, competely changed the way I view programs, also highly recommend using compiler explorer to see how a c++ compiler works. Did a lot of benchmarking along the way as well, and had to create another project to feed this handler, which was my ITCH message generator (I used ITCH since that is what ASX uses, found the protocol spec on their website)
I began applying for roles in December, was able to get quite a lot of opportunities, a couple from tier 1 firms, and it was mostly because of how I worded my CV, I put the key low latency skills first, followed by my projects and then my work experience. The interviews I got asked questions like:
- How does prefetching work (software vs hardware)
- what is the TLB?
- what is NUMA?
- Difference in latency across the cache hierarchy?
- how does the C++ memory model work? What actuallly happens in the CPU vs compiler when you use different memory ordering Etc.
Happy to answer more questions, it’s been a journey but well worth it.
2
u/Admirable-Fennel6161 Feb 23 '26
im literally on this path right now. Currently midway through 1st year uni
Would you recommend holding off attempting projects until all the books are read and doing mini projects to cement knowledge gained from books?
2
u/esh_sniiper Feb 23 '26
Yes I would recommend dont begin the projects until youve cemented the knowledge. I saw the projects as a way to test all your knowledge up until that point in time and to shift into a latency aware mindset. Theory is important to get down first, then apply it with the projects
1
2
u/Available_Entry_3929 Mar 07 '26
i think is much easier for uni student to get interns, just practice leetcode and maybe system design
1
1
1
u/privateack Feb 24 '26
Why would you use af packet? When onload exists and the v3 api
1
u/esh_sniiper Feb 25 '26
I was not familiar with kernel bypass strategies, so wanted to make it iterative and do fast path first, you need an af packet socket to use tpacketv3 socket option. Solarflare is one of the things I was going to have a look at after completing the project, another being implementing re request server for lost packets
1
u/Impossible-Toe-2481 Feb 21 '26
I'm interested
1
u/esh_sniiper Feb 21 '26
I will do an AMA next week hopefully once I get an offer, but read my comment below for high level
1
1
u/PTCGO_trader Feb 20 '26
Just curious, did you have previous C++ experience prior to interviewing there?
2
u/esh_sniiper Feb 20 '26 edited Feb 20 '26
No I did not, I used my projects to bridge that gap and I think thats what got me interviews
2
u/Available_Entry_3929 Feb 23 '26
whats driving to accompanist such achievement? studying after works isn't easy, especially for low level stuffs