Harmonic Recruitment 2026 – Junior C++ Engineer, Bengaluru
Harmonic
Scroll down to apply
1–3 years in C++ software development1 week ago
Experience1–3 years in C++ software development
QualificationB.E., B.Tech, M.E. or M.Tech in Computer Science, Electronics, Electrical Engineering or a related field
Key Responsibilities
The selected engineer will join a global Agile software Scrum team and contribute to the development of broadband networking products and services.
Design and implement features within the MAC and upper-layer protocol domains using modern C++ technologies. The work focuses on developing reliable and maintainable software for networking solutions.
Contribute to solutions running on Linux servers in containerised environments such as Kubernetes. Engineers will work with networking technologies and development methodologies used in broadband systems.
Investigate and resolve complex technical issues reported by internal quality assurance teams and external customers. This requires systematic problem-solving and an understanding of how the software behaves across different components.
Plan, develop and deliver software features within an Agile development environment. Engineers collaborate with other team members to estimate work, discuss requirements, review changes and deliver improvements.
The role description also emphasises the ability to drive complex C++ features and contribute to multi-module, multi-package solutions. This involves considering interactions between components and ensuring that new features fit into the overall system architecture.
Skills & Eligibility
Harmonic is seeking candidates who can contribute to software development in a technically demanding networking environment. Applicants should have practical C++ development experience and a sound understanding of operating systems, networking and software design.
Educational qualification: B.E., B.Tech, M.E. or M.Tech in Computer Science, Electronics, Electrical Engineering or a related field.
Experience: 1–3 years of experience designing, developing and maintaining software applications using C++.
Programming: Strong proficiency in C/C++ and the ability to develop efficient, robust and maintainable code.
Multithreading: Experience with concurrent programming and multithreaded applications.
Object-oriented design: Solid understanding of OOD principles and design patterns.
Networking: Knowledge of networking concepts and practical experience developing or debugging networking-related applications.
Linux development: Experience developing, debugging and optimising software under Linux.
Python: Experience using Python for scripting, automation or supplementary development tasks.
Problem-solving: Ability to investigate complex technical issues and contribute to high-complexity software features.
Collaboration: Ability to work with global Agile software development teams.
Important: The job description expects more than basic programming knowledge. Candidates should have practical C++ development experience, understand networking and Linux environments, and be comfortable investigating complex software problems.
The supplied recruitment summary and job description specify 1–3 years of relevant experience. Candidates without any relevant C++ development experience should not assume that this position is intended for freshers.
Applicants whose internships or other software development experience involve C++ should verify whether that experience meets Harmonic’s requirements. The official listing does not specify how different types of experience are counted.
The job description identifies the following qualifications:
B.E. or B.Tech in Computer Science.
B.E. or B.Tech in Electronics.
B.E. or B.Tech in Electrical Engineering.
M.E. or M.Tech in Computer Science, Electronics, Electrical Engineering or a related technical field.
The description also allows a related field. Candidates from other disciplines should confirm whether their degree is considered relevant before submitting an application.
The job description identifies the following qualifications:
B.E. or B.Tech in Computer Science.
B.E. or B.Tech in Electronics.
B.E. or B.Tech in Electrical Engineering.
M.E. or M.Tech in Computer Science, Electronics, Electrical Engineering or a related technical field.
The description also allows a related field. Candidates from other disciplines should confirm whether their degree is considered relevant before submitting an application.
C/C++ programming is the central technical requirement for this role. Harmonic expects candidates to develop software features and maintain code that is robust, efficient and suitable for complex networking applications.
Candidates should be comfortable writing, testing, debugging and maintaining C++ code. They should also understand how to organise software into reusable components and investigate performance issues.
Important topics to revise include:
C and C++ language fundamentals.
Pointers, references and memory management.
Classes, objects and constructors.
Inheritance, encapsulation and polymorphism.
STL containers and algorithms.
Resource management and object lifetimes.
Debugging, profiling and performance optimisation.
Writing reliable and maintainable code.
Practical coding examples are particularly useful when preparing for a role that requires hands-on development experience.
The job description specifically requires solid experience in multithreading. Multithreaded software allows multiple execution paths to operate concurrently, which can be important in networking systems that process several activities at the same time.
Candidates should understand threads, synchronisation, shared data and common concurrency problems.
Useful preparation topics include:
Threads and processes.
Thread creation and management.
Mutexes, locks and synchronisation.
Race conditions and deadlocks.
Thread-safe data access.
Debugging concurrency-related defects.
Performance considerations in multithreaded applications.
Applicants should be ready to explain how they have used concurrency in a project and how they would investigate a problem involving shared resources or synchronisation.
Object-oriented design helps developers structure large software systems into components with clearly defined responsibilities. Design patterns provide reusable approaches to recurring software design problems.
Harmonic expects candidates to have solid experience using OOD and design patterns to solve complex problems.
Topics worth reviewing include:
Classes, interfaces and abstractions.
Encapsulation and separation of responsibilities.
Composition and inheritance.
Common design patterns and their use cases.
Modular software architecture.
Designing components that can be tested and maintained independently.
Managing dependencies between software modules.
Candidates should be able to explain not only what a design pattern does, but also why they would choose it for a particular problem.
Networking knowledge is an important requirement because the role involves developing features in the MAC and upper-layer protocol domains. These areas form part of the communication stack used in networking systems.
Candidates should understand how devices exchange data, how network protocols operate and how to investigate connectivity or communication problems.
Useful areas to review include:
TCP/IP fundamentals.
Ethernet and IP networking basics.
Network ports, sockets and connections.
Client-server communication.
Packet flow and protocol behaviour.
Network troubleshooting methods.
Debugging applications that communicate over a network.
The official description emphasises practical experience developing and debugging networking applications. Candidates should therefore be prepared to discuss real examples from their work.
The role requires experience developing software under Linux, including debugging and performance optimisation. Linux is used in a wide range of server and networking environments, making familiarity with its development tools important for this position.
Candidates should understand Linux command-line tools, process management, files, permissions, compilation and application execution.
Useful preparation topics include:
Linux command-line fundamentals.
Processes and threads.
Compiling and running C++ applications.
Application logs and debugging output.
Memory and CPU usage investigation.
Performance profiling and bottleneck analysis.
Shell commands and scripting for development tasks.
Applicants should be able to explain how they diagnose a Linux application issue and determine whether it is related to application logic, resource usage or the environment.
Harmonic expects candidates to investigate and resolve complex system-wide problems, drive high-complexity features and contribute to multi-module software solutions.
This requirement involves looking beyond individual lines of code and understanding how different software components interact.
Candidates should be comfortable analysing dependencies, identifying the origin of a problem, considering system-wide effects and developing solutions that remain maintainable as the codebase grows.
Examples from projects involving multiple modules, network communication, concurrency or performance optimisation can help demonstrate these capabilities.
Python is listed as a supporting skill for scripting, automation and supplementary feature development. It can help engineers automate repetitive tasks, process information and build supporting tools for software development.
Candidates should understand Python fundamentals, file handling, scripting, error handling and basic automation techniques.
The job description does not identify Python as a replacement for C++. The main development focus remains C/C++, with Python supporting selected tasks.
The role involves contributing to networking solutions that run on Linux servers and use containerised environments such as Kubernetes.
Containers package applications and their dependencies into manageable units. Kubernetes provides tools for deploying and operating containerised applications across a cluster.
Useful topics to review include:
Containerisation fundamentals.
Docker and container images.
Kubernetes pods and deployments.
Services and basic networking within Kubernetes.
Logs, monitoring and troubleshooting containerised applications.
How application services are deployed and managed in a cluster.
The supplied job description identifies Kubernetes as part of the working environment. Candidates should verify the depth of practical Kubernetes knowledge expected for their particular interview.
Familiarity with DOCSIS concepts and implementations is listed as an advantage. DOCSIS is a technology standard used to provide broadband data services over cable television networks.
Harmonic develops virtualised broadband solutions and technologies for cable operators. Understanding the basic purpose of cable broadband systems, network protocols and data transmission can help candidates appreciate the domain in which this software is used.
DOCSIS familiarity is listed as an advantage rather than a mandatory qualification, so applicants should not assume that certification is required unless the employer specifies it separately.
Harmonic is looking for candidates who are interested in incorporating AI tools and technologies into software development to improve productivity, quality and delivery speed.
This may involve using AI-assisted tools to support code exploration, documentation, debugging or test development. Engineers must still understand the software they produce and validate suggested changes before incorporating them into a codebase.
The job description identifies enthusiasm for AI as an advantage. It does not state that candidates must have professional experience developing AI models.
The job description accepts B.E., B.Tech, M.E. or M.Tech in Computer Science, Electronics, Electrical Engineering or a related field.
October 20, 2026
Note: This job is posted on external sites. Joblit shares the listing for convenience and does not take responsibility for third-party content.