Waterloo · Software Engineer

Peter Zhang.
a software dev.

I build full-stack systems, game engines, and the occasional desktop cat. Currently building restaurant tech at Owner.com and AI tooling at Finks.AI.

Currently @ Owner.com + Finks.AIOpen to new grad roles · 2028
Now playing
late-night build sessions
About

Hey! Fancy seeing you here (^_^)/

I'm a Computer Engineering student at UWaterloo — software developer, game maker, tinkerer. Currently on Owner.com's Guest App Platform Team.

Down to chat tech, ski lines, or job opportunities. Especially the last one.

⛷️ski lover👾game developer📚full-stack dev🏸badminton demon
Abstract long-exposure city lights
SoraGL game engine editor and game window
Peter Zhang skiing with friends in a snowy mountain landscape
Peter Zhang with friends at sunset
Friends exploring a city at night
Earlier version of the peterzhang.dev portfolio
A black-and-white cat relaxing indoors
Geese beside a frozen pond in winter
Experience

Places I've shipped
real things.

A few of the teams I've shipped real code with — from RTOS graphics drivers to AI-powered video pipelines. Open any role to see the highlights.

Owner.comMAY 2026 — PRESENTSoftware Engineering Intern · Guest App PlatformRemoteReact NativeTypeScriptA/B TestingCI/CDHide3 highlights
  • Shipped 4 location-confidence experiments across Online Ordering and the mobile app in 1 month; the winning variant increased order conversion by 4.6% and GMV per user by 3.2% across $84.3M in GPV.
  • Redesigned the architecture of the mobile app's location-request system to prevent duplicate calls, added request-level observability, and introduced a feature-flagged hexagonal network layer with environment-specific test fixtures.
  • Built an internal coding-agent workflow that helped deliver 46 mobile-performance tickets, covering investigation, implementation, CI repair, simulator validation, and human review.
Finks.AIMAY 2026 — PRESENTSoftware Engineer (Part-Time) · AI Financial AssistantRemoteRustAWSOpenTelemetryNext.jsPythonHide3 highlights
  • Built and deployed Auxo on AWS, combining Claude, a Rust MCP backend, and a Next.js dashboard to generate 5 Instagram carousels per day and save about 3 hours of manual work.
  • Co-developed and rolled out a shared OpenTelemetry SDK across Finks's Python services, replacing Logfire and standardizing error events through Amazon EventBridge.
  • Sole engineer building a sales operations platform from scratch to replace 5 disconnected ad-sales tools, owning the architecture, data model, backend, frontend, and deployment for deal booking, advertiser approvals, click tracking, and performance reporting.
VidyardSEP 2025 — DEC 2025Software Developer · Star LabsRemoteBunTypeScriptAWS LambdaFFmpegHide3 highlights
  • Authored the technical design and led a 3-person team that shipped AI Video Backgrounds in 5 weeks, from FFmpeg feasibility research through implementation and production rollout.
  • Designed and benchmarked an AWS Lambda video-compositing workflow that placed background video behind transparent AI-presenter footage, testing resolutions, bitrates, and input sizes to establish production media limits.
  • Implemented a Bun/TypeScript media-normalization pipeline that standardized inputs and bounded render times; partnered with Product and Design to launch configurable background controls.
QNXJAN 2025 — APR 2025Software Developer in Test · Graphics Testing TeamOttawa, ONJenkinsDockerRTOSCI/CDHide3 highlights
  • Automated 500+ weekly codec regression tests across RTOS targets by engineering a Jenkins CI/CD pipeline.
  • Eliminated configuration drift by containerizing test environments with Docker for reproducible testing setups.
  • Validated 4 major OS releases by designing regression suites that caught critical graphics driver defects.
BlackBerryMAY 2024 — AUG 2024Software Developer · Cryptographic Security TeamWaterloo, ONJavaTypeScriptVaadinMVCHide2 highlights
  • Designed a high-throughput "Batch Request" system in Java/TypeScript (MVC), implementing a caching layer to optimize cryptographic key generation.
  • Worked with clients to modernize legacy security tooling by migrating an SVN codebase to Vaadin23, significantly improving maintainability and performance.
Projects

Things I built
on the weekends.

All projects on GitHub →
{ charm }

Charm

Self-hosted Discord assistant

Records voice calls, generates LLM meeting summaries, and semantically searches prior sessions. Async media pipeline with a GPU scheduler sharing VRAM between Whisper and local LLM jobs.

PythonFastAPIPostgreSQL/pgvectorDockerAWS S3
// screenshot coming soon
{ storyline }

Storyline

Searchable long-form video archive

Local-first archive that links related recordings into searchable stories with an LLM. A CLI runs GPU analysis on desktop, stores artifacts on a Raspberry Pi, and resolves speaker identity across videos via diarization.

PythonWhisperXpyannoteRaspberry PiGoogle Drive
// screenshot coming soon
{ echo }

Echo

Discord transcription chatbot

GPU-aware semaphores arbitrating Whisper and Ollama. Event-driven job queue. Dependency-injected gateway for modular services management.

PythonAsyncIOWhisperOllamaDocker
{ studygarden }

StudyGarden

Group study, in real time

10+ concurrent WS connections on Cloud Run, Redis state sync, TanStack Query + custom Notion API wrapper.

ReactTSRedisGCP
StudyGarden real-time group study app
{ pet }

Desktop Pet

Jarvis, but a cat

A cat that wanders your desktop. Integrating Ollama and productivity apps so it's actually useful - when it's actually completed.

PythonPyQt5Ollama
Desktop Pet pixel-art cat assistant
{ statemachine }

Statemachine Assistant

Visual state code editor

Node-based editor that generates ~40% templated of state code automatically.

Next.jsFlaskReactFlow
Statemachine Assistant visual state code editor
{ portfolio }

Personal Website

v3, rebuilt from scratch

Next.js + TS + hand-rolled canvas visuals. You're looking at it. Source on GitHub if you want to poke around.

Next.jsTSCanvas
Earlier version of the peterzhang.dev portfolio
{ raytracer }

Raytracer Engine

C++ from scratch

Built a CPU raytracer in C++ following Ray Tracing in One Weekend, then bolted on multi-core processing to make it fly.

C++Multithreading
C++ raytracer rendering spheres
{ soragl }

SoraGL

3D game engine, hand-rolled

Python + OpenGL game engine I built from scratch. Currently powering a rogue-lite procedurally generated shooter.

PythonOpenGLSDL2PyBox2D
{ dailyvibez }

Daily Vibez

AI vlog from a Raspberry Pi

cuHacking submission. Pi 4B + Gemini API generates a daily vlog. Custom video-context cache, 300% search speedup.

FastAPIGeminiRPi
Daily Vibez AI vlog generated on a Raspberry Pi