Job Title :
C/C++ Senior Software Engineer
Location :
Gurgaon
Job Type :
Full Time (Work from Office)
Department :
Engineering
Overview
We are seeking an experienced and highly skilled C/C++ Senior Software Engineer to join our dynamic development team. The ideal candidate will have a deep understanding of C/C++ programming, good understanding of mobile communication systems (4G/5G), and should be able to drive technical solutions. This role is pivotal in ensuring the quality and performance of complex software systems and fostering a collaborative and innovative development :
- Coding : Design, develop, and maintain software in C/C++, including but not limited to 4G/5G core network elements, radio access network (RAN).
- Problem Solving & Optimization : Analyze complex technical problems, troubleshoot issues, and provide innovative solutions. Optimize critical performance areas, memory usage, and multithreading for high-performance applications.
- Collaboration : Work closely with cross-functional teams, including Product Management, Quality Assurance, and Operations, to define project requirements, ensure timely delivery, and maintain high-quality software solutions.
- Documentation : Create and maintain technical documentation e.g., code documentation to ensure clarity and knowledge sharing across the team.
- Continuous Improvement : Stay updated on industry trends, new tools, and technologies related to C programming, and propose their integration into projects when appropriate. Foster a culture of continuous learning and process improvement.
- Contribute to the design and implementation of system integration, testing, and validation in both simulation and live network environments.
Required Qualifications
Education :
Bachelors or masters degree in computer science, Engineering, or related field, or equivalent practical experience.
Experience
- At least 2 - 4 years of hands-on experience in C/C++ programming, with a strong understanding of low-level programming concepts.
- In-depth knowledge of system-level programming, memory management, multithreading, and performance optimization in C/C++.
Technical Skills
- Expertise in C programming language with strong skills in signal handling, Timer management multithreading, DB connections & Interaction etc., with strong debugging and optimization skills.
- Must have worked on Unit testing frameworks e.g., Cunit.
- Familiarity with version control systems (e.g., Git), build systems (e.g., Make, CMake), and continuous integration tools.
- Understanding of computer architecture, including CPU, memory hierarchies, and I/O systems.
- Experience in working with databases, networking protocols, and API integrations.
- Experience in system architecture, code reviews, GDB or other debuggers, cloud services, microservice architecture.
Soft Skills
- Strong problem-solving abilities and attention to detail.
- Excellent communication skills to articulate complex technical concepts to both technical and non-technical stakeholders.
- Ability to work well under pressure and manage multiple priorities.
Preferred Qualifications
- Experience with software development methodologies like Agile or Scrum.
- Familiarity with other programming languages (e.g., Python).
- Familiarity with 5G/4G radio access network (RAN) architecture, mobile communication systems, and real-time network protocols
- Knowledge of software testing practices and frameworks for unit testing, integration testing, and performance testing.
- Knowledge of cloud technologies, containerization, and microservices architectures.
(ref:hirist.tech)