Rodeo
Get started

Avacone

Senior C++ Software Engineer

London
Posted about 17 hours ago
Sign up to applySee more jobs like this

How your CV stacks up

1Upload CV
2Analyse CV
3Improve CV

Upload your CV to see how well it fits this job role

?%

Position Overview

We are looking for an experienced Senior C++ Software Engineer to design, develop, and maintain high-performance, reliable, and scalable software solutions.

The ideal candidate has strong expertise in modern C++, software architecture, multithreading, performance optimization, and complex software systems. You will work closely with software engineers, architects, product teams, and other technical stakeholders to develop robust solutions and contribute to technical decisions throughout the complete software development lifecycle.

This position requires strong hands-on engineering skills, a structured problem-solving mindset, and the ability to work independently in technically demanding environments.

Key Responsibilities

  • Design, develop, test, and maintain high-quality software using modern C++
  • Develop robust, scalable, and high-performance software components and applications
  • Design and implement software architectures, modules, APIs, and interfaces
  • Write clean, maintainable, efficient, and well-documented code
  • Analyze existing systems and identify opportunities for optimization and modernization
  • Troubleshoot complex technical issues and perform root cause analysis
  • Optimize software for performance, memory usage, latency, stability, and reliability
  • Develop and maintain multithreaded and concurrent applications
  • Participate in architecture and technical design discussions
  • Conduct code reviews and ensure adherence to software engineering standards and best practices
  • Develop automated unit, integration, and system tests
  • Support continuous integration and continuous delivery processes
  • Collaborate with cross-functional and international development teams
  • Contribute to technical documentation and software specifications
  • Support the integration of software components with existing platforms and systems
  • Mentor less experienced engineers and contribute to knowledge sharing within the team
  • Evaluate new technologies, libraries, frameworks, and development approaches

Reasons to use Rodeo

I’m in my final year doing Economics and I don’t know whether to apply for grad schemes now or do a masters first. What do you think?

Honest answer — it depends on where you want to end up. A lot of top grad schemes (Big 4, civil service, banking) don’t need a masters. Let’s look at the ones you’d be competitive for now, and we can decide if a masters actually adds anything.

Also worth knowing: most autumn 2026 applications are open now. Timing matters more than you think.

Start with a chat, not a search bar

Grad scheme, placement, apprenticeship? Not sure what you want yet — that's fine. Your agent talks it through with you and turns "I have no idea" into a shortlist.

P

Graduate Consultant — 2026 Scheme

PwC·London, UK
£35,000/yr

Why you're a good match

Strong

Your economics background and your summer at a regional bank line up with what PwC looks for on the consulting scheme. Applications close in four weeks.

See breakdown
Save jobNot relevant
View details

It searches the market for you

Every day your agent scans the market matching roles against what actually matters to you, not just keywords on a CV.

Why you're a good match

You’ve got the grades and the economics background, and your bank internship is exactly the experience this scheme looks for. Apply soon — deadlines close within the month.

See breakdown
Strong

Experience fit

Your summer at the bank plus your econometrics coursework map directly to the day-one responsibilities on this scheme — client modelling, market briefings, and deal support.

See breakdown
Strong

Only hits

No noise. No "maybe this fits." Just roles with a clear explanation of why they're right — and where to focus when applying.

Required Qualifications

  • Bachelor's or Master's degree in Computer Science, Software Engineering, Electrical Engineering, or a comparable technical discipline
  • 7+ years of professional software development experience
  • Strong professional experience with C++, ideally C++17, C++20, and/or C++23
  • Excellent understanding of:
    • Object-oriented programming
    • Generic programming and templates
    • STL
    • Memory management
    • Smart pointers and RAII
    • Multithreading and concurrency
    • Data structures and algorithms
    • Design patterns
    • Software architecture principles
  • Strong experience developing software in Linux environments
  • Experience with debugging, profiling, and performance optimization
  • Good understanding of network and inter-process communication concepts
  • Experience with build and dependency management tools such as CMake, Conan, or vcpkg
  • Strong experience with Git and modern source-control workflows
  • Experience with automated testing frameworks such as Google Test, Google Mock, Catch2, or comparable technologies
  • Experience working with CI/CD pipelines
  • Strong analytical and problem-solving capabilities
  • Ability to analyze and improve complex existing codebases
  • Strong communication skills and ability to collaborate within international teams
  • Professional working proficiency in English

Technical Skills

Essential

  • C++17 / C++20 or newer
  • STL
  • Multithreading and concurrency
  • Memory management
  • Linux
  • CMake
  • Git
  • Unit and integration testing
  • Debugging and profiling
  • Software architecture and design patterns
  • Performance optimization

Strong Advantage

Experience with one or more of the following would be beneficial:

  • Boost
  • Python
  • Bash / Shell scripting
  • TCP/IP, UDP, REST, gRPC or other communication protocols
  • Distributed systems
  • Real-time or low-latency systems
  • IPC and asynchronous programming
  • Docker
  • Kubernetes
  • Cloud platforms such as AWS, Azure, or GCP
  • Conan or vcpkg
  • Jenkins, GitLab CI, GitHub Actions, or similar CI/CD platforms
  • Static code analysis tools
  • SonarQube
  • Valgrind
  • GDB
  • Clang tooling and sanitizers

Get help with your application

Your very own career expert that helps elevate your application to the next level.

Get help applying for this job

Software Engineering Expectations

The Senior C++ Software Engineer should demonstrate strong knowledge of professional software engineering practices, including:

  • SOLID principles
  • Clean Code
  • Test-driven or test-oriented development
  • Code review practices
  • Automated testing
  • Continuous integration
  • Secure coding principles
  • Software lifecycle management
  • Technical documentation
  • Performance and reliability engineering

Seniority Expectations

As a Senior Engineer, you are expected to:

  • Take ownership of technically complex components and solutions
  • Make sound architectural and implementation decisions
  • Identify technical risks early and propose appropriate solutions
  • Work independently while collaborating effectively with the wider engineering team
  • Challenge technical decisions constructively when required
  • Improve engineering standards and development practices
  • Support and mentor other developers
  • Translate business and technical requirements into reliable software solutions

Personal Competencies

  • Strong analytical and structured thinking
  • High level of ownership and accountability
  • Quality-oriented engineering mindset
  • Ability to work independently
  • Strong troubleshooting capabilities
  • Excellent attention to detail
  • Collaborative and solution-oriented approach
  • Ability to communicate complex technical topics clearly
  • Comfortable working in international and multidisciplinary environments

Nice to Have

  • Experience with embedded or real-time software development
  • Experience with highly available or mission-critical systems
  • Experience with high-performance or low-latency applications
  • Experience modernizing legacy C++ applications
  • Experience with regulated or highly controlled environments
  • Experience working in Agile/Scrum development teams
  • Knowledge of cybersecurity and secure software development practices
  • Experience mentoring or technically leading engineering teams
Trusted by 25,000+ job seekers

“It took my CV and asked me questions relevant to understanding what kind of jobs to suggest for me. Suggestions were almost perfect. Jobs were exactly what I’ve been looking for.”

Jessica, London

Get help applying for this job

Skills

C++
Software Architecture
Multithreading
Performance Optimization
Linux
CMake
Git
Unit Testing
Integration Testing
Debugging
Profiling
STL
Memory Management
Concurrency
Design Patterns
CI/CD

Location

London, England, United Kingdom

Sign up to applySee more jobs like this