Senior C++ Developer (with Market Data experience)

BCM Limited
Charing Cross, United Kingdom
5 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior
Compensation
£ 140K

Job location

Charing Cross, United Kingdom

Tech stack

Algorithmic Trading
Bash
Big Data
C++
CMake
Profiling
Code Review
Computer Programming
Data Structures
Software Debugging
Linux
Memory Management
Python
Multicasting
Routing
Remote Direct Memory Access
Memory Leaks
Scripting (Bash/Python/Go/Ruby)
Computer Network Technologies
GIT
KDB+
Perf (Linux)
Low Latency
Real Time Data
Build Tools
C++14
Software Version Control

Job description

We are looking for a C++ engineer to design and build high performance, low latency applications that process large volumes of real time data. You will work on systems where microseconds and throughput matter, optimizing every layer from algorithms and data structures to networking and OS interaction. Compensation for NYC 120000-140000 USD Gross per year based on the interview process results. Responsibilities

Design, implement, and maintain high performance C++ services handling high message rates and low latency workloads.

Optimize existing components for latency, throughput, and CPU/memory efficiency.

Develop and tune networking, messaging, and I/O layers to handle large data volumes reliably.

Profile and debug performance issues at application, OS, and network levels.

Collaborate with quantitative, trading, and infrastructure teams (or analogous business/tech teams) to translate requirements into robust technical solutions.

Write clean, production quality code with appropriate tests and documentation.

Participate in code reviews, design discussions, and continuous improvement of engineering practices.

Requirements

Must have

Strong proficiency in modern C++ (C++17/20 or later)

Hands-on experience with Market Data

Solid understanding of concurrency and synchronization (lock free / low lock patterns, atomics, memory models, etc.).

Proven experience building performance critical, real time, or low latency systems (e.g., networking, trading systems, telemetry, gaming engines, or similar).

Strong knowledge of computer science fundamentals: data structures, algorithms, memory management, and optimization.

Practical experience with Linux systems programming (sockets, epoll/select, threads, memory management, CPU affinity, etc.).

Experience using profiling, benchmarking, and performance analysis tools (e.g., perf, valgrind, flame graphs, CPU/memory profilers).

Proficiency with version control (Git) and standard build systems (CMake, Ninja, etc.).

Excellent problem-solving skills and attention to detail; ability to work in a fast-paced environment.

Nice to have

Experience with kernel bypass or user space networking technologies (e.g., DPDK, RDMA, VMA, Solarflare/OpenOnload)

helpful but not required.

Experience in financial markets, market data distribution, order routing, or exchange connectivity.

Familiarity with common market data protocols (e.g., FIX, MDP, ITCH, proprietary exchange feeds) is a plus.

Experience with multicast, low latency networking, and clock synchronization (e.g., PTP).

Exposure to hardware aware optimization (NUMA, cache optimization, vectorization/SIMD, CPU pinning).

Experience with monitoring/telemetry for high performance systems (latency histograms, throughput metrics, SLAs).

Familiarity with scripting languages (e.g., Python, Bash) for tooling and automation.

KDB+

Apply for this position