Description

Summary:
We are seeking a highly skilled and experienced Senior C++ Developer / Lead to join our dynamic software development team.
The successful candidate will be responsible for designing, developing, and implementing high-performance C++ applications, while providing technical leadership and mentorship to a team of developers.

Key Responsibilities:
Lead the design, development, and maintenance of complex C++ software applications.
Collaborate with cross-functional teams to define, design, and ship new features.
Ensure the performance, quality, and responsiveness of applications.
Identify and correct bottlenecks and fix bugs.
Help maintain code quality, organization, and automatization.
Provide mentorship and guidance to junior developers.
Conduct code reviews and enforce coding standards and best practices.
Participate in the full software development lifecycle, including requirement analysis, architecture, design, coding, testing, and deployment.
Optimize applications for maximum speed and scalability.
Document development phases and monitor systems.
Lead by example and contribute to a team culture that values quality, robustness, and scalability while fostering innovation.

Qualifications:
Bachelor's or Master's degree in Computer Science, Engineering, or a related field.
Minimum of 8 years of experience in C++ software development.
Strong proficiency in C++, with a good knowledge of its ecosystems.
Solid understanding of object-oriented programming.
Familiar with various design and architectural patterns.
Experience with multi-threading and concurrency.
Knowledge of writing native modules and working with third-party libraries.
Familiarity with continuous integration.
Exceptional problem-solving skills and attention to detail.
Experience with version control systems, such as Git.

Preferred Skills:
Experience with C++ 11 or C++ 14 is highly desirable.
Knowledge of QT framework is a plus.
Experience in leading a team of C++ developers.
Familiarity with network programming.
Experience with database systems (SQL and/or NoSQL).
Understanding of code versioning tools like Git, Mercurial, or SVN.
Experience with build systems and concepts (CMake, Makefile).

Key Skills
Education

Bachelor's or Master's degree in Computer Science