Backend systems · Cloud infrastructure · Developer tooling
Software developer intern at Cisco (Splunk) · CS Honours at the University of Alberta (graduating Dec 2027)
I care about reliability, clear interfaces, and tests that exercise real failure modes.
Lot — paper-trading lab · live · try Replay
A paper-trading platform with a React client, a Java 21 / Spring Boot account and replay API, and a C++20 matching engine with price-time priority, backed by PostgreSQL. I migrated it off the original Django and Go services with existing accounts, sessions, and saved replays preserved. It handles portfolio accounting, idempotent retries, partial fills, resting limit orders, and account isolation.
React TypeScript Java Spring Boot C++20 PostgreSQL OCI
DriveLab — autonomous-driving workbench
A driving planner and visual replay workbench comparing route following with receding-horizon trajectory planning.
React Three.js Python Rust PyTorch
✅ merged · 🔄 in review · ⚪ closed
- EventBuddy: Android event lottery app built as a CMPUT 301 team project. I built the global notifications backend, the waitlist and lottery flows, the admin screens, map display, and QR generation and scanning, and I kept the CI/CD pipeline running.
- NoteApp · live: note-sharing web app for university students. I did the layout prototyping and UI work, and the January 2025 revamp.
- RateMyStudySpot: I designed and built the site footer.
- FitnessApp: I wrote the initial Expo frontend.
- NeurAlbertaTech website (private): updated the workshop schedules and the problem-provider playlist, and added popup fields.
- Octa (private): CI quality and security checks, an authorization fallback fix, and cross-platform executable path normalization in detection.
- CMPUT 379 systems coursework (private): a Unix shell (dragonshell), a thread-pool MapReduce library with memory leaks fixed, and a file system simulator, all in C.
- CMPUT 291 (private): database assignment work.



