Auto Geotagger Many pro cameras don't geotag photos. This results in difficult photo library management for travellers and photographers. We have the data to fix this in our phone's photo libraries, so why don't we use it? SwiftSoftware DevelopmentImagingProduct Management
Service Integration @ BC Attorney General's Ministry Integration work for BC justice-sector teams that need to exchange information reliably across systems and organizations. JavaQuarkusApacheOpenShiftSoftware DevelopmentPeople ManagementJob
Flojoy Work on Flojoy, a visual programming system for hardware, robotics, and AI projects. PythonROSReactJSReactiveXFastAPISystem DesignProduct ManagementPeople ManagementSoftware DevelopmentJobAI MLRobotics
Todoist to Apple Reminders Migrator A quick & simple web based tool which transfers all your todoist tasks to Apple Reminders. webApple ShortcutsSoftware Development
Sanity CMS Visual Schema Builder A schema builder for Sanity CMS. Used to quickly visually create schemas for the Sanity content management system. Generates TypeScript Interfaces, queries, schema definitions, and more. TypeScriptSanity CMSNextJSReactJSSoftware Development
Question & Answer - Local Language Model App for iOS A local question-answering app for iOS, powered by CoreML and run on-device. SwiftCoreMLPyTorchPythonSwiftUICoreDataCloudKitSoftware DevelopmentAI ML
HDR Photo Delivery for Web HDR photos can carry more brightness information than standard web images. This project tests how to serve them without hiding the tradeoffs. HDRreactjspythonAWSSoftware DevelopmentProduct ManagementImaging
Zeroth Technologies - Software Engineering Consulting Client work across semantic search, transcription, robotics integrations, and applied AI systems. PythonRustLangChainHuggingFacePineconeProduct ManagementPeople ManagementSoftware DevelopmentJobAI ML
Watch Snek I couldn't find a good game of Snake for Apple Watch, so I made one. SwiftWatchKitSwiftUISpriteKitSoftware DevelopmentProduct Management
Auto Timelapser A Mac timelapse tool for RAW sequences with uneven exposure. Product ManagementSwiftSoftware DevelopmentImaging
EZVote Real time peer to peer voting. Simple and quick. Framer-MotionPeerJSReactJSNextJSSoftware Development
HelpSched A scheduling tool for office hours, interviews, and help sessions at McGill. KotlinFramer MotionGraphQLSpring BootSoftware Development
WhatsApp Business Onboarding @ Meta Internal tooling for WhatsApp Business onboarding at Meta. HackFlowGraphQLReactJSSoftware DevelopmentJob
AWS Simple Workflow Console @ Amazon At Amazon, I worked on AWS Simple Workflow Console tools that help customers debug workflows and find failure patterns. AWSJavaSoftware DevelopmentJob
bcsculpture.com - Interactive 3D Sculpture Gallery A 3D gallery for Miran Elbakyan's sculpture, built from photogrammetry scans, AR models, and a fast static website. Framer MotionBabylonJSBlenderGatsbyJSTypescriptContentful CMSRealityKitReactJSC++PythonSoftware DevelopmentJob
sasharesume.com - Portfolio Website The old technical portfolio site, and a record of the web tools I was testing at the time. NextJSSanityTypeScriptReactSCSSStyled ComponentsSoftware Development
Report Generator @ Rocscience A report generator for turning Rocscience simulation outputs into engineering documents. ElectronTypeScriptC++React-PDFReactJSSoftware DevelopmentProduct ManagementJob
Algorithm Leaderboard A CodePost add-on that turns assignments into anonymous leaderboards with benchmark reports and no setup for students. Spring BootJavaPythongRPCVueJSSoftware Development
Best of Comp A site for McGill's strongest Algorithms & Data Structures projects, with archived versions for 2020 and 2021. HTMLCSSJavaScriptLottieSoftware Development
COMP250 Algorithms & Data Structures @ McGill University I made videos, animations, visual debuggers, and hands-on assignments for COMP250 at McGill over six semesters. JobJavaTeachingSoftware DevelopmentPeople Management
Runtime Tester A general purpose GUI based time complexity analysis library for Java, as easy to use as JUnit. JavaJavaFXSoftware Development
AUV @ McGill Robotics McGill Robotics AUV for the RoboSub competition. ROSSoftware DevelopmentRobotics
Motor Keyframer - Homemade Motion Control for Film Motion control for film, built with ESP32 and Arduino, with wireless control via smartphone. C++ESP32ArduinoJavaAndroidSoftware DevelopmentRoboticsImaging
Minecraft Reinforcement Learning Research in using Minecraft as a tool for creating custom reinforcement learning environments which line up with the open-ended nature of real world tasks. PythonPyTorchStable BaselinesGymMineRLMinedojoSoftware DevelopmentResearchAI ML
ROS Developer Tooling Tools for making ROS project setup less painful. ROSRoboticsRustC++PythonProduct ManagementSoftware Development