As a Software Engineer, you will be working with a multidisciplinary team of software, computer, mechanical, electronics and communications engineers who are passionate in turning ideas to actual systems, with a strong sense of purpose in advancing our capabilities. Our Software Engineers shall develop software that breathes intelligence into our systems. We strive to make our systems smarter and easier to operate, collaborating seamlessly with other systems to meet the mission requirements.
You will be involved in one or more of the following activities in a software development life cycle:
Be part of a dynamic team to elicit system requirements and develop software specifications, based on mission and users’ needs
Design software architecture that are resilient, safe and secured
Write robust code to implement software requirements and design tests cases
Build up test environment and simulators for hardware and software verifications
Collaborate with the team to carry out integration tests with the hardware platform in the lab / field / flight / sea trials
Short term travel overseas for trials may be required in certain job posts.
Requirements:
Bachelor's Degree in Computer / Electrical / Electronic Engineering or Computer Science
Experience in C / C++ / Java / Python programming and Object-Oriented Analysis & Design would be advantageous
Passion to write code and participate in field trials to see the code in action
Interest in any of the following areas: Machine Learning, Data Analytics, IoT, Real-Time Embedded Systems, Cyber Physical System Security, Robotics, Graphical User Interfaces, Video Encoding, Signal Processing, Network Communications, Control, or full web stack development
Open minded and comfortable in interacting with engineers from other disciplines