Software projects


Rent Bills

Ruby on Rails, Heroku, AWS

Developed a web application to help homeowners to monitor tenant debit and credit balance, currently used by a handful of clients

Key Features:

  • Two-column records for debit and credit balance for every tenant
  • Dashboards to monitor current tenant balance in different locations
  • Access for delegated keepers to help owner input payments
  • Set varying monthly due dates for different tenants

Static Program Analyser


Developed a static program analyser, which parses a made-up programming language and analyses which lines are modified/affected/used by another line in the program.

My Role:

  • To implement a program knowledge base which stores and indexes all information about a single program, and can be easily queried for information such as whether a certain abstract syntax tree is present, or whether certain lnes are affected by certain variable assignments.

Audio Steganography


Helped developed application which conceals text messages in music clips for reliable data transmission through air via inaudible high-frequency sound waves


  • Translate ASCII of text message into binary
  • Encode bits into certain bands in inaudible high-frequency range
  • Play music clip and read Fourier spectrogram from a recording device
  • Determine highligted frequency bands and use inverse FFT to decode


Java, Gradle, JavaFX

A Java-based flash card management system that allows students to study for their exams and helps people memorise things

Key Features: Deck management which allows categorisation of cards and functionality to export deck for sharing

My Role:

  • Designed, developed, and tested Study Sessions feature which algorithmically generates and flashes questions, allows users to type in and compare their answers, and internally stores the difficulty rating for each question.


Ruby on Rails

A crowdsourced database to help students find answers to past-year papers in their univeristy

Project was awarded Honourable Mention

Key Features: Users can rate, comment, and vote for answers to past year papers


NUS Navigator Bot

Python, Node.js

Telegram chat bot we developed during NUS Hack ‘n’ Roll to help students find their way around the university.

My Role:

  • Collected and transformed data from NUS API to find locations of buildings in NUS
  • Developed code to calculate nearest bus stop from building

Neuroscience Research


Conducted neuroscience research to analyse trends in subject’s brain electroencephalogram (EEG) activity during affective picture viewing


  • C application connected to EEG to survey participant emotion while collecting brain data
  • Fast Fourier to compute trends in frequency and power features
  • ANOVA to train models to classify images based on EEG signal features


  • Conclusion participants with higher alpha-beta frequency power ratio tend to elicit a higher arousal emotion