Position: C++ Engineer
Company: Silixium
Category: C++
Experience: 5y
English level: intermediate

Стабільна робота, в компанії з 30-ти річною історією, більше 7-ми років, працюючою з українцями.

Нижче приблизні побажання до кандидатів, деталі обговорюються на співдесіді.

We are seeking a talented and motivated C++ Engineer to join our dynamic software development team. The ideal candidate will have a strong command of C++ programming, a passion for crafting efficient and reliable code, and a commitment to creating high-performance software solutions. As a C++ Engineer, you will play a crucial role in designing, developing, testing, and maintaining applications that leverage the power of the C++ language.

Responsibilities:
- Collaborate with cross-functional teams to understand project requirements and translate them into well-designed and performant C++ applications.
- Write clean, efficient, and maintainable code using C++, following coding standards and best practices.
- Develop and maintain software applications, libraries, and tools using C++ programming language.
- Participate in code reviews to maintain code quality and provide valuable feedback to team members.
- Identify and debug application issues to ensure optimal performance, stability, and reliability.
- Stay up-to-date with the latest C++ language features, libraries, and trends to enhance development processes.
- Integrate applications with external APIs, libraries, and databases.
- Optimize application performance, memory usage, and CPU utilization.
- Maintain accurate technical documentation related to development processes and codebase.

Requirements:
- Bachelor's degree in Computer Science, Engineering, or a related field.
- Proven experience as a C++ Developer, with a portfolio showcasing C++ projects.
- Strong proficiency in C++ programming language and a deep understanding of its concepts and paradigms.
- Familiarity with software development on various platforms (Windows, Linux, macOS).
- Experience with version control systems such as Git.
- Strong problem-solving skills and the ability to work effectively in a collaborative team environment.
- Excellent communication skills for clear interaction with colleagues, stakeholders, and clients.
- Ability to adapt quickly to evolving project requirements and priorities.

Nice to Have:
- Experience with multithreaded programming and concurrent systems.
- Knowledge of design patterns and object-oriented principles.
- Familiarity with unit testing frameworks and test-driven development (TDD).
- Understanding of low-level programming and memory management.
- Experience with network programming or socket-based communication.
- Familiarity with game development, graphics programming, or simulation software.
- Knowledge of Continuous Integration/Continuous Deployment (CI/CD) processes.