0%

Loading the 3D models

Ryan Yang

Mobile & AI engineer

Toronto · Four apps on the App Store

Ryan Yang

I build iPhone apps where the hard part runs on the phone: pose tracking, room scanning, and a camera that grades colour live.

What I cannot create, I do not understand.

Richard Feynman
Selected work

Loading the 3D objects.

Fourteen objects from the projects and from daily life. Move the cursor through them.

01

Work

Selected work

Four apps on the App Store and a read-only finance tool. Each one opens as a short story you scroll through, with the links to try it.

  1. HabitForge running on iPhone: the Finance tab with a monthly spending report, category filters, a summary of expenses and trend, and a debt screen showing card and loan balances.

    01 / 05

    HabitForge

    Habits & budgeting · iPhone

    Habit tracking and personal budgeting in one app, with nothing leaving the phone.

    Platform
    React Native · Expo
    Widgets
    Swift · WidgetKit
    Intelligence
    Gemini · opt-in
    App Store Case study Support
  2. Seekr running on iPhone: the Find Item screen showing a scanned room outline with a desk chair marked at its location, a one-metre scale bar, and a link to the 3D model.

    02 / 05

    Seekr

    Room scanning · iPhone

    Scan a room once, then find the thing you put away six months ago.

    Capture
    RoomPlan · LiDAR
    Guidance
    ARKit
    Sync
    Local first · CloudKit
    App Store Case study Support
  3. TrainTogether running on iPhone: a live squat set with a skeleton pose overlay on the camera, a 100% form score, rep and set counters, and an “Align knees” correction.

    03 / 05

    TrainTogether

    Fitness coaching · iPhone

    Counts your reps and checks your form from the phone camera, without uploading video.

    Vision
    MediaPipe
    Coach
    Qwen · llama.cpp
    Continuity
    HealthKit · GRDB
    App Store Case study Support
  4. DigiMimic running on iPhone in landscape: a manual camera with shutter, ISO and exposure dials either side of a live graded preview, and shutter speed 1/250 at f/1.6.

    04 / 05

    DigiMimic

    Camera · iPhone

    A manual camera for iPhone, with the colour grade applied live instead of afterwards.

    Capture
    AVFoundation
    Render
    Metal · Core Image
    Output
    HEIF · RAW · DNG
    App Store Case study Support
  5. 05 / 05

    IBKR Analyzer

    Finance dashboard · Desktop

    A read-only dashboard for my Interactive Brokers accounts. It cannot place a trade.

    Engine
    Python · FastAPI
    Interface
    Next.js
    Guardrail
    No execution methods
    GitHub Case study

02

Capabilities

Capabilities

Under the five products, four disciplines and forty-one tools. Every tool links to the project where it earned its place.

01Swift, SwiftUI, UIKit, Objective-C, React Native, TypeScript, React, Expo, Java, clean architecture. 02MediaPipe, TensorFlow, PyTorch, Gemini, NLP, OpenCV, Metal, Core Image, AVFoundation, SceneKit. 03ARKit, LiDAR, RoomPlan, C++, RTAB-Map, PCL, VTK, G2O, Eigen. 04Python, R, Firebase, PostgreSQL, Next.js, Node.js, FastAPI, Docker, Git, pytest, Matplotlib, Plotly.

  1. 01

    Product systems

    Interfaces that survive production.

    Native applications, cross-platform products, and maintainable interface architecture.

    HabitForge
  2. 02

    Applied intelligence

    Models connected to real inputs.

    Vision, language, and on-device media systems built around measurable product behaviour.

    TrainTogether
  3. 03

    Spatial infrastructure

    Physical space, made computable.

    Capture, reconstruction, mapping, and geometry pipelines for spatial products.

    Seekr
  4. 04

    Platform & evidence

    Infrastructure that explains itself.

    APIs, data systems, testing, and visual evidence for decisions that need to be trusted.

    IBKR Analyzer

03

Photography

Photography

144 photographs in six collections — Toronto, the lakeshore, China, winter, Niagara, and the seasons turning.

The Toronto skyline and CN Tower in silhouette at sunset, seen across Lake Ontario.
Lakeshore · Toronto See all 144 photographs

04

Arcade

Arcade

Five games, each running its real solver — so what moves on the board is the search itself, not an animation of one.

05

About

Design, code, and support.

I study computer science at the University of Toronto and build apps the rest of the time. Four are on the App Store. I write the support pages too.

Ryan Yang focused on writing code at a workstation.
Ryan Yang wearing a dark cap and sunglasses against a dark studio background.

Ryan YangMobile & AI engineer

Focus
iOS · Computer vision · Spatial
Studying
Computer Science, U of T
Shipped
4 apps · 1 public repo
Based
Oakville / Toronto

The demo is easy. Week two is not.

I would rather implement the real algorithm than approximate it. That is why the apps took as long as they did.

Method

A pose tracker looks fine until the camera shakes. A scan looks fine until you reopen it a month later. Most of my time goes into the second case: smoothing, validation windows, restore paths, and what the screen says when there is nothing to show.

Practice

I write tests for the failure I would otherwise ship. Fifty-six of them exist so one dashboard cannot place a trade.

06

Contact

Tell me what this is about.

A role, a product, or a problem you cannot get past — any of those is a good first email. A couple of sentences is plenty; I will ask about the rest.

Or write it hereYour email app opens with it filled in. Nothing is stored.

Enter your name.

Enter a valid email address.

Tell me what you’d like to discuss.

Add a little more detail.

Nothing is sent from this page — your email app opens with the message filled in.

The studio

Back to the room it all began in.

Every page here is on the computer in that room.

Enter the studio

Software Engineer · Oakville / Toronto, Canada

iOS apps, and the systems underneath them.

Computer Science student at the University of Toronto, and an independent engineer with four apps on the App Store. My work runs from ARKit and MediaPipe on the phone to FastAPI services and pytest suites on the other end.

I write for the case where the network is gone, the camera is shaky, or the data is missing — the states that decide whether people keep an app after week one.

Education
University of Toronto
BSc Computer Science, 2028 · GPA 3.73
Current work
Independent software engineering
Shipped
4 apps on the App Store, 1 public repo
Primary areas
iOS · AI/CV · Spatial systems · Data

Where I have worked

2025 - Present

Independent Software Engineer

Oakville, Ontario

Mobile, AI, computer vision, spatial computing, and financial analytics

  • Designed, built, tested, and released four Apple-platform apps — habits and budgeting, LiDAR room scanning, on-device fitness coaching, and a professional camera — through App Store review each time.
  • Built a read-only investment dashboard end to end: IBKR Gateway integration, risk analytics, a deterministic scoring engine, and 56+ pytest cases that verify it cannot place an order.
  • Worked in Swift, SwiftUI, React Native, TypeScript, Python, and C++, across Apple frameworks, local databases, REST APIs, and Docker services.
Nov. 2022 - June 2024

Equipment Team Leader

East Asian Student Association

Coordinated event equipment, setup, and operational support for student programming.

2019 - 2021

Community Tech Support & Math Tutor

Oakville Chinese Network

Provided practical technology support and mathematics tutoring in a community setting.

Selected production work

Five products. Four are on the App Store; the fifth is a public repository. Each entry links to a case study and to the thing itself.

IBKR Portfolio Analyzer

Independent Software Engineer · 2026 - Present

A read-only portfolio intelligence dashboard for consolidated Interactive Brokers holdings, risk analysis, deterministic scoring, and evidence-linked research.

Engineering detail
  • Consolidates multi-account holdings with USD/CAD conversion, live P&L, allocation, VaR, drawdown, and concentration metrics.
  • Uses a broker adapter with no order-placement methods, guarded AI output, and 56+ pytest cases for no-trading compliance.

FastAPI · Next.js · TypeScript · Python · Docker · Gemini API · ib-insync

TrainTogether app icon

TrainTogether

Independent Software Engineer · Nov. 2025 - Present

An on-device fitness coach with live pose tracking, repetition counting, form scoring, session history, health integration, and local language-model coaching.

Engineering detail
  • Built a MediaPipe landmark pipeline with smoothing, rolling-window validation, and body-angle constraints for stable real-camera analysis.
  • Designed shared FormConfig and RepFormTracker abstractions for 32+ exercise detectors and deterministic mock-landmark tests.

SwiftUI · MediaPipe · llama.cpp · SQLite · CloudKit · HealthKit

Seekr app icon

Seekr

Independent Software Engineer · Sept. 2025 - Present

An offline spatial organizer that turns LiDAR and ARKit scans into searchable 3D room maps, so you can find where you put something months later.

Engineering detail
  • Wrote a Swift-to-Objective-C++/C++ bridge that streams per-frame ARKit odometry into RTAB-Map SLAM while keeping mapping and export callbacks SwiftUI-safe.
  • Split persistence across Core Data metadata, canonical OBJ/PLY assets, and RTAB-Map databases so saved scans reload cleanly across sessions.

ARKit · RTAB-Map · C++ · Objective-C++ · Core Data · MultipeerConnectivity

HabitForge app icon

HabitForge

Independent Mobile Developer · June 2025 - Present

A cross-platform habit and personal-finance app covering streaks, budgets, reminders, widgets, analytics, and CSV export, with every record kept on the device.

Engineering detail
  • Modeled 40+ domain entities across habits, finance, rewards, and notifications behind separate React Context providers and typed service layers.
  • Built a WidgetKit/App Groups batch sync through Swift and Objective-C native modules so habits, expenses, and budgets refresh in one payload.
  • Wired Gemini into recommendations and natural-language expense parsing on anonymized metadata, with caching so tracking still works with AI switched off.

Expo · React Native · TypeScript · Swift · Objective-C · WidgetKit · Gemini API

DigiMimic app icon

DigiMimic

Independent iOS Engineer · June 2026 - Present

A landscape-first camera app with manual exposure and focus, monitoring tools photographers actually use, and colour grading applied live rather than after the fact.

Engineering detail
  • Built the Metal/Core Image preview through MTKView with 10-bit rendering, triple buffering, and load-aware degradation when frames start costing too much.
  • Shipped capture paths for HEIF, RAW/DNG, and graded video, plus zebra, waveform, false colour, histogram, and focus peaking.
  • Kept gallery culling, subject segmentation, and colour matching on-device with Core ML and Vision; no media leaves the phone.

Swift · SwiftUI · AVFoundation · Metal · Core Image · Core ML · Vision

Academic background

University of Toronto

Bachelor of Science, Computer Science Specialist

Faculty of Arts & Science · St. George Campus

Sept. 2024 – May 2028 (expected)

Cumulative GPA

3.73 / 4.0

Relevant coursework

Data Structures & Analysis, Software Design, Machine Learning, Systems Programming, Computer Organization, Probability & Statistics, Multivariable Calculus.

Honours & awards

Certificate of Distinction — Euclid Mathematics Contest Top 25% globally
Subject Award — Principles of Mathematics Highest grade in the course

What I work in

Languages Swift, Java, Python, TypeScript, JavaScript, C++, Objective-C++, SQL
Mobile & Apple SwiftUI, UIKit, React Native, Expo, ARKit, AVFoundation, Metal, Core Image, WidgetKit, Core Data, CloudKit, HealthKit
AI, CV & spatial MediaPipe, llama.cpp, Core ML, Vision, RTAB-Map SLAM, Gemini API, OpenCV
Backend & data FastAPI, Next.js, Node.js, PostgreSQL, SQLite, Docker, Supabase, REST APIs, ib-insync
Testing & tooling pytest, Playwright, XCTest, Git, Xcode, Instruments

Get in touch

I read every email. If you have a role, a product, or a problem in mobile, computer vision, or spatial computing, send the details and I will reply.