Senior C/C++ Engineer
Office in Bangalore, Hyderabad, Chennai, Pune, Gurgaon
C++
& others
We are looking for a talented and motivated Senior C++ Engineer to join our development team. As a C++ Engineer, you will play a pivotal role in designing, implementing, and maintaining high-performance software applications. Your expertise in C++ programming will contribute to the development of cutting-edge solutions that power our products and services.
Responsibilities
- Participate in the full-cycle development process: estimate, design, implement, test, and deploy
 - Collaborate with the team to review code and ensure code quality
 - Integrate with other clients' systems and applications
 - Clarify requirements by communicating with customers
 - Drive the collaboration process with other team members to ensure the timely delivery of high-quality software
 
Requirements
- 5-9 years of experience in C/C++ development on Linux or Unix multicore environments
 - 3+ years of experience in developing applications using C++, preferably backend systems with any sort of IPC
 - Proficient in C++98 codebase and knowledge of how to refactor existing C++98 code and implement new features by utilizing best practices from the latest standards (C++11/14/17)
 - Familiarity with multithreading
 - Knowledge of Java and/or Python is a plus
 - Working knowledge and understanding of networking on all levels, with emphasis on high-level protocols: RPC/SOAP/HTTP
 - Working knowledge of basic SQL, ability to work out more complex nested queries is a plus
 - Familiarity with STL or Boost or any portable library and understanding of the concepts
 - Ability to quickly understand a large codebase
 - Strong debugging skills in a Unix environment
 - Comfortable using the command line in a Linux environment to analyze issues/basic knowledge of how to collect information on a process
 
Nice to have
- Experience with CORBA or gRPC or similar technologies
 - Experience working with custom XML-based custom communication protocols/DTD (Document type definition)
 - Experience writing unit tests
 - Knowledge of GCP/AWS
 - Knowledge of Java/Python
 
Technologies
- SOLID
 - Object Oriented Design Principles
 - Multithreading
 - Object Oriented Programming
 - Design Patterns
 - STL or Boost
 - Unit Testing
 - Linux