Research Assistant (Software Engineer)
NUS, Singapore’s flagship university, and SIA, Singapore’s flagship carrier, jointly established a 5-year SIA-NUS Digital Aviation Corporate Laboratory (Corp Lab) to create and commercialise innovative technologies that could accelerate the digital transformation of Singapore’s aviation sector and redefine the air travel experience.
To emerge ahead in today’s digital transformation era, SIA and NUS will jointly target Revenue Management & Dynamic Pricing (for smart data-driven optimization), Transforming Competency and Skill Development (for intelligent and personalised pilot and cabin crew training), Employee Wellness (for data-driven and scientifically-backed improvements to workforce safety, performance and productivity), and Passenger Comfort, Sleep and Cabin Service (for next-generation product offerings and unparalleled customer service within the cabin).
SIA-NUS Digital Aviation Lab at National University of Singapore (NUS) offers an exciting opportunity for a highly motivated Research Engineer to work in Work Package 2 on Transforming Competency and Skill Development. This project aims to develop intelligent and quantified pilot and cabin crew training methods with AR/VR technologies. A major part of this role will be to liaise with relevant personnel for the projects in Work Package 2.
We are seeking a highly motivated and talented individual to join our research team as a Research Assistant - Software Engineer. This is an exciting opportunity for a recent graduate who is passionate about software development and eager to contribute to cutting-edge research initiatives. As a Research Assistant, you will work closely with our interdisciplinary team of researchers and engineers to develop software solutions that support and advance our research goals.
- Collaborate with researchers to understand project requirements and objectives.
- Design, develop, test, and maintain software applications, tools, and prototypes that align with research objectives.
- Implement and optimize algorithms, data structures, and computational models as required by research projects.
- Participate in code reviews, provide constructive feedback, and contribute to maintaining code quality and best practices.
- Assist in the integration of software solutions with hardware components and experimental setups.
- Document software design, implementation details, and user guides for both technical and non-technical audiences.
- Stay up-to-date with emerging software development trends, tools, and technologies relevant to the research domain.
- Contribute to research discussions, brainstorming sessions, and team meetings by sharing insights and proposing technical solutions.
- Bachelor's degree in Computer Science, Software Engineering, or a related field.
- Strong foundation in software engineering principles, algorithms, and data structures.
- Proficiency in at least one programming language (e.g., Python, Java, C++) and willingness to learn new languages as required.
- Familiarity with version control systems (e.g., Git) and collaborative development workflows.
- Solid understanding of software testing methodologies and debugging techniques.
- Excellent problem-solving skills and ability to adapt to new challenges in a dynamic research environment.
- Strong communication skills, both written and verbal.
- Eagerness to learn and collaborate with cross-functional teams, including researchers, engineers, and domain experts.
- Prior exposure to research projects, open-source contributions, or personal coding projects is a plus.
- Knowledge of machine learning, data analysis, or domain-specific tools is advantageous but not mandatory.