Junior Software Engineer (C++ Middleware & Interfaces)
ADOMITA TECHNOLOGIES PTE. LTD.Role Description & Requirements
About the role
Support the development, testing, integration, and maintenance of a customised C++ middleware solution and its associated software interfaces. The role provides hands-on implementation capability within a supervised engineering environment, with opportunities to develop expertise in C++, system integration, communications protocols, testing, and software configuration management.
Responsibilities
• Develop and maintain C++ software modules under the guidance of the Senior Software Engineer / Technical Lead.
• Implement middleware functions, software adapters, protocol handlers, message parsers, data-conversion logic, configuration functions, and diagnostic features.
• Support the integration of software interfaces between the middleware solution and customer, third-party, or internal systems.
• Write clean, maintainable, and well-documented C++ code in accordance with project coding standards and software-development processes.
• Develop unit tests and support integration, system, and acceptance testing activities.
• Investigate software defects, analyse logs and diagnostic data, reproduce reported issues, and support corrective actions.
• Prepare and maintain technical artefacts such as source-code documentation, test records, configuration files, software release notes, and installation instructions.
• Participate in code reviews and incorporate feedback from the Senior Software Engineer and project team.
• Use Git and approved configuration-management processes to manage source code, branches, baselines, and software releases.
• Support build, deployment, and test-environment setup activities, including Linux-based development and integration environments.
• Assist with customer demonstrations, factory acceptance testing, site integration, commissioning, and troubleshooting when required.
• Participate in technical discussions with system engineers and other disciplines to understand interface requirements, expected data flows, and integration constraints.
• Maintain awareness of software quality, cybersecurity, and configuration-control requirements relevant to the project.
Requirements
• Degree or diploma in Computer Science, Computer Engineering, Electrical/Electronic Engineering, or a related discipline.
• 2 to 3 years of relevant software-development experience.
• Good foundation in C++ programming, including object-oriented design, memory management, debugging, and standard data structures.
• Basic understanding of software-development lifecycle practices, including requirements, implementation, testing, defect tracking, and version control.
• Familiarity with Git or another source-control system.
• Familiarity with Linux or willingness to develop competence in a Linux-based software-development environment.
• Ability to read technical specifications, follow structured development tasks, and document work clearly.
• Strong analytical, problem-solving, and troubleshooting skills.
• Good teamwork and communication skills
Preferred Qualifications and Experience:
• Experience in C++, Linux, embedded systems, networking, middleware, or systems integration.
• Familiarity with TCP/IP networking, sockets, REST APIs, serial communications, or basic client-server architectures.
• Exposure to JSON, XML, YAML, CSV, or other structured data formats.
• Exposure to CMake, Makefiles, automated tests, CI/CD, Docker, or scripting using Python or Bash.
• Familiarity with unit-test frameworks for C++.
• Interest in communications systems, industrial automation, maritime systems, defence systems, IoT, robotics, or real-time software environments.
Ready to submit your application?
You will be redirected directly to ADOMITA TECHNOLOGIES PTE. LTD.'s official custom page.
Want alerts for similar roles? Upload your resume to turn on your 24/7 job radar for roles like Junior Software Engineer (C++ Middleware & Interfaces).