Auto Geotagger A photo-library tool for inferring missing camera GPS from nearby phone photos, making professional image archives searchable by place. SwiftSoftware DevelopmentImagingProduct Management
Practical Robotics A practical robotics effort focused on simple machines for dangerous work, starting from human risk instead of spectacle or autonomy theater. ROSRustProduct ManagementRobotics
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 Visual programming work for hardware, robotics, and AI systems, including live robot-control demos where users can see the logic before the machine moves. 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 An HDR photo-delivery experiment for the web, testing gain maps, browser support, and fallbacks without hiding the imaging 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 site so viewers can inspect the work as objects. 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 algorithm assignments into anonymous leaderboards with benchmark reports, giving students evidence without extra setup. 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
Video Content - Algorithms & Data Structures @ McGill University Animated lessons, live streams, and short videos used to teach Algorithms & Data Structures at McGill. Motion CanvasOBSJavaAfter EffectsAfter Effects Scripting (JS)MayaMaya Scripting (Python)TypeScriptMedia ProductionImaging
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 on Minecraft as a reinforcement-learning environment for open-ended tasks, with attention to setup friction, teaching value, and hardware limits. PythonPyTorchStable BaselinesGymMineRLMinedojoSoftware DevelopmentResearchAI ML
ROS Developer Tooling A Create React App-style starter for ROS projects, built to turn hours of robotics setup into a visible, repeatable project scaffold. ROSRoboticsRustC++PythonProduct ManagementSoftware Development