Perform design, implementation, and deployment of advanced software modules for robotics systems, such as perception, localisation, navigation, machine learning, or robotics management
Develop, optimise and test software algorithm APIs under Windows and/ or embedded Linux environments
Develop validation and verification test plans, to ensure that the engineering deliverables meet both customer goals and internal specifications as well as troubleshooting
Participate in meetings with cross-functional teams to solicit inputs for continual improvement process
Conduct trials to collect data and evaluate the attribute or capability of the software modules. Perform quality assurance to ensure it meets the expected results
Support the testing/ deployment engineer in defining DOE (design of experiment) procedures, analysing and documenting the result
Support the software lead in administration or software documentation when required
Troubleshooting robotics systems in both simulation and physical system
Static code analysis, unit testing and code coverage
Perform system deployment, integration, tests and project documentation
Communicate with internal/ external customers on project requirements/ progress and on-site system implementation
Requirements:
At least a Degree in Computer Science, Electrical/ Mechatronics/ Mechanical Engineering (related discipline or equivalent)
Entry level candidates are welcome to apply.
Knowledge or experience related to C, C++
Knowledge or experience related to Python programming is an added advantage
Knowledge of ROS is an added advantage
Experience in embedded systems implementation, such as ARM, DSP or FPGA, would be an added advantage
Having experience in technology development for robotics systems will be a plus, not mandatory
Ability to contribute as a team player or independently
Strong interpersonal and communication skills
Ability to demonstrate a high level of initiative and resourcefulness