backGo to search

Senior C/C++ Engineer

C++, C Libraries, C and C++ Development, C++/CLI, C++ Core, UNIX shell scripting, SOLID (object-oriented design principles), RSocket, Algorithms & Data structures, Asynchronous programming and multithreading, Code Review, Unix
Bangalore, Hyderabad, Chennai, Pune, Gurgaon

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.

  • 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
  • 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
  • Object Oriented Design Principles
  • Multithreading
  • Object Oriented Programming
  • Design Patterns
  • STL or Boost
  • Unit Testing
  • Linux


For you
  • Insurance Coverage 
  • Paid Leaves – including maternity, bereavement, paternity, and special COVID-19 leaves. 
  • Financial assistance for medical crisis 
  • Retiral Benefits – VPF and NPS 
  • Customized Mindfulness and Wellness programs 
  • EPAM Hobby Clubs
For your comfortable work
  • Hybrid Work Model 
  • Soft loans to set up workspace at home 
  • Stable workload 
  • Relocation opportunities with ‘EPAM without Borders’ program

For your growth
  • Certification trainings for technical and soft skills 
  • Access to unlimited LinkedIn Learning platform 
  • Access to internal learning programs set up by world class trainers 
  • Community networking and idea creation platforms 
  • Mentorship programs 
  • Self-driven career progression tool