My Projects

A collection of personal and professional projects

Goblin's Keep

Description

  • Led backend development of a 2D tile-based escape game by architecting game logic and AI systems, coordinating code reviews and integration across a team of developers.
  • Implemented dynamic goblin AI using a modified A* pathfinding algorithm with randomized patrol logic, enhancing difficulty balance and replayability.
  • Refactored core classes (MapGenerator, CollisionChecker, Entity) to eliminate God classes and duplicated code, improving long-term maintainability following OOP best practices.
  • Engineered a unit and integration testing suite with JUnit and Mockito, achieving 96% line coverage and 92% branch coverage to ensure correctness across all gameplay interactions.

Technologies

JavaMavenJUnitMockito

SFU DSSS ML Hackathon - 1st Place

Description

  • Won the first ML Hackathon hosted by the SFU Data Science Student Society by building a multi-class fraud detection pipeline for fraud detection.
  • Designed a validation and cleaning pipeline enforcing consistent data types and value ranges, applying constraint-based reasoning to flag real-world transaction impossibilities.
  • Engineered three predictive features: balance mismatch flag, balance difference (after minus before), and balance error (amount minus balance difference) to expose accounting inconsistencies for the model.
  • Trained a class-weighted Random Forest over a logistic regression baseline, tuning number of trees, max depth, and minimum samples against Macro F1 to improve recall on rare minority fraud classes.

Technologies

PythonScikit-learnPandasNumPy