full-stack engineer · CS student, University of Queensland
- full stack software engineer, with an interest in traditional machine learning techniques and concurrency + distributed systems.
- My main goals are to improve my coding skills and build meaningful projects to demonstrate them.
- When I'm not coding I can be found: scuba diving, painting warhammer models, reading or jogging.
A full-stack tutoring marketplace connecting students with tutors
Stack: React · Spring Boot · PostgreSQL · AWS
Built:
- JWT auth with refresh-token rotation and a token-revocation flow
- Paginated, database-backed tutor search with indexed lookups
- Global exception handling for consistent, safe API error responses
- Rate limiting, file-upload validation, and async email delivery
- Structured logging plus a Spring Actuator health endpoint for observability
- JUnit test suites across the service layer
Bash Royale - repo
Led a team of five to win the Best Game prize at UQCS-2026 Hackathon, building a multiplayer real-time lane-battler that renders in the terminal in under 48 hours.
Stack: C#
Built:
- Deterministic lockstep simulation on a fixed tick, integer-only maths, no authoritative server
- Targeting with aggro/attack ranges, air-ground layer rules, and stable tie-breaking
- A* pathfinding over rectangular unit footprints rather than point positions
- Unit and spell behaviours composed from reusable behaviour types
- Buffered terminal renderer with non-blocking input polling
- Engine-free simulation core, runnable headless in tests
Orac repo
Currently working on a flaky test finding dev tool. Designing to run a test suite in controlled orders to expose order dependent tests, then bisects to exact culprit pair.
Why am I making this? Many companies have tools such as this built internally, however a reliable, runner agnostic dev tool that is open source does not exist.
- 59 % of developers report dealing with flaky tests on a monthly basis: https://philmcminn.com/publications/parry2021.pdf
- Flaky tests which pass and fail on the same code version are a common and persistent issue in open-source projects, with studies showing they account for roughly 13% of failed continuous integration (CI) builds. https://www.sciencedirect.com/science/article/pii/S0164121223002327
I believe making this tool would be extremely beneficial for diagnosing and fixing flaky tests across a number of open source repositories, and upon completion I plan to use the tool to identify flaky tests across 50+ well known open source repositories to evaluate.
Stack: Go
Building:
- Runner agnostic engine behind adapter interface, pytest implementation planned for v1, jest and Java are planned for later
- Delta-debugging (ddmin) minimisation with a fast path prefix bisect that escalates automatically
- Flake-tolerant search: repeated trials, majority voting, and failure-identity tracking so unrelated flakes can't derail a bisection
- Scan mode running shuffled orders with consecutive-pair coverage reporting; systematic TACAS'21 schedule planned for guaranteed result.
- Engine will be property tested against a simulated runner with planted dependencies and injected noise
- microsoft/vscode-pull-request-github #8840 — added a feature to easily compare commit SHAs in the commit tree, still awaiting review (first open source contribution!)

