C++ Software Engineer C++ Software Engineer Description We are looking for a highly skilled and motivated C++ Software Engineer to join our team. The ideal candidate will have extensive experience in modern C++ development and a deep understanding of compilers, operating systems, and software development tools. You will work on designing, developing, and optimizing software solutions for complex systems, with a focus on graph theory and related algorithms. Key Responsibilities - Develop, maintain, and optimize C++ applications for Linux and Windows environments. - Utilize and configure GCC and Clang toolchains for cross-platform development. - Write and maintain automated scripts using Bash and batch scripting for build and deployment processes. - Collaborate using Visual Studio and other IDEs to build high-performance applications. - Design, implement, and test graph-related algorithms using C++ and some third-party libraries such as Boost. - Write and maintain unit tests using gTest and mock objects with gMock to ensure high code quality. - Troubleshoot and debug cross-platform software issues. - Work with version control systems (e.g., Git) and participate in code reviews. - Collaborate with cross-functional teams to define requirements and system architecture. Required Skills Experience - Strong proficiency in C++ (C++11 / 14 / 17 / 20), including STL and modern design patterns. - Expertise in using GCC and Clang compilers in Linux, as well as Visual Studio in Windows. - Solid understanding of Linux and Windows operating systems. - Proficiency in Bash scripting and familiarity with PowerShell or Windows batch scripting. - Experience with Visual Studio as a development and debugging environment. - Strong knowledge of gTest and gMock for unit testing and mocking. - Familiarity with Boost libraries, particularly those relevant to graph algorithms and data structures. - Strong understanding of graph theory, algorithms, and data structures. Preferred Qualifications - Experience with performance profiling and optimization. - Knowledge of CI / CD pipelines and build systems (e.g., CMake, Ninja). - Familiarity with containerization tools (e.g., Docker). - Background in contributing to open-source projects. - Strong analytical and problem-solving skills. C++, Linux, PowerShell
Software Engineer • Warsaw, Rzeczpospolita Polska, Poland