Rick
👋

Hi, I'm Rick.

>

From the model to the metal, I build it all.

a stonecutter hammering 100 times with no crack, then it splits on the 101st...

Open to Summer 2027 co-opUWaterloo

My experience

My projects

MindGo

    Made with:

A personal finance app built around the academic term rather than the calendar month, windowing every report on real term boundaries. Import transactions by dropping in a screenshot — a bank list, receipt, Uber trip, or WeChat Pay history — read by an OCR model that runs entirely in the browser, so the image never leaves the device. Tracks six currencies with read-time conversion, alongside savings goals, a live investment watchlist, and AI-generated plans grounded in the user's own spending. Market data falls through a three-source chain (Finnhub → Yahoo Finance → Alpha Vantage), so a missing key degrades rather than breaks. Bilingual EN/ZH. 50+ users in production.

SlopFish

    Made with:

A fork of Stockfish that plays a chess variant where capturing is mandatory whenever a capture is legal. The rule has to hold at every node, not just the root, so the constraint reaches into move generation, move ordering, check evasions, and the quiescence search — where stand-pat pruning has to be disabled entirely, since a forced capture breaks the lower-bound assumption alpha-beta relies on. Trained a variant-specific NNUE on 17.2M self-play positions, measured it against Stockfish's default network, and shipped the default. A self-play harness whose arbiter enforces the capture rule itself — rather than trusting the engine — surfaced a rule violation in 2.5% of games, traced to promotions being counted as captures; fixed across six call sites, then verified at zero violations in 400 games.

AGE Game Engine

    Made with:

Architected a C++20 module-based MVC game engine for 2D ASCII games, currently supporting Space Invaders and Snake. Implemented core engine systems including rendering, input handling, game loop management, and collision detection. Designed a flexible Entity-Component System (ECS) for modular game object management, enabling easy extension with new entities and behaviors. Games inherit from a base GameEngine class and implement virtual methods for game-specific logic, streamlining new game development.

AI Sentiment Pulse

    Made with:

Led the ML work on a 9-member WAT.ai team building a market sentiment analytics system, fine-tuning DeBERTa-v3 for sentiment and sarcasm detection. Aggregated model outputs with unsupervised statistical methods to produce real-time sentiment signals from social media, and correlated those signals against financial data APIs to surface tradeable trends.

My Education

UW

Bachelor of Mathematics

University of Waterloo

2023 - 2027

  • Major in Computational Mathematics
  • Major in Statistics
  • Minor in Combinatorics and Optimization
  • Minor in Computing (Computer Science)
  • Activities: Core Member at Waterloo Blockchain Club; ML Lead at WAT.ai (Sentiment Pulse); Basketball Intramurals

Blog

17 min read

A Waterloo Student's Honest Recruiting Recap 2025/2026

From zero interviews to 30+ rounds including startups, unicorns, and FAANG. The unfiltered version.

  • career
  • personal
7 min read

Echoes of the City of Angels

Story of spending a month’s salary to bridge the gap between a 14-year-old’s childhood fantasy and the raw, beautiful, and fractured reality of Los Angeles

  • travel
  • personal
View all posts →

Contact me

Please contact me directly at m69liu@uwaterloo.ca or through this form.