Software Development Engineer - C++
About LSEG
LSEG (London Stock Exchange Group) is a diversified global financial markets infrastructure and data business. With extensive experience and worldwide presence across financial markets, we enable businesses and economies around the world to fund innovation, handle risk and create jobs. We are headquartered in the United Kingdom with significant operations in 70 countries and employ 25,000 people globally.
Role Summary
As a Senior Software Engineer, you will contribute to the development of high‑performance, real‑time applications that process some of the world's most critical financial data. Our systems ingest information from global exchanges and deliver normalized, consistent market data to clients within milliseconds. You will work primarily in C++ within a Linux‑focused environment, collaborating with expert engineers while continuing to strengthen your skills in performance engineering, market data systems, and AI‑enhanced development workflows.
Responsibilities
- Design, develop, and maintain clean, efficient, and well‑structured applications
- Use AI-assisted tools to support development tasks such as code generation, analysis, testing, and troubleshooting
- Participate in code reviews to ensure code quality and consistency across the team
- Develop and maintain robust unit tests and integration tests to support application quality and resilience
- Collaborate with senior engineers and architects on design and implementation of features
- Assist in integrating software into test and production environments by teaming with QA and Operations teams
- Investigate and debug issues across development and test environments, including multi-threaded scenarios
- Contribute to planning, refinement, and design discussions for new features and improvements
- Work closely with teammates, Technical Architects, and Product Owners to implement solutions aligned to functional requirements
- Communicate progress and technical details clearly within the team and to stakeholders
- Take responsibility for work while proactively seeking clarification or mentorship when needed
- Expand your technical skillset through hands-on experience, training, and certifications
- Establish understanding of system dependencies and broader business workflows over time
Requirements
- Bachelor's degree in Computer Science, Engineering, or equivalent experience
- Strong programming experience with C++ and object‑oriented development
- Experience working within Linux development environments
- Understanding of the full software development lifecycle
- Strong problem‑solving and analytical abilities
- Familiarity with debugging tools and test-driven development
- Ability to learn new technologies quickly and apply them optimally
- Strong written and verbal communication skills
Preferred Skills
- Experience with scripting languages such as Python, Bash, or PowerShell
- Exposure to Agile development methodologies
- Knowledge of automated testing frameworks
- Understanding of multi-threaded programming concepts
- Experience with containerized development and deployment (Docker, Kubernetes)
- Experience with Rust programming language or interest in learning Rust for development
- Experience with or curiosity about real‑time or low‑latency systems, market data feeds or financial technology
- Familiarity with using AI tools in the software development lifecycle
What You'll Gain
- Experience building high‑throughput, low‑latency systems at global scale
- Access to mentorship from experts
- An inclusive, collaborative engineering culture focused on learning and continuous improvement
- Opportunities to deepen your expertise in C++, Linux, real‑time systems, and AI-assisted engineering