C++ Developer

LMAX
London, UK
27 days ago
Apply on www.totaljobs.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours

Tech stack

Airflow Algorithmic Trading C++ (Programming Language) Continuous Integration Directed Acyclic Graph (Directed Graphs) Information Engineering Linux Python (Programming Language) NumPy Pair Programming Software Engineering SQL Databases
+9 more
Transmission Control Protocol (TCP) WebSocket Workflow Management Systems Data Processing Test-Driven Development (TDD) Pandas Pytest C++14 Jenkins

Job description

  • Produce clear, well-structured and fully tested C++ and Python code
  • A focus on writing high throughput software
  • Use pair programming to increase the spread of knowledge and avoid siloing
  • Continuously design and implement new features that improve the safety, performance and usability of our software
  • Write interface code that spans C++ and Python (pybind)

Requirements

LMAX is looking for a C++ and Python developer to join our middle-office team . This team works closely with the infrastructure, research and treasury teams. In this position you can expect to take a significant role in the development of our trade reconciliation, back-testing framework and trading monitoring. You will be working with the team to design and implement our trading system with a predominant focus on data engineering. We are looking for developers who are confident in their ability to develop software, both with others and on their own.

A finance or trading background is not required., Essential Skills / Experience

  • C++ development, modern C++ on a Linux/UNIX environment
  • Python development, (Numpy/Pandas/SQL)
  • Automated C++ and Python Testing
  • Ability to understand business requirements and develop systems to meet them
  • Ability to design well documented, simple and elegant systems that are easily maintainable
  • Ability to work independently and with little guidance
  • A finance and/or trading background is not required

Desirable Skills / Experience

  • Test driven development, with experience in testing at different levels of the system (unit, integration and acceptance tests). For C++ we use Catch2 and for python we use pytest
  • Experience with pybind/nanobind
  • Airflow DAGs or equivalent workflow orchestration
  • Polars for high-performance data processing
  • Continuous Integration (Jenkins)
  • Knowledge of Websocket, TCP/IP networking
  • Science or Maths related degree

Benefits & conditions

  • 25 days of holiday
  • Bonus
  • Pension contribution
  • Private medical, dental, and vision coverage
  • Life assurance
  • Critical illness cover
  • Wellness contribution program with access to ClassPass
  • Plumm Platform
  • Five volunteering days
  • Give as You Earn initiative
  • Learning and development programs
  • Electric Vehicle Scheme
  • Cycle to Work Scheme
  • Season Ticket Loan

About the company

Our code base is currently split between C++, a language which the infrastructure team works on, and Python, which is used by the research team for analysis and automation. This role is part of a new team to help bridge the gap between the two.

Performance

Working on financial data brings some interesting technical challenges in the area of throughput. Here you can expect to focus more directly on software performance than at other organisations, while still striving for easily maintainable code. You will be digging deep into our system, understanding how it works and where it can be improved.

Testing

We rely heavily on validating our system using our extensive test suites. We test at all levels of our system from unit testing to full end-to-end tests in which the entire system is launched and tested in a simulated environment. All tests are run every 15 minutes on our CI to give us a fast and reliable feedback cycle. There is no waiting for overnight test suites here. As a developer at LMAX you will be expected

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.totaljobs.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

52 sec

Running persistent Linux environments directly on Windows

Ben Breard Ben Breard · World Congress 2025

2:34 min

Maximizing execution memory effectively via python numpy broadcasting

Jodie Burchell · LIVE

1:45 min

Building IT systems for global finance markets

Anastasia Troitskaya Anastasia Troitskaya · World Congress 2024

3:55 min

Demonstrating .NET installation on Debian and Azure Linux

Silvano Coriani Silvano Coriani · Europe 2026 Virtual

1:25 min

Replacing NumPy with cuPy for straightforward GPU acceleration

Paul Graham Paul Graham · World Congress 2025

1:20 min

Identifying multi-disciplinary talent for developer experience engineering roles

Hazal Mestci +1 · Coffee With Developers

Videos

See all

Related articles

See all