About Me


Welcome to my page. I am a Year 2 student at the National University of Singapore (NUS), majoring in Computer Science. I mainly work with Java and have built a solid foundation in OOP and algorithms through coursework and projects. Outside class, I enjoy exploring interactive media and game/graphics development (OpenGL). Lately, I’ve also been diving into AI and LLMs — most recently building a RAG-based NetEase Cloud Music AI agent backend demo, and experimenting with a multimodal hybrid model at TikTok TechJam 2025.



Education


National University of Singapore

Bachelor of Computing in Computer Science

Awards: NUS Science and Technology Undergraduate Scholarship (2024-2028)

Expected Graduation Date: June 2028

Academic Courses:

  • MA1522 Linear Algebra
  • ST2334 Probability and Statistics
  • CS1231S Discrete Mathematics
  • CS2030S Programming Methodology II (Object-Oriented Programming in Java)
  • CS2040S Data Structures and Algorithms
  • CS2100 Computer Organisation
  • CS2109S Introduction to AI and Machine Learning
  • CS2103T Software Engineering
  • CS3240 Interaction Design
  • CS3241 Computer Graphics
  • CS3242 3D Modelling and Animation
  • NM3243 User Experience Design


Skills


Programming Languages

  • Proficient: Java
  • Working knowledge: Python, JavaScript, HTML/CSS
  • Basic: C, C++

Backend Development & APIs

  • Proficient: Spring Boot, RESTful API design and implementation
  • Working knowledge: Spring JPA; Maven (dependency management, build & packaging); Swagger/OpenAPI (API documentation & testing); OkHttp (HTTP client integration)

Data & Storage

  • Working knowledge: MySQL (basic schema & CRUD), H2 (local dev/demo), Redis (cache integration & basic operations)

Engineering & DevOps

  • Working knowledge: Docker & docker-compose (one-command dependencies with volumes and healthchecks); Spring Profiles (dev/prod separation); Git and GitHub
  • Familiar: Reproducible setup and graceful degradation concepts (configuration layering, environment variables, README-aligned setup)

AI & Machine Learning

  • LLM & RAG:
    • Working knowledge: RAG pipeline integration; OpenAI-compatible APIs (e.g., DashScope); prompt engineering and output control (ChatGPT, Qwen)
    • Basic: FAISS (vector indexing and similarity retrieval)
  • Multimodal & NLP:
    • Working knowledge: BERT/FastBERT (text classification/filtering); CLIP (multimodal representation/validation)
    • Basic: PyTorch; Transformers (inference and experimentation workflow)
    • Familiar: vLLM (inference serving exploration)

Graphics & Interactive Media

  • Familiar: OpenGL, JavaFX (coursework/project experience); Blender (3D modeling); Figma, Miro (design & prototyping)

Documentation & Productivity Tools

  • Proficient: Git, GitHub, Markdown
  • Working knowledge: Mermaid (diagrams); JetBrains IDEs; Microsoft Office (Word/PowerPoint/Excel); Aseprite (pixel art)


Experiences


NetEase Cloud Music Intelligent Customer Support Agent (Minimal RAG)

Description: A minimal RAG-based customer support agent backend that integrates retrieval, guarded prompting, and reproducible local deployment.

Highlights:

  • Implemented RESTful endpoints with Swagger/OpenAPI for rapid testing and demo recording.
  • Built a dev/prod configuration split using Spring Profiles (dev with H2; prod with MySQL + Redis).
  • Added a Redis cache with TTL and graceful fallback, keeping the main request path available even when Redis is down.
  • Containerized dependencies via docker-compose (MySQL + Redis with volumes and healthchecks) for one-command local setup.
  • Maintained an architecture-first README (Mermaid diagrams and startup steps) aligned with the implementation.

Project Link: NetEase-music-agent-backend-demo

Duration: Dec 2025 - Jan 2026

Tech Stack: Java | Spring Boot | Spring Data JPA | Maven | H2 | MySQL | Redis | Docker Compose | Swagger/OpenAPI | OkHttp | OpenAI-compatible LLM API


Harmonia: Hierarchical Multimodal Hybrid Review Validation with RAG

Description: A hierarchical review filtering system using AI models we trained, routing requests across fast and accurate stages to separate genuine feedback from spam at scale.

Highlights:

  • Designed a multi-stage pipeline: rule-based preprocessing → fast classifier routing → multimodal validation → RAG-backed final verification.
  • Trained and evaluated text classification models (e.g., FastBERT/BERT-family) and integrated confidence-based routing to balance latency and accuracy.
  • Incorporated multimodal signals (e.g., CLIP) to handle cases where text-only signals are insufficient.
  • Supported both single-review and batch processing workflows for practical experimentation and benchmarking.

Project Link: Harmonia

Duration: Aug 2025 - Sep 2025

Tech Stack: Python | PyTorch | Transformers | FastBERT/BERT-family | CLIP | FAISS | Qwen | RAG | vLLM (inference) | OpenAI APIs


Grid Adventure Agent

Description: An AI agent that plays Grid Adventure, a tile-based puzzle game, by planning optimal action sequences using A* search.

Highlights:

  • Designed an A* search planner to compute optimal action sequences for navigating tile-based puzzle states.
  • Supported two input modes: structured game state (Task 1) and raw pixel image perception (Task 2/3), requiring vision-based state extraction.
  • Evaluated agent performance across varying grid complexities and input fidelity conditions.

Project Link: Grid Adventure Agent Github Repo

Duration: Jan 2026 - Apr 2026

Tech Stack: Python | Pytourch | A* Search | Image Processing


HomeRun: Co-living Mediator Dashboard

Description: A conceptual desktop system designed to act as a neutral, centralised Co-living Mediator for residents in high-density shared housing, completed as part of NM3243 Interaction Design at NUS.

Highlights:

  • Conducted user research and developed personas, user journeys, and task flows to ground the design in real co-living pain points.
  • Produced low-fi to high-fi prototypes in Figma, iterating based on usability feedback.
  • Designed mediation and communication features to reduce friction between roommates in shared housing scenarios.

Project Link: HomeRun GitHub Repo

Duration: Jan 2026 - Apr 2026

Tech Stack: Figma | Miro | UX Design


PropBank: MarketPlace Service (CS3240 Individual Portfolio)

Description: An individual portfolio for CS3240 Interaction Design at NUS, documenting personal contributions and design reflections on the MarketPlace service of PropBank — a super app built around a cosplay-rooted ecosystem.

Highlights:

  • Contributed to the design and iteration of the MarketPlace service within a group UX project.
  • Documented individual design decisions, rationale, and reflections aligned with Interaction Design principles.
  • Applied user-centred design methods including wireframing, prototyping, and heuristic evaluation.

Project Link: PropBank Portfolio Github Repo

Duration: Jan 2026 - Apr 2026

Tech Stack: Figma | Next.js | TypeScript | UX & UI Design |


Fleet Dashboard

Description: A vehicle fleet management web app built for an automotive rental context, supporting real-time tracking and full CRUD operations on vehicle records.

Highlights:

  • Built full CRUD operations on vehicle records including plate number, model, status, date, and notes.
  • Implemented real-time search and status filtering (Available / Rented / Maintenance) with colour-coded indicators to support quick operational decisions.
  • Applied React hooks (useState, useEffect) for state management and localStorage persistence, translating fleet management requirements into a clean, responsive UI.

Project Link: Fleet Dashboard Github Repo

Duration: Apr 2026 - Present

Tech Stack: React | Vite | JavaScript | localStorage


Mintty: Task Manager

Description: A desktop task management application optimized for CLI users, combining the efficiency of command-line interaction with the clarity of a GUI. Built with strict adherence to Object-Oriented Programming principles for maintainable and extensible code architecture.

Highlights:

  • OOP Design: Implemented comprehensive object-oriented architecture with proper encapsulation, inheritance (Todo/Deadline/Event extending abstract Task class), and polymorphism for command handling.
  • Applied SOLID principles throughout the codebase, ensuring separation of concerns between UI, logic, and storage layers.
  • Built three task types (Todo, Deadline, Event) with natural language datetime parsing and flexible scheduling capabilities.
  • Designed command pattern implementation with aliases (e.g., todo/td, deadline/ddl) for rapid workflow execution.
  • Implemented smart search functionality with keyword matching and snooze feature for rescheduling tasks.
  • Integrated automatic data persistence with JSON serialization following proper abstraction layers.

Project Link: Mintty Github

Duration: Jan 2026 - Apr 2026

Tech Stack: Java 17 | JavaFX GUI | OOP Design Patterns


CatPals: Volunteer Operations App

Description: A volunteer operations application adapted from an existing brownfield codebase to support the tracking and management of stray-cat records at NUS. The project focused on improving usability, aligning features with real user needs, and making the system easier to use and maintain.

Highlights:

  • Adapted and extended an existing AB3 brownfield codebase into a context-specific operations app for volunteers managing stray-cat information.
  • Conducted user research and developed user stories to better align the application’s features with actual operational workflows and user needs.
  • Contributed to key functional enhancements such as add, find, edit, export, and other core CRUD-related operations.
  • Improved the JavaFX user interface through layout refinements and CSS customisation, making the application clearer and more user-friendly.
  • Updated major project documentation including the README, User Guide, and Developer Guide to support onboarding, usage, and maintainability.
  • Worked within a structured team workflow using Git, branches, pull requests, merge reviews, weekly meetings, and release packaging for controlled collaboration and delivery.

Project Link: CatPals GitHub

Duration: Jan 2026 - Present

Tech Stack: Java | JavaFX | CSS | Git/GitHub | Brownfield Software Engineering


OpenGL Graphics Coursework

Description: A collection of OpenGL-based coursework demos exploring core real-time rendering concepts and interactive controls.

Highlights:

  • Implemented graphics pipeline fundamentals, including transformations, camera controls, and scene organization.
  • Built shader-based rendering effects (e.g., lighting, materials, and texturing) as part of course assignments.
  • Added interactive input handling for navigation and parameter tuning during demos.

Project Link: OpenGL Coursework

Duration: Aug 2025 - Dec 2025

Tech Stack: C++ | OpenGL | GLUT


3D Modeling and Animation

Description: A collection of coursework demonstrating 3D modeling theory, character animation, and computational geometry through Blender animation and C++/OpenGL mesh processing implementations.

Highlights:

  • Created a collaborative short animation in Blender featuring custom character modeling, rigging with IK, keyframing with Bezier interpolation, and particle VFX systems.
  • Implemented mesh processing algorithms including triangle mesh data structures (Trist), face/vertex normal computation, smooth shading, and boundary edge detection in C++/OpenGL.
  • Built mesh navigation operations (enext, sym, org, dest, fnext) and component analysis using BFS/DFS for topology computation.
  • Developed OBJ file parser with support for reading/writing Wavefront format, angle statistics computation, and interactive rendering modes (wireframe, flat/smooth shading).

Project Link: 3D Modelling and Animation

Duration: Jan 2026 - Apr 2026

Tech Stack: Blender | C++ | OpenGL | GLUT | Cycles Renderer



Extra Curricular Activities


NUS Piano Ensemble

Role: Member

Duration: Aug 2024 – Present

  • Actively participate in club activities.
  • Performed 4 piano duets with a partner in the annual concert.
  • Completed 3 performances in performance classes and received guidance from the professor on piano technique.

NUS Climbing Club

Role: Member

Duration: Aug 2025 – Present

  • Holds the Singapore SNCS Level 2 certification.
  • Maintains weekly high-intensity training sessions with the club.

Chengdu Shude High School International Division Orchestra & Choir

Role: Principal Pianist

Duration: Jan 2022 – Jan 2024

  • Served as the piano accompanist for the school orchestra and choir, and hosted and performed in 6 concerts.
  • Performed 5 piano solo pieces.