Experience

Motorola Solutions

  1. Jun 2025 – Present

    AI agents for natural-language search and assistance in video surveillance and access control products, from the agent backend and MCP servers to infrastructure, deployment, and observability.

    Also implemented an AI-native SDLC with coding agents, MCP tools, and shared agent context.

  2. Software Engineer Intern

    May – Aug 2024

    Python development, hardware-in-the-loop test automation, and CI/CD pipelines.

  3. Software Engineer Intern

    Jan – Aug 2023

    Full-stack features and bug fixes for an access control platform in Ruby on Rails, React, and C++.

Change Healthcare

  1. Software Development Engineer Intern

    May – Dec 2022

    Fixes and release tooling for medical imaging software in C#.

UBC Applied Science

  1. Web Developer, part-time

    Sep 2021 – Apr 2025

    Websites and a shared design system for UBC Engineering.

Projects

Secure VPN

Oct 2024 – Nov 2024
Clientlong-term RSA keysAttackerreads, drops, replaysServerlong-term RSA keys1 Session keys, signed with the long-term RSA keys2 Elliptic-curve DH keys, signed with the session keys3 Every message: new DH key, AES-encrypted text, signature, counterReplayed or droppedDetected, warning shown

A VPN protocol in Python that stays secure with an attacker in the middle of the connection.

  • Detects tampered, replayed, reordered, and dropped messages
  • Encryption and signing use separate keys

all 11 projects

Skills

Languages
Frameworks
Infrastructure
AI and ML
AI-assisted development

Select a skill to see where I've used it.

Education

University of British Columbia

  1. BASc in Computer Engineering

    2020 – 2025

    Graduated with distinction. Dean's Honour List every year, Trek Excellence Scholarship, and Outstanding International Student Award.

    Teaching assistant for CPEN 221 (Software Construction I), Sep – Dec 2023.

certifications