Key Responsibilities:
· Collaborate with cross-functional teams to gather requirements and define software specifications for aircraft mission-critical systems.
· Design and develop robust, scalable, and efficient software solutions that meet aerospace industry standards and regulatory / authority requirements.
· Implement real-time software, data processing software, and control systems software for onboard and offboard aircraft applications.
· Perform thorough testing and validation of software components to ensure reliability, safety, and performance under various operating conditions.
· Participate in DevOps / DevSecOps activities, including continuous integration, deployment automation, and security enhancements.
· Document design processes, including development, testing, analytics, and troubleshooting.
· Conduct code reviews, provide constructive feedback, and contribute to a culture of continuous improvement and knowledge sharing.
· Work closely with hardware/firmware engineers and avionics systems engineers to integrate software with onboard avionics systems and ensure seamless functionality.
· Stay updated on the latest advancements in aerospace technology, software engineering best practices, and industry trends and standards to drive innovation and competitiveness. (e.g. Kubernetes, Docker, Type 1 Hypervisors, DDS, ARINC 653, Generative AI).
· Overseas travel or deployment can be expected.
Qualifications:
· Bachelor's or Master's degree in Computer Science, Computer Engineering, or equivalent field.
· 2 to 6 years of working experience in software development is preferable but not essential.
Fresh graduates with relevant experience are welcome to apply.
Requirements:
· Proficient in C/C++, Python, and Dot Net programming languages/frameworks.
· Expertise in developing, testing, and debugging production-quality, scalable, multi-threaded, concurrent systems.
· Able to apply Object Oriented Software design patterns effectively.
· Proficient in the identification of code smells and effective in code refactoring.
· Familiarity with software development methodologies including Agile, and experience working in Agile environments, version control systems, software test frameworks, and software testing techniques.
· Interest in DevOps / DevSecOps practices and a willingness to contribute to related activities.
· Excellent communication skills, Strong analytical thinking, and problem-solving skills, with a keen attention to detail and a commitment to delivering high-quality results.
The following skillsets would be an added advantage:
· Experience with network troubleshooting/problem resolutions, protocol analysis, network troubleshooting/problem determination skills with network trace/capture/analysis software (Familiarity with network security technologies and products is a plus).
· Experience with distributed systems concepts and client-server architectures.
· Knowledge of relational databases, SQL, JSON, XML and XPath for handling of both.