Ronny Chan

ronny@ronnychan.ca (647) 928-6622
Toronto, ON chyyran ronny-chan

Education

H.B.Sc. Computer Science University of Toronto 2017–2022
Currently pursuing a double major in Computer Science and East Asian Studies.

Professional Experience

University of Toronto Teaching Assistant Fall-Winter 2020
  • Tutorials and grading for CSC324; Haskell, Racket, and Functional Programming concepts.
  • Tutorials and grading for CSC309; JavaScript, React, general web development concepts.
Okta Software Engineering Intern Summer 2020
  • Implemented on-device proof of identity for verification use during unmanaged authentication scenarios.
  • Designed and developed an implementation of Android SafetyNet device integrity attestation for use as a configurable authentication factor by organization administrators.
BrokerBay Full-stack Software Developer Summer 2019
  • Developed a bespoke OAuth solution with Spring 5, enabling Single Sign On across multiple independent services.
  • Optimized hot-path MongoDB queries using a fast ElasticSearch caching layer, reducing database roundtrips and load times.

Open Source and Personal Projects

mp4parse-rust Contributor
mozilla/mp4parse-rust
Parser for ISO Base Media Format aka video/mp4 written in Rust. Rust
  • Implemented parsing for iTunes MP4 Metadata atoms.
seiri Maintainer chyyran.moe/seiri
chyyran/seiri
Fast and simple music organizer with advanced query engine. Rust C++ React
  • Wrote a fast custom lexer and parser for complex library queries.
  • Created Rust bindings to C++ and C# music tagging libraries.
Snowflake Maintainer snowflakepowe.red
SnowflakePowered/snowflake
Comprehensive framework for creating game console emulator frontends. C# React GraphQL
  • Plugin based architecture with custom dependency injection framework.
  • Type-safe AST-based external program config generation with Roslyn codegen.
  • Client-server model with GraphQL endpoints and a React frontend.
TWiLightMenu++ Contributor
DS-Homebrew/TWiLightMenu
Open Source System Menu replacement for the Nintendo DSi. C++ C
  • Low-level optimization and refactoring of programs for a low-resource environment.
  • Implemented audio streaming from an SD card using only 384KB of RAM.
vcdiff Maintainer
SnowflakePowered/vcdiff
SIMD-optimized binary diffing library for .NET Core. C#
  • Uses SIMD intrinsics to heavily speed up binary patch encoding and decoding.
  • Takes advantage of .NET Span APIs to minimize unnecessary allocations.

Skills and Technologies

JavaScript TypeScript C# Rust Java Kotlin C++ C Python Haskell Racket .NET Core React GraphQL HTML CSS Android Spring Docker Azure DevOps