C++ Engineer

Persistent Systems

Pune District

Hybrid

INR 2,500,000 - 4,500,000

Full time

9 days ago

Get more replies from employers

Send a job-specific resume in minutes.

Benefits offered by this job

Hybrid work pattern
Learning & development support
Flexible work hours
Equal opportunity employer

Job summary

Persistent Systems is seeking an experienced R&D Engineer to advance a multi-protocol network performance monitoring engine. You will work on a mature C++ system with a robust polling scheduler, MIB/OID management, and a pluggable session architecture spanning SNMP, CLI, and streaming telemetry.

The role emphasizes high-scale concurrency, advanced formula processing, and integration with Docker, Git, and CI/CD pipelines. Hybrid work arrangements are available.

Qualifications

  • Proficiency in C++ (C++14 or later) with cross-platform builds.
  • Experience with multithreaded, scheduler-driven systems including thread pools and session handling.
  • Strong knowledge of socket programming and non-blocking I/O.
  • Familiarity with CMakes, large modular codebases and RAII.
  • Hands-on with SNMP, NETCONF/YANG and streaming telemetry concepts.

Responsibilities

  • Design, implement, and maintain multi-protocol polling session handlers across SNMP, CLI, and streaming telemetry.
  • Maintain the polling scheduler with queuing, slot management, and high-scale concurrency.
  • Develop and evolve the MIB/OID subsystem and formula evaluation engine.
  • Own data abstraction layer with multithreaded DB transactions and metric persistence.
  • Support Docker packaging, CI/CD pipelines, and Helm deployments.
  • Contribute to code reviews, architecture discussions, and technical docs.

Skills

C++
Multi-threaded
Socket programming
OpenConfig
gNMI/gRPC
JMX
Docker
CI/CD
Git
Kubernetes
CMake
RAII
STL

Tools

Docker
Git
CI/CD
Kubernetes
CMake

Job description

We are looking for an R&D Engineer to join the team responsible for a multi-protocol network performance monitoring and data collection engine. This engine polls network devices, servers, and infrastructure components using a wide range of industry-standard protocols including SNMP, CLI (SSH/Telnet/NETCONF), ICMP, WBEM, VMware API, and streaming telemetry, and processes the collected metrics through a formula evaluation engine before persisting them to a time-series store for analytics and reporting. The codebase is a mature, high-volume C++ engine with a multi-threaded polling scheduler, a compiled formula language, MIB/OID management, and a pluggable session architecture supporting dozens of polling protocols and device types

  • Location: All Persistent Location
  • Experience: 7 to 15 Years
  • Job Type: Full-Time Employment
What You'll Do:
  • Design, implement, and maintain multi-protocol polling session handlers: SNMP v1/v2/v3, CLI-based (SSH, Telnet, JunoScript, NETCONF, HTTP), ICMP/ping, WBEM, VMware vSphere API, Windows Performance counters, and streaming telemetry receivers.
  • Maintain and evolve the polling scheduler including request queuing, slot/variable management, session lifecycle, and multi-threaded dispatcher for high-scale concurrent polling.
  • Maintain the MIB/OID subsystem including MIB loading and parsing, OID-to-variable mapping, SMI protocol type handling, and support for vendor-specific MIB extensions.
  • Develop and maintain the formula evaluation engine, including compiled expression language, operator definitions, timeseries processing, filter and alarm conditions, and formula caching.
  • Own the data abstraction layer, including multi-threaded database transactions, checkpointing, event and notification handling, and metric persistence for large-scale device fleets.
  • Maintain the push/delivery subsystem, including HTTP-based metric forwarding, bulk API delivery, SSL socket handling, and recovery mechanisms.
  • Develop and maintain NETCONF/YANG polling integration and other model-driven network management protocol adaptors.
  • Write unit and integration tests covering polling protocol edge cases, formula evaluation correctness, and scheduler behaviour under load.
  • Maintain Docker packaging and contribute to CI/CD pipelines and Helm chart deployment.
  • Participate in code reviews, architecture discussions, and technical documentation maintenance.
Expertise You'll Bring:
  • C++ (Primary Language)
  • Data & Formula Processing
  • Deployment
  • Nice to Have
  • Proficiency in C++ (C++14 or later) with familiarity in cross-platform (Linux/Windows) builds.
  • Experience writing multi-threaded, scheduler-driven systems including thread pools, request queues, timer management, and concurrent session handling.
  • Solid understanding of socket programming, non-blocking I/O, and connection lifecycle management.
  • Experience working with CMake build systems and large, modular legacy codebases.
  • Familiarity with RAII, smart pointers, and STL algorithms.
  • In-depth knowledge of SNMP (v1, v2c, v3) including GetRequest, GetNext, GetBulk, SNMPv3 authentication/privacy (USM), engine ID management, INFORM and TRAP handling.
  • Working knowledge of MIBs and OIDs, including MIB parsing, OID tree navigation, RMON MIBs, and vendor-specific MIB extensions.
  • Hands-on experience with SSH/Telnet-based CLI polling, command scripting, output parsing, and session negotiation across vendor CLIs (Cisco IOS, Junos, etc.).
  • Familiarity with NETCONF (RFC 6241 ) and YANG data modelling for model-driven network management.
  • Working knowledge of ICMP (ping, RTT, packet loss measurement) and active probing techniques (Cisco SAA/IP SLA, DISMAN-PING).
  • Familiarity with WBEM / CIM for Windows and Linux server metric collection.
  • Experience with expression/formula compiler design, including lexer/parser (lex/yacc or ANTLR), operator precedence, and compiled evaluation trees.
  • Understanding of time-series data processing, including delta calculations, rate computation, aggregations, baseline comparisons, and threshold/alarm evaluation.
  • Working knowledge of SQL and relational database schemas for metric storage, including transaction management, bulk inserts, and query optimisation for time-series workloads.
  • Familiarity with VMware vSphere API for virtual infrastructure metric collection.
  • Basic understanding of JMX (Java Management Extensions) for Java application monitoring.
  • Familiarity with HTTP/REST for metric push delivery and device API polling.
  • Experience with Docker for containerising applications and managing multi-stage builds (mandatory).
  • Experience with Git and CI/CD pipelines for version control and automated build, test, and release workflows (mandatory).
  • Knowledge of Kubernetes and Helm for workload deployment (nice to have).
  • Experience with build systems including CMake (primary) and Make.
  • Experience with streaming telemetry protocols (gNMI/gRPC, OpenConfig) as alternatives to SNMP-based polling.
  • Knowledge of NETCONF/RESTCONF combined with OpenConfig or vendor YANG models.
  • Familiarity with CORBA or other legacy RPC mechanisms in network management systems.
  • Background in network topology discovery and device inventory management.
  • Experience with WMI / Windows Performance counters for Windows server monitoring.
  • Familiarity with Prometheus and Grafana for metrics collection and operational monitoring.
  • Basic Java development experience, including JVM-based monitoring and JMX integration.
  • Experience with SIPp, Ixia, Spirent, or similar traffic generation/probing tools for active network measurement.
  • Competitive salary and benefits package
  • Culture focused on talent development with quarterly growth opportunities and company-sponsored higher education and certifications
  • Opportunity to work with cutting-edge technologies
  • Employee engagement initiatives such as project parties, flexible work hours, and Long Service awards
  • Insurance coverage: group term life, personal accident, and Mediclaim hospitalization for self, spouse, two children, and parents
Values-Driven, People-Centric & Inclusive Work Environment:

Persistent is dedicated to fostering diversity and inclusion in the workplace. We invite applications from all qualified individuals, including those with disabilities, and regardless of gender or gender preference. We welcome diverse candidates from all backgrounds.

  • We support hybrid work and flexible hours to fit diverse lifestyles.
  • Our office is accessibility-friendly, with ergonomic setups and assistive technologies to support employees with physical disabilities.
  • If you are a person with disabilities and have specific requirements, please inform us during the application process or at any time during your employment

“Persistent is an Equal Opportunity Employer and prohibits discrimination and harassment of any kind.”

Get your free, confidential resume review.
or drag and drop your file here.
Similar jobs

Similar jobs worth comparing

C++ Engineer
C++ Engineer

Persistent • Pune District

On-site
INR 2,800,000 - 4,200,000
Competitive salary
Education sponsorship
Hybrid work arrangement
+2
Networking C++ R&D Developer
Networking C++ R&D Developer

Persistent Systems Limited • Pune District

Hybrid
INR 3,000,000 - 6,000,000
Hybrid work
Growth opportunities
Education sponsorship
+2
Networking C++ R&D Developer
Networking C++ R&D Developer

Persistent Systems • Pune District

Hybrid
INR 4,000,000 - 7,000,000
Competitive salary and benefits
Talent development culture
Cutting‑edge technologies
+3
Networking C++ R&D Developer
Networking C++ R&D Developer

Persistent • Pune District

Hybrid
INR 3,000,000 - 5,200,000
Competitive salary package
Hybrid work and flexible hours
Annual health check-ups
+2
C++ DPDK Backend Developer
C++ DPDK Backend Developer

Persistent • Pune District

Hybrid
INR 1,500,000 - 2,100,000
Hybrid work
Growth opportunities
Health benefits
+1
Telecom Domain Expert
Telecom Domain Expert

Persistent • Pune District

On-site
INR 4,000,000 - 7,000,000
Competitive salary and benefits
Higher education sponsorship
Flexible work hours
+2
Telecom Domain Expert
Telecom Domain Expert

Persistent Systems • Pune District

On-site
INR 4,000,000 - 6,400,000
Hybrid work
Equal opportunity employer
C++ Telecom Software Engineer
C++ Telecom Software Engineer

Persistent Systems • Bengaluru

Hybrid
INR 2,600,000 - 3,800,000
Hybrid work
Long Service awards
Insurance coverage
+1
Lead Developer
Lead Developer

Persistent • Pune District

On-site
INR 4,000,000 - 7,000,000
Competitive salary
Hybrid work options
Health check-ups
+2
C++ DPDK Backend Developer
C++ DPDK Backend Developer

Persistent Systems • Pune District

Hybrid
INR 3,000,000 - 5,500,000
Hybrid work arrangement
Continuous learning & education