C++ Software Engineering Role
As a skilled C++ software engineer, you will play a pivotal role in shaping the architecture, performance, and scalability of complex systems by leveraging expertise in Modern C++. You'll collaborate with cross-functional teams to enhance infrastructure resilience, optimize delivery pipelines, and elevate observability and security through efficient, high-quality code.
Key Responsibilities
* Refactor and maintain large-scale codebases with millions of lines of code;
* Reverse-engineer legacy components and undocumented systems;
* Diagnose and resolve complex, cross-module issues;
* Promote exception safety and implement robust error-handling strategies;
* Ensure code quality and maintainability during refactoring processes;
* Debug intricate interactions across modules and subsystems.
This position requires advanced proficiency in memory management, object-oriented design, template programming, metaprogramming, and multithreading.
Essential Skills
* Strong proficiency in Modern C++;
* Deep understanding of memory management (manual allocation, smart pointers, leak detection, custom allocators);
* Solid grasp of object-oriented design (inheritance, polymorphism, design patterns);
* Expertise in templates and metaprogramming;
* Experience with concurrency and multithreading (mutexes, atomic operations, thread safety);
* Proficient in STL (containers, algorithms, iterators);
* Familiarity with exception safety and clean error-handling paradigms.