Summary
✨ AI‑Generated
A technology organization is looking for a senior C++ engineer to develop reliable, scalable, and high-performance software. The position involves modern C++, multithreading, architecture, APIs, performance optimization, testing, and close collaboration with technical stakeholders.
Highlights
Hands-on senior engineering role focused on high-performance software, architectural design, complex systems, and meaningful technical decision-making across the full development lifecycle.
Description
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 applicationsDesign and implement software architectures, modules, APIs, and interfacesWrite clean, maintainable, efficient, and well-documented codeAnalyze existing systems and identify opportunities for optimization and modernizationTroubleshoot complex technical issues and perform root cause analysisOptimize software for performance, memory usage, latency, stability, and reliabilityDevelop and maintain multithreaded and concurrent applicationsParticipate in architecture and technical design discussionsConduct code reviews and ensure adherence to software engineering standards and best practicesDevelop automated unit, integration, and system testsSupport continuous integration and continuous delivery processesCollaborate with cross-functional and international development teamsContribute to technical documentation and software specificationsSupport the integration of software components with existing platforms and systemsMentor less experienced engineers and contribute to knowledge sharing within the teamEvaluate new technologies, libraries, frameworks, and development approaches
Requirements
Required Qualifications
Bachelor's or Master's degree in Computer Science, Software Engineering, Electrical Engineering, or a comparable technical discipline7+ years of professional software development experienceStrong professional experience with C++, ideally C++17, C++20, and/or C++23Excellent understanding of:Object-oriented programmingGeneric programming and templatesSTLMemory managementSmart pointers and RAIIMultithreading and concurrencyData structures and algorithmsDesign patternsSoftware architecture principlesStrong experience developing software in Linux environmentsExperience with debugging, profiling, and performance optimizationGood understanding of network and inter-process communication conceptsExperience with build and dependency management tools such as CMake, Conan, or vcpkgStrong experience with Git and modern source-control workflowsExperience with automated testing frameworks such as Google Test, Google Mock, Catch2, or comparable technologiesExperience working with CI/CD pipelinesStrong analytical and problem-solving capabilitiesAbility to analyze and improve complex existing codebasesStrong communication skills and ability to collaborate within international teamsProfessional working proficiency in English
Essential
Technical Skills
C++17 / C++20 or newerSTLMultithreading and concurrencyMemory managementLinuxCMakeGitUnit and integration testingDebugging and profilingSoftware architecture and design patternsPerformance optimization
Strong Advantage
Experience with one or more of the following would be beneficial:
BoostPythonBash / Shell scriptingTCP/IP, UDP, REST, gRPC or other communication protocolsDistributed systemsReal-time or low-latency systemsIPC and asynchronous programmingDockerKubernetesCloud platforms such as AWS, Azure, or GCPConan or vcpkgJenkins, GitLab CI, GitHub Actions, or similar CI/CD platformsStatic code analysis toolsSonarQubeValgrindGDBClang tooling and sanitizers
Software Engineering Expectations
The Senior C++ Software Engineer should demonstrate strong knowledge of professional software engineering practices, including:
SOLID principlesClean CodeTest-driven or test-oriented developmentCode review practicesAutomated testingContinuous integrationSecure coding principlesSoftware lifecycle managementTechnical documentationPerformance and reliability engineering
Seniority Expectations
As a Senior Engineer, you are expected to:
Take ownership of technically complex components and solutionsMake sound architectural and implementation decisionsIdentify technical risks early and propose appropriate solutionsWork independently while collaborating effectively with the wider engineering teamChallenge technical decisions constructively when requiredImprove engineering standards and development practicesSupport and mentor other developersTranslate business and technical requirements into reliable software solutions
Personal Competencies
Strong analytical and structured thinkingHigh level of ownership and accountabilityQuality-oriented engineering mindsetAbility to work independentlyStrong troubleshooting capabilitiesExcellent attention to detailCollaborative and solution-oriented approachAbility to communicate complex technical topics clearlyComfortable working in international and multidisciplinary environments
Nice to Have
Experience with embedded or real-time software developmentExperience with highly available or mission-critical systemsExperience with high-performance or low-latency applicationsExperience modernizing legacy C++ applicationsExperience with regulated or highly controlled environmentsExperience working in Agile/Scrum development teamsKnowledge of cybersecurity and secure software development practicesExperience mentoring or technically leading engineering teams