The Aviation Innovation Research (AIR) Lab
Established in Nov 2019, the Civil Aviation Authority of Singapore (CAAS) and Thales launched the S$30 million research lab in Singapore as a key nexus to accelerate the innovation and collaboration between CAAS and Thales for the next generation of Air Traffic Management (ATM).
Co-steered by the senior management from CAAS and Thales, AIR Lab is leveraging open and advanced technologies such as Artificial Intelligence (AI) and Machine Learning (ML) to develop and demonstrate future ATM Proof-of-Concepts (POCs). The POCs in AIR Lab will allow quick integration of the new innovations that are developed into an ATM System. AIR Lab is also co-located with the Thales Digital Factory to synergise with the digital transformation efforts in Thales.
Strategically sited in the vibrant WeWork’s flagship in Suntec, the AIR Lab aims to accelerate the development of the next-gen of local ATM experts and nurture their talents. ATM domain experts software developers/engineers and Air Traffic Controllers (ATCOs) from CAAS and Thales would also be working in concert and in an agile fashion on the POCs. Supported by the Aviation Transformation Programme (ATP) under the National Research Foundation, AIR Lab provides an open platform for multiple stakeholders in the ATM value chain; including AI experts, software engineers, local start-ups, and enterprises, to collaborate and overcome technological challenges faced by conventional aviation management.
The AIR Lab also provides an opportunity for innovative start-ups to participate in the excellence of Singapore’s own ATM ecosystem and to jointly develop solutions that can be scaled at a global level.
Position Summary:
The Software Engineer contributes to design, development and testing of software components in line with the defined functional baseline of the solution. The Software Engineer will display high technical proficiency in back-end software design and development and, at the same time, will be ready to be flexible, proactive and comfortable with learning a new domain and new concepts and techniques. The Software Engineer will be working on critical components of a new, innovative and Cloud-native platform within an Agile team, building world leading technology.
Her / his strengths and developmental interests will be in Core Java, low latency programming, real time software, micro-services, Cloud-native applications and open source within a complex applications environment deployed in cloud.
Responsibilities:
· To successfully interpret and convert functional / feature requirements into justifiable SW implementation designs, leveraging existing and / or industry best practice frameworks
· To author highly efficient SW code and automated SW unit tests for features / components as assigned by the team leader
· Work in an agile, cross-functional multinational team, actively engaging to support the success of the team
· Delivery of high-quality best-practice clean code
· To think out of the box to contribute to solving complex technical problems and to work collaboratively with the rest of the team to build a shared approach consensus
Requirements:
Education
· Bachelor's Degree in Software Engineering, Computer Science or Information Technology with a minimum of 5 years of experience
· Experience working in a highly complex engineering environment
Essential Skills/Experience
· Strong technical knowledge and hands-on experience of software design and development methodologies
· Strong knowledge of CORE JAVA , Java 8
· Strong knowledge of common integration patterns (including cloud-native such as micro-services and streaming such as lambda and kappa patterns)
· Successful development and deployment of public APIs for web services using representations and deployments such as REST, RESTful web services and API Gateways
Desirable Skills/Experience
· Good knowledge of Cloud technologies and Cloud-native architectures for system design and delivery. Knowledge of specific Cloud supplier platform services, in particular Kubernetes,
· Knowledge of messaging broker middleware / COTS packages such as Kafka producer / consumer and Kafka Streams
· Understanding of cybersecurity concepts in the domain of cloud technologies, architectures and deployments (e.g. how things are connected and potential risk areas)
· Knowledge and practical experience of virtualised and containerised deployments and, preferably, their Linux foundations
· Previous exposure to and use of several tools for CI/CD and automated SW testing, with hands-on software design and development experience.
· Effective user of I/SDE and Gitlab (or equivalent) environments and able to quickly construct SW projects and efficiently carry out debugging and project increment delivery in constrained environments.
· Knowledge of real time software development and safety critical systems
· Knowledge of several languages (e.g. Kotlin, Go, TypeScript, Ada or Java 6) or frameworks (React, Swing)
· Previous experience with large data storage and analytics platforms (Datalake) and data manipulation tooling, e.g. Kibana, Elasicsearch, LogStash
· Previous experience with AI/ML frameworks
· Power user of base OS (Linux) cli and shell scripting to accelerate personal and team outcomes.
Soft Skills
· Possess learning agility, flexibility and proactivity
· Comfortable with agile teamwork and customer engagement