John Yuen · Seattle, WA

John Yuen builds backend systems where microseconds count.

Backend engineer with 5 years of Java and Spring Boot at OKX, Standard Chartered, and Blockchain Solutions. I profile before I optimize. Now studying for an M.S. in Computer Science at Northeastern University in Seattle.

OKX market-data-to-order path 1 µs p50 · 8 µs p99 · after a 40% cut

Selected work

−40%
order-execution latency

Market-making order path

OKX · 2024–2026

I was a market-making developer on OKX's crypto market-making team. I built the Java path from gateway to strategy to order for 3 trading desks, and I owned 24/7 incident diagnosis: CPU and memory spikes, PnL drops, IPC consumer backpressure, and server overload.

I profiled the JVM hot path and replaced locks with lock-free data structures. Order-execution latency fell 40%, to 1 µs p50 and 8 µs p99 from market data to order.

  • Java
  • JVM profiling
  • Lock-free data structures
  • Kafka
2–4 → 1–2
critical incidents per month

Observability platform

OKX · self-initiated · adopted by 3 market-making teams

I started this outside my duties, first for my own incident work. The backend is Python and FastAPI, with a Flask web UI. It matches known failures and detects new trends in the logs.

My first design changed logging inside the trading process. JMH benchmarks showed that this went over the latency budget, so I rejected it and moved the analysis off the hot path, running async. When an alert fires, the platform hands the alerted logs, related servers, and alert frequencies to a cloud agent, which starts the investigation automatically.

  • Python
  • FastAPI
  • Flask
  • JMH
  • Prometheus
  • Grafana
  • OpenTelemetry
12
engineers across 2 market-making teams run all their development through it

Multi-agent LLM coding harness

OKX · built on the firm's AI development platform

The harness keeps long-running agent work on spec. Each development phase passes several rounds of agent review. The reviewers pull real data from test and production, such as logs, output data, and Grafana latency and memory metrics, and compare it against the change.

After review, agents write a fix plan and then fix. Every goal runs in its own Git worktree. Hooks enforce persistent memory: agents keep notes on their work, reviews, and plans, so another session can pick up where one stopped.

  • LLM agents
  • Git worktrees
  • Review gates
−90%
API latency, from an O(n²) to O(n) rewrite

Retail stock-trading backend

Standard Chartered Bank · 2023–2024

I was the sole backend developer of a Java Spring Boot system for Hong Kong retail stock trading, which handles more than 10,000 trades a day.

The holdings page recomputed cost basis and tax lots for every holding in O(n²) on each refresh. I rewrote it in O(n) with the same results: API latency fell 90% and holdings processing time fell 87%. I then fixed Spring open-in-view connection-pool exhaustion and added an Ehcache layer, which cut database load 85%.

I also led a rebuild of the notification engine. I traced the business logic through over-abstracted legacy code, then rebuilt it from scratch with the Strategy Pattern and dependency injection, so a new channel needs no core change. I wrote every test; coverage is above 90%.

  • Spring Boot
  • JPA / Hibernate
  • Oracle
  • Ehcache
  • Azure DevOps
  • Ansible
13 min → 31 s
core workflow, 96% faster

Client microservices

Blockchain Solutions Limited · 2022–2023

I built Spring Boot microservices in Java and Kotlin for client projects, connected through RabbitMQ pub/sub, and diagnosed stuck and backpressured queues in production.

A core workflow took 13 minutes. I moved its JPA hot path to QueryDSL and JDBC batch inserts, with multi-threading, and it now runs in 31 seconds. The services ran in containers on Kubernetes with Helm, and on AWS EC2, S3, and CloudWatch. I also wrote Solidity contracts on Ethereum and Polygon.

  • Kotlin
  • RabbitMQ
  • QueryDSL
  • Kubernetes
  • Helm
  • AWS
  • Solidity

Experience

  1. OKX · Software Engineer · Hong Kong

    Market-making developer on the crypto market-making team.

  2. Standard Chartered Bank · Analyst, Development · Hong Kong

    Sole backend developer of a retail stock-trading system.

  3. Blockchain Solutions Limited · Software Engineer · Hong Kong

    Backend developer for client projects in Java and Kotlin.

  4. Manpower Service (HK) Limited · Contract Junior Programmer

    J2EE application developer; fixed Oracle PL/SQL stored procedures.

Education

  1. Northeastern University · M.S. Computer Science · Seattle

    Expected May 2028. Fall 2026: CS5330 Computer Vision.

  2. The Chinese University of Hong Kong · B.Eng. Information Engineering

    Final-year project: a full-stack Ethereum dApp.

  3. UOW College Hong Kong · A.Sc. Information Systems Development

    Scholarship for an exchange program at Turku University of Applied Sciences, Finland.

Projects

Easy QR Code window after reading a QR code from a photo: the decoded website link with Copy and Open buttons, and a Found 1 QR code banner.

Easy QR Code

C# · WinUI 3 · OpenCV · MSIX · private repo

A Windows desktop app that reads QR codes from the webcam, from photos, or from the clipboard. Decoding runs on the PC with OpenCV's detection and super-resolution models, and the package does not ask for internet access, so nothing leaves the machine.

It is packaged as MSIX for the Microsoft Store. One photo, the camera, and Copy and Open are free. A one-time $0.99 add-on unlocks folder batch reading, right-click open, and export of all links to a text file. A command-line tool shares the same decoder core, and unit tests run in CI.

Token Usage dashboard with OpenAI Codex weekly window at 63% used and Cursor billing at 25% used, with reset countdowns.

Token Usage Widget

Node.js · Electron · npm package · MIT

One place to see how much quota is left on AI coding tools: Codex, Cursor, Claude Code, OpenCode, OpenRouter, Kimi, Z.AI, and Grok. An always-on-top corner widget runs on Windows and macOS, and a full dashboard runs on localhost.

Install it with npm i -g token-usage-widget and run tuw. Setup finds the agents you are already signed in to and polls only the providers you turn on. Secrets stay in a per-user config file, and the server binds to localhost by default. It had 428 npm downloads in the month to 9 October 2026.

TravelBuddy arrival tracking on iPhone: Apple Maps route through Sha Tin with 5.6 km left, 65% trip progress, next stop Admiralty, and a reminder due in 5.1 km.

TravelBuddy

TypeScript · React Native · Expo · private repo

A phone app that wakes you before your stop. Pick a destination and a reminder rule, by distance or by a share of the route estimate, and the app tracks you in the background with GPS. It alerts you as each threshold passes, and again about 200 m before arrival. It works by car, train, bus, on foot, or any mix.

Arrival detection runs entirely on the device, and accounts are optional. iOS uses Apple MapKit through a custom native module. Android uses MapLibre with an OSRM-compatible router. Safety features watch for route deviation and unusual pace, and offer SOS actions. Release builds refuse demo or non-HTTPS map endpoints.

Screenshot: a live trip on iPhone.

Real-time vision filters

C++ · OpenCV · ONNX · CS5330

A webcam filter tool: greyscale, sepia, blur, Sobel gradients, face detection and face-only blur. It also runs the Depth Anything V2 network through ONNX on live video. Switching pixel access from at() to row pointers cut the 5×5 blur from 6.0 ms to 2.9 ms.

Web table of daily client and product net positions with a Download Output.csv button.

Daily net-position service

Java · Kafka Streams · Docker

Turns each trade record into a Kafka event and aggregates it with Kafka Streams into one sorted net-position snapshot, served as JSON, CSV, and a web UI. 717 input records collapse to five client and product rows. One script starts the whole stack.

EducationCare school finder: a Google map of Sha Tin with a pin for each school in the district.

HK Easy School (搜校易)

Python · Django · crawlers · 2018 group project · private repo

A web portal that helps parents choose a Hong Kong school. Crawlers collect school data into a database. The site shows schools on a district map, ranks them, lists school events, and pre-fills application forms. Passwords are RSA-encrypted in transit and stored as Argon2 hashes. It ran on DigitalOcean.

Heatmap of S&P 500 daily returns, one column per stock, red for losses and green for gains.

S&P 500 heatmap

Python · yfinance · seaborn

Draws a heatmap of daily returns for every S&P 500 stock over recent trading days. It fetches in batches and skips missing data and bad symbols. The image is a real run from October 2026.

High-IV option alert

Python · aiohttp · pandas

Scans the S&P 500 every hour with async requests. It sends an email when a stock above $10 has options with implied volatility over 150%.

Ethereum dApp

Solidity · Node.js · Flutter · CUHK

Final-year project: an ERC-20 token contract in Solidity, a Node.js backend, and a Flutter front end.

Sokoban

C# · Unity

A top-down 2D Sokoban that builds each level from an external text file.

TripFlow

TypeScript · Next.js · Prisma · PostgreSQL · in development · private repo

A trip planner that reads like a simple travel document: day-by-day plans, links between plans that depend on each other, a map view, shared expenses across currencies, and AI enrichment with your own API key.

Stack

Programming
Java, Kotlin, Python, SQL, PL/SQL, C++ (coursework), TypeScript
Backend
Spring Boot, REST APIs, Spring Data JPA (Hibernate), QueryDSL, JDBC, FastAPI, Flask, Django
Data
Oracle, MySQL, PostgreSQL, Redis, Kafka, RabbitMQ, Ehcache
Cloud
AWS (EC2, S3, CloudWatch), Docker, Kubernetes, Helm, Nginx, Azure DevOps, Ansible, Linux
Performance
JMH, JVM tuning, GC analysis, lock-free data structures, Prometheus, Grafana, OpenTelemetry
Languages
Fluent in Cantonese, English, and Mandarin

Contact

johnyuen97@gmail.com

Available for a co-op or internship from May to December 2027.