Job Description
We are looking for a skilled Senior Software Engineer (C++) with 3–6 years of proven experience in developing high-performance applications. The ideal candidate must have strong hands-on expertise in C++, multithreading, database integration, data structures, and OOP concepts. You will be part of a core development team responsible for designing and optimizing scalable, reliable software systems.
Key Responsibilities
- Design, develop, and maintain C++ software modules and applications.
- Implement multithreading, and concurrent systems ensuring performance and thread safety.
- Work closely with databases (SQL or NoSQL) for data storage, retrieval, and optimization.
- Apply solid data structure and algorithmic knowledge to solve complex engineering problems.
- Follow OOP principles and software design best practices for maintainable and reusable code.
- Debug, profile, and optimize code for performance and scalability.
- Participate in code reviews and mentor junior developers.
- Collaborate with cross-functional teams for system design, testing, and deployment.
Required Skills & Qualifications
- Bachelor’s degree in Computer Science, Software Engineering, or a related field.
- 3–6 years of experience in software development using C++11 or later.
- Strong understanding of OOP, STL, and design patterns.
- Hands-on experience with multithreading, synchronization, and concurrency control.
- Experience with database systems (e.g., MySQL, PostgreSQL, SQLite, or similar).
- Solid grasp of data structures, algorithms, and complexity optimization.
- Good understanding of Linux/Windows development environments.
- Familiarity with version control (Git) and build systems (CMake, Make, or Visual Studio).
- Excellent problem-solving and debugging skills.