C++ Developer

About the Role:

We are looking for an experienced C++ Developer with hands-on expertise in Metro AFC (Automatic Fare Collection) systems. The ideal candidate will have strong knowledge of C++ programming along with experience in AFC subsystems such as Gates, TVM, TOM, Validators, Station Devices, and Back-Office Systems.

Key Responsibilities:

  • Develop, enhance, and maintain AFC software modules using C++ (preferably C++11/14/17).
  • Work on device communication with AFC equipment (Gates, TVM, TOM, Validators, PDS, PAD, Station Server).
  • Integrate AFC systems with central back-office servers (Clearing House, HCMS, Revenue Systems).
  • Troubleshoot software issues related to station devices and field AFC systems.
  • Work closely with hardware, networking, and AFC operations teams to deliver stable solutions.
  • Participate in requirement analysis, technical design, coding, testing, and deployment.
  • Develop communication protocols (TCP/IP, Serial, REST APIs, SOAP, XML/JSON).
  • Ensure software performance, reliability, and compliance with Metro standards.
  • Collaborate with QA teams to support functional, integration, and device-level testing.
  • Prepare technical documentation, design notes, test cases, and release notes.

Required Skills:

  • Strong proficiency in C/C++, OOPS, STL, Multithreading, IPC.
  • Experience working on AFC domain software (mandatory).
  • Hands-on experience in device protocol handling, middleware, or embedded applications.
  • Knowledge of Linux-based development, build tools, and deployment.
  • Experience with SQL / MySQL / PostgreSQL (good to have).
  • Understanding of networking concepts (TCP/IP, SFTP, sockets).
  • Familiarity with Message Queues, Microservices (optional)

Find Latest Job