ARAryan Solutions Pte Ltd
Software Engineer (C++ Middleware & Interfaces)
Singapore ₹4K-7K LPA Posted 10 Nov 2026
FULL TIME
C++
Linux
Job Description
Description:
About the role
Contribute to the development, testing, integration, and ongoing maintenance of a tailored C++ middleware solution and its related software interfaces. This position offers hands-on implementation in a supervised engineering setting, with opportunities to build capability in C++, systems integration, communications protocols, testing practices, and software configuration management.
Responsibilities
- Create and maintain C++ software modules under the direction of the Senior Software Engineer / Technical Lead.
- Develop middleware functions, software adapters, protocol handlers, message parsers, data-conversion logic, configuration functions, and diagnostic capabilities.
- Assist with integration of software interfaces between the middleware solution and customer, third-party, or internal systems.
- Produce clear, maintainable, and thoroughly documented C++ code in line with project coding standards and established software-development processes.
- Write unit tests and support integration, system, and acceptance testing efforts.
- Investigate software defects by reviewing logs and diagnostic information, reproducing reported problems, and supporting corrective actions.
- Develop and keep technical artefacts up to date, including source-code documentation, test records, configuration files, software release notes, and installation instructions.
- Join code reviews and apply feedback provided by the Senior Software Engineer and the broader project team.
- Employ Git and approved configuration-management procedures to control source code, branches, baselines, and software releases.
- Support activities related to build, deployment, and test-environment setup, including Linux-based development and integration environments.
- Help with customer demonstrations, factory acceptance testing, site integration, commissioning, and troubleshooting as needed.
- Engage in technical discussions with system engineers and other disciplines to understand interface requirements, expected data flows, and integration constraints.
- Stay informed about software quality, cybersecurity, and configuration-control requirements applicable to the project.
