Systems · HPC · Compilers
Third-year Computer Science student at York University with a strong background in physics. I work primarily in C++ and spend most of my time thinking about algorithms, memory, and systems-level problems. I'm drawn to the parts of computing where the underlying hardware still matters. Currently doing computational materials research in the Pisana Lab.
Black-Scholes · Greeks · Binomial trees · Monte Carlo · IV solver
A quantitative finance library in C++ covering European option pricing and risk. Implements Black-Scholes closed forms, the full set of Greeks, Cox-Ross-Rubinstein binomial trees, Monte Carlo pricing, and a Newton-Raphson implied volatility solver, with all numerical methods written from scratch.
5 strategies · Client-side backtesting · GitHub Pages
A client-side stock portfolio tracker with a strategy backtesting engine. Supports SMA Crossover, RSI, Bollinger Bands, MACD, and Buy & Hold with configurable parameters, equity curves, drawdown charts, and trade logs. Runs entirely in the browser with live Yahoo Finance data.
97.91% MNIST · 842x matmul speedup
A neural network library written from scratch in C++20 with no ML frameworks. Backpropagation derived analytically, He initialization, SGD with momentum, and a templated Rule of 5 matrix class. Matrix multiplication runs through cblas_sgemm on Apple AMX, benchmarked at up to 842x over a naive triple loop, alongside a Metal GPU compute bridge.
Demoed live at Google Toronto HQ
A multi-agent CLI code review tool built on Google ADK and Gemini 2.5 Flash. Correctness, security, and performance agents run pyright, bandit, and ruff in parallel over tree-sitter preprocessed code, and a coordinator merges their findings into one prioritized report. Works on local files, directories, and public GitHub PRs.
Lexer, parser, and emitter, all written by hand
A source-to-source compiler from a BASIC dialect to ANSI C. Hand-written lexer, recursive descent parser with a layered grammar for operator precedence, and an emitter that hoists declarations to satisfy ANSI C rules. Validates GOTO targets post-parse to catch forward references. No parser generator anywhere.
Real-time N-body · Momentum-conserving merges
A real-time N-body gravity simulation in C++ with Raylib. Newtonian dynamics integrated per frame across all particle pairs, momentum-conserving merges on collision, and mouse-driven particle spawning with drag-controlled launch velocity.
NSERC USRA + LURA · Pisana Lab, York University · May 2026 – Present
Building a DFT-based screening pipeline to identify candidate crystals with strongly anisotropic lattice thermal conductivity. Running first-principles calculations with Quantum ESPRESSO on the SciNet Trillium HPC cluster, and conducting a systematic literature review of low-symmetry materials to assess synthesis, stability, and suitability for phonon transport calculations.
NSERC USRA · Pisana Lab, York University · May 2025 – Aug. 2025
Investigated graphene oxide membranes as a medium for isotopic water separation. Fabricated GO filters, prepared samples for structural characterization, and operated a Raman spectroscope to estimate the degree of oxidation in GO membranes. Processed raw spectroscopy data in Python with SciPy for curve fitting and peak analysis, and presented findings at a summer research conference.
Competitive national research award from the Natural Sciences and Engineering Research Council of Canada, granted to support undergraduate research in science and engineering.
Competitive faculty-level research award from the Lassonde School of Engineering, supporting undergraduate research placements.
Awarded for the highest average in first-year physics courses at York University.
Recognized for academic excellence across the academic year at York University's Lassonde School of Engineering.