Key System Architect Role
Candidates will shape the architecture, performance and scalability of complex systems by leveraging their expertise in Modern C++. This is a critical role that requires deep technical skills.
Main Responsibilities:
* Refactor large-scale codebases with millions of lines of code to improve maintainability and reliability;
* Reverse-engineer legacy components and undocumented systems to identify areas for improvement;
* Diagnose and resolve cross-module issues using advanced debugging techniques;
* Promote exception safety and implement robust error-handling strategies to ensure system reliability;
* Evaluate code quality and suggest improvements during refactoring processes to optimize performance and scalability;
* Debug intricate interactions across modules and subsystems using expert knowledge of C++.
Essential Skills:
* Deep understanding of Modern C++ and its application in real-world scenarios;
* Strong grasp of memory management (manual allocation, smart pointers, leak detection, custom allocators);
* Expertise in object-oriented design (inheritance, polymorphism, design patterns) and its implementation in C++;
* Experience with concurrency and multithreading (mutexes, atomic operations, thread safety);
* Proficient in STL (containers, algorithms, iterators) and its use in optimizing system performance;
* Familiarity with clean error-handling paradigms and their application in system development.