Experience

Software Engineer Intern

Upgraded

May 2026 - Aug 2026Vancouver, BC

Upgraded is an AI BDR (Business Development Representative) platform focused on real-time messaging and lead management for sales teams. I shipped features that improved the reliability of real-time messaging and lead workflows, and eliminated race conditions in chat by redesigning async handling to keep the UI consistent under concurrency. I also built an AI Sales Coach that drafts messages and executes send, read, and open actions across 7 platforms, architecting its backend with MCP and Composio to support multiple models and streaming.

Skills & Technologies:

  • MCP
  • Composio
  • LLM Integration
  • Real-Time Messaging
  • Streaming
  • Async Concurrency
Upgraded Logo

Software Developer Intern

Safe Software - Product Security Team

Jan 2026 - Apr 2026Surrey, BC

On Safe Software’s Product Security team, I built Python automation to triage CVEs across Black Duck, Snyk, and NIST, cutting critical-CVE analysis from days to hours and enabling 2–3 third-party dependency investigations per day. Across roughly 15 investigations I confirmed 4 exploitable critical CVEs in FME and drove their full remediation, and I screened 60–80 CVEs against internal tracking to surface unmanaged critical risks in production. FME is a large-scale data integration platform used across enterprise and government, so this work strengthened my understanding of software supply chain security in large-scale systems.

Skills & Technologies:

  • Python
  • Snyk
  • Black Duck
  • GitHub
  • Jira
  • CVE Analysis/Assessment
  • Automation Scripting
Safe Software Logo

Software Pathfinding Lead

UBC Sailbot

Sep 2025 - PresentVancouver, BC

UBC Sailbot is a student engineering team building a fully autonomous sailing vessel for a 1,500km Vancouver-to-Alaska voyage. I joined the pathfinding subteam as a software developer in September 2025 and became Pathfinding Lead in February 2026, now leading a 7-person subteam building the ROS navigation stack. I reworked the wind cost function to enforce no-go zone avoidance, preventing invalid RRT* paths, and implemented a rolling wind average to debounce noisy sensor data and stabilize path decisions at 2Hz. I validated pathfinding across 7 on-water tests, comparing simulated versus real boat behavior at varying sail angles.

Skills & Technologies:

  • Python
  • ROS
  • Docker
  • GitHub
  • Ubuntu
  • Pathfinding Algorithms
  • Simulation Testing
UBC Sailbot Logo