About this role
Job Title: UAS Software Engineer Join a team developing next-generation Unmanned Aerial Systems (UAS) for defence applications. You will contribute to mission-critical software used in autonomous flight operations, ground control, and simulation environments. Key Responsibilities: Collaborate with cross-functional teams to gather requirements and define software specifications for UAS. Design and develop robust, scalable, and efficient software solutions that meet aerospace industry standards and regulatory/authority requirements. Develop software for one or more of the following domains real-time applications for airborne embedded systems applications for ground control stations simulation applications for testing Perform thorough testing and validation of software components to ensure reliability, safety, and performance under various operating conditions. Conduct code reviews, provide constructive feedback, and contribute to a culture of continuous improvement and knowledge sharing. Requirements: Bachelor’s degree in Computer Science, Computer Engineering, Engineering, Physics, Mathematics, or equivalent. Singapore citizenship is required for this position. Proficient in C, C++, C# programming languages. Experience with Python and JavaScript is advantageous. Familiarity with Microsoft Visual Studio and .NET. Experience in Git source control. Understanding of software development lifecycle processes and methodologies (Waterfall, Agile) Knowledge of software testing methodologies and best practices. Strong analytical, problem-solving, and communication skills . Strong team player with the ability to work in a multidisciplinary environment. Willingness to travel overseas or undertake long-term overseas deployment is required. Candidates without prior experience but with relevant internships, capstone, research, or project experience are encouraged to apply. Candidates with 2+ years of industry experience are preferred . The following skills and experience would be advantageous: Experience in software development for embedded systems and RTOS (Real-Time Operating System) environments. Experience in Aviation, Aerospace, or UAS domains. Knowledge of avionics communication standards – CAN Bus, MIL-STD 1553B, Serial (UART/RS-232/RS-422/RS-485), Ethernet, TCP/IP, and UDP. Experience in computer network design, setup and configuration. Experience with geospatial and mapping technologies (eg. CesiumJS). Working knowledge of SQL and NoSQL databases. Understanding of DevOps practices, tools and methodologies. Experience with Linux-based development environment. Experience with virtualization technologies (eg. VMware). Familiarity with containerization technologies and microservices architecture (eg. Docker, Kubernetes, OpenShift), including service communication, and messaging platforms such as Apache Kafka Familiar with front-end development using React and Typescript. Experience with Azure DevOps and CI/CD pipeline implementation. Familiar with automated software testing, static code analysis and software quality tools (eg. SonarQube). Knowledge of cybersecurity principles and secure software development practices.