Distributed Digital Music Archives & Libraries Lab (DDMAL), McGill University
Montreal, Quebec
Led development of Neon, a browser-based music score editor built in vanilla TypeScript, delivering interactive features such as zooming, dragging, highlighting, and editing under an Agile/Scrum workflow. Reduced manual correction time by 50%+ for end users. [Demo Videos]
Implemented engraving and editing toolkit in the Verovio (C++) codebase to enable real-time SVG rendering and interactive editing for the notation system used by Neon.
Built Cress in TypeScript,an table-like tool for mapping glyphs to MEI, and fixed UI and algorithms for the Optical Music Recognition website Rodan in Python and JavaScript.
Designed and implemented a fully responsive web UI for UMIL, a multilingual instrument-lexicon platform, using TypeScript, Vite, Bootstrap, Django, PostgreSQL, and Solr with a focus on usability and accessibility.
Integrated Google Analytics and Google Tag Manager to support product usage analysis.
Established CI/CD pipelines with GitHub Actions for automated formatting, testing, link checking, rebasing, and scheduled jobs, improving code quality and deployment reliability.
Deployed staging/production services with Docker and Nginx, including email verification workflows with rate limiting via AWS SMTP.
Frontend Developer
Dec. 2025 - Jan. 2026
Trinity College London
United Kingdom (Remote)
Owned end-to-end development of an interactive React + TypeScript score visualization component, delivering a responsive overlay system for learner feedback in production.
Designed robust state management for async loading and annotation filtering, enabling reliable highlights, shadow notes, and color-coded cues.
Optimized performance with memoized event processing and resize-safe reflow for smooth interaction at scale.
Software Developer
Aug. 2025 - Sep. 2025
Vortexpert Inc.
Montreal, Quebec
Built a real-time dashboard with React and TypeScript, leveraging Redis pub/sub to broadcast updates via Socket.IO to a centralized state store.
Developed the global store using React's useSyncExternalStore pattern for concurrent-safe subscriptions, incorporating runtime Zod validation to ensure data consistency, state deduplication to minimize unnecessary re-renders, and error boundaries to enhance UI resilience.
Implemented automated tests with Jest + React Testing Library, simulating real-time push events to verify state updates and UI behavior.
RADLab AI Research Intern
Fall 2024
Avid Technology
Montreal, Quebec
Built prototypes and REST APIs for music applications, including audio-to-score alignment in Sibelius and music structure segmentation in Pro Tools.
Integrated machine learning models into user-facing workflows, bridging research prototypes and production tools by incorporating product-specific context to optimize algorithm behavior for real-world scenarios.
Software Developer
Mar. 2025 - May 2025
Digital and Cognitive Musicology Lab (DCML), École Polytechnique Fédérale de Lausanne (EPFL)
Switzerland (Remote)
Proposed and implemented improved score annotation visualizations and UI/UX for the interactive Schenkerian analysis application MuseReduce , using vanilla JavaScript, SASS, D3.js, and Vite, significantly enhancing overall user experience.
Machine Learning Developer
Mar. 2022 - Mar. 2023
EERS Global Technologies Inc.
Montreal, Quebec
Configured optimal AWS SageMaker settings, and documented infrastructure architecture.
Built ML models and data pipelines in Python and MATLAB for audio-based health applications.
Authored deliverables, and collaborated with hardware and real-time developers for product prototyping.
Lead Bartender
Jun. 2024 ‐ Present
Griffintown Piano & Art Bar
Montreal, Quebec
Managed three bars within the venue, overseeing bar operations, staffing, and ensuring smooth service delivery.
Led and coordinated a team of bartenders, providing training and guidance on performance, drink preparation, and customer service.
Responsible for sales reporting, inventory management, and overseeing bar setups to ensure operational efficiency throughout events.
Bartender
May 2023 - Jun. 2023
Escondite Vieux Port
Montreal, Quebec
Mixed drinks, stocked supplies, and maintained clean drinkware.
Ecole du Bar de Montreal
Apr. 2023
Diploma
Montreal, Quebec
Theory on beer, wine, spirits, liquor, and cocktails.
Practical training on free pour and classic cocktails.
Audio and Video Engineer
Jul. 2019 - Aug. 2019
Heilongjiang Broadcast TV Station
Heilongjiang, China
Responsible for the audio and video recording of eight TV programs, including Happy Poker Party and Essence of Longjiang.
Responsible for the audio and video during three live broadcasts, including Weekend Tour of Longjiang and Golden Dreams.
Participated in the “Heilongjiang Province Celebration of the 70th Anniversary of the Founding of New China” press conference and live broadcast.
Audio Assistant
Aug. 2018 - Sept. 2018
Jilin People"s Broadcasting Station
Jilin, China
Installed new orchestration system for the recording system, debugged recording system, and renovated the recording studio.
Arranged and recorded the original song "Happy Village Convention."
Transcribed the song "The Best Stage."
Audio Editor
Mar. 2017 - Jul. 2018
Communication University of China Radio Station
Beijing, China
Recorded, edited, and broadcast radio programs.
Synchronized all programs to the online platform.
Produced 38 radio programs with an average duration of 20 minutes each.