Senior Software Engineer
Indexed description
About the Role
We’re looking for a Lead Software Developer with strong C++ expertise to take a key leadership role within our Trading Surveillance team, working closely with our Principal Developer.
This role is focused on leading and developing one of our largest engineering teams. You’ll take ownership of day-to-day technical direction, team standards, and developer growth, while playing a key role in shaping how large volumes of data are processed, queried, and leveraged across the platform.
A core part of the role is enabling the team to work effectively with data at scale, ensuring performance, efficiency, and reliability, allowing the Principal to focus on new feature development and longer-term platform evolution.
Key Responsibilities
Technical Leadership
- Lead the day-to-day technical direction of the TS team, with a strong focus on C++ development
- Guide implementation and design decisions across both application logic and data layers
- Ensure systems are built with performance, scalability, and efficient data access in mind
- Review code and support developers in solving complex, data-driven technical challenges
Data & Database Ownership
- Oversee how data is structured, accessed, and queried across the platform
- Drive best practices in SQL, query optimisation, and database interaction
- Work closely with the team to improve performance of data-heavy workflows and reporting
- Support design decisions around data modelling and large-scale data processing
Team Leadership & Mentorship
- Take ownership of mentoring and developing a large team of developers across varying levels
- Support onboarding and help new hires become productive quickly
- Act as the primary technical leader within the team, providing clear guidance and direction
- Drive improvements in team capability, confidence, and output
Delivery Ownership & Support
- Work closely with Product, QA, and stakeholders to ensure smooth and predictable delivery
- Help remove blockers, manage technical dependencies, and keep delivery on track
- Play an active role in sprint planning, estimation, and retrospectives
- Ensure the team is operating efficiently and delivering consistently
Engineering Standards & Quality
- Own code quality, technical debt, and system maintainability across both code and data layers
- Promote best practices in testing, performance, and security
- Drive continuous improvement in development processes, tooling, and workflows
What We’re Looking For
- 8–12+ years in software development, with clear experience leading within a team
- Deep, production-level experience in C++ as a primary language (essential)
- Strong experience working with SQL and data-intensive systems
- A solid understanding of how to design and optimise data access and query performance
- Experience working on large, complex or performance-critical systems
- Strong understanding of software architecture, design patterns, and scalable systems
- A track record of mentoring developers and improving team performance
- Comfortable working in Agile delivery environments
Nice to Have
- Experience optimising database performance or tuning complex queries
- Exposure to large-scale or high-volume data platforms
- Experience with PostgreSQL, MySQL, or similar database technologies
- Experience with cloud environments (AWS, Azure, GCP)
- Familiarity with CI/CD pipelines and modern engineering practices
- Experience in regulated or financial services environments
Why This Role
- Take ownership of one of our largest and most important engineering teams
- Play a central role in scaling a data-heavy, high-impact Trading Surveillance platform
- Work closely with senior technical leadership and shape how the team operates
- Enable the Principal Developer to focus on forward-looking feature and platform work
- Clear progression towards Principal-level leadership
Create a free Caio profile to unlock more results and save your role and location preferences.
Unlock free search