Morgan Li Contact
01Engineer · Sydney · Available

Morgan Li.

Backend, infra and platform engineer. I lead the team building LetsRide at Motosoft — and ship things real people use, from a pre-launch consumer platform to game mods with 200k+ downloads.

Role
Lead Engineer · Motosoft
Based in
Sydney, Australia
Shipping since
2015
Open to
Senior / staff roles
200k+
aggregate game-mod downloads
475
websocket tests run in ~110s
7
AWS CDK stacks migrated to prod
11yrs
building software professionally
02· About

Backend, infra, and the long view.

// 03 paragraphs · the short version

I’m a Lead Engineer at Motosoft, where I own the backend architecture, deploy pipeline and platform reliability for LetsRide — a pre-launch motorcycle community platform. I lead a small team across a Python/FastAPI backend, a React/Vite web app, and a Rust + Go routing pipeline.

Before Motosoft I shipped independent games and mods used by 200,000+ players, tutored discrete math and AI at UNSW, and analysed state-government applications in Pennsylvania. I finished a Master of IT at UNSW in 2025 (WAM 84.6) and now do part-time research on transformer self-attention.

I like systems that are obviously correct, deploys that are boring, and writing the runbook before the incident. I’m currently most curious about geospatial pipelines, distributed WebSockets, and how vector spaces represent negation.

Currently
Lead Engineer · Motosoft
Based in
Sydney, Australia
Shipping since
2015
Education
M.IT, UNSW · WAM 84.6
Research
Self-attention & sarcasm
Open to
Senior / staff roles
03· Skills

Tools and stacks.

Languages01
PythonTypeScriptRustGoSQLC#C++
Backend02
FastAPISQLAlchemy 2.x asyncPydantic v2asyncio / anyioaiobotocore
Frontend03
React (Router v7)ViteTailwind CSSMapLibre GLPlaywrightVitest
AWS04
CDKSAMLambdaECS Fargate (ARM64)Aurora Serverless v2ElastiCache (Valkey)CloudFrontWAFv2RekognitionSESSecrets ManagerIAMCloudWatchECR
Data & msg05
PostgreSQL + AlembicRedis StreamsAWS SESMessageBirdFirebase Cloud Messaging
Geospatial06
OSRMOsmiumTilemakerPMTilesMapLibre GLOpenStreetMap
Auth & sec07
Kid-based JWT rotationOAuth2CloudFront signed cookies / URLsAWS WAF CAPTCHAmTLS
Infra / Ops08
Docker (multi-stage)GitHub Actions (OIDC)Self-hosted runnersECS blue/greenARM64 / Graviton
Testing09
pytestpytest-xdistPlaywrightVitestnode:test
04· Work

Selected projects.

Filter
2026 · Lead Engineer Building

LetsRide Platform

Motorcycle / rider community platform — pre-launch, web + API.

7 stacks
AWS CDK migration
16+ ADRs
authored & shipped
475 tests
WebSocket layer · ~110s on pytest-xdist

Backend architecture, deploy pipeline and platform reliability across a 7-stack CDK monorepo (Network, Data, WAF, Compute, Monitoring×2, ECR).

Aurora Serverless v2 with passwordless IAM DB auth, ElastiCache Valkey, ECS Fargate on ARM64, CloudFront VPC Origin, WAFv2. Authored 16+ ADRs and the cutover runbook.

PlatformAWSBackend
2026 · Designer & implementer Shipping

Geospatial Routing Pipeline

Rust + Go pipeline for OSM-derived routing tiles and incremental updates.

PMTiles v3
from-scratch Go writer
OSC streaming
affected-bbox parser
Daily diffs
Geofabrik → tiles

4-crate Cargo workspace — affected-bbox streaming OSC parser, PBF node-coord index, greedy bbox merge with haversine distance.

From-scratch Go implementation of the PMTiles v3 binary format for incremental tile splicing from Geofabrik diffs.

GeospatialRustGo
2026 · Designer & implementer Shipping

Distributed WebSocket Layer

Per-user session registry across ECS task replicas with Redis Streams.

475+
ws tests · 110s
Redis Streams
consumer-group fan-out
5 msg/s
rate limit + burst

Per-user session registry across multiple ECS task replicas. Redis Streams consumer-group fan-out with wake-ack synchronization.

DDoS guards (connection caps, 5 msg/s rate limit with burst, size + idle limits) backed by a shared-aggregator test infra running 475+ websocket tests in ~110s on pytest-xdist.

PlatformBackendAWS
2026 · Designer & implementer Production

Kid-based JWT Rotation

Zero-downtime key rotation across FastAPI + SAM Lambda without forcing re-login.

0 re-logins
across rotations
4 phases
add · flip · drain · drop
Per-purpose
auth / refresh / api

Secrets Manager-driven preserve-on-update semantics and per-purpose rotation GitHub Actions workflows.

Add-new-kid → flip → drain refresh window → drop old kid, without forcing a global re-login.

AuthBackend
2025 · Solo Side project

Natural-Language News Aggregator

Full-stack service that filters news via natural-language queries.

pgvector
+ pg_trgm hybrid
SSE
streaming feed
3 tiers
Sonnet · Haiku · Opus

Python 3.12 / FastAPI with async SQLAlchemy + Alembic. Postgres 16 with pgvector + pg_trgm for vector + trigram search. arq + Redis ingest workers. Anthropic SDK (Sonnet / Haiku / Opus tiered) for parsing and enrichment.

Vite + React 18 + TS + Tailwind + TanStack Query frontend with SSE streaming feed. Pragmatic pull-only architecture with lazy verification on read; docker-compose dev stack.

Side projectMLBackendFrontend
Animated · vector space
2025 → current · Researcher · UNSW Research

Orthogonal Separation for Sarcasm Detection

Research on logical negation patterns in transformer self-attention.

UNSW
supervised research
June 2025 →
ongoing
Self-attention
+ quantum logic

Investigate logical negation pattern in the self-attention mechanism. Apply quantum-logic-inspired orthogonal separation to vector space in transformer models.

Open questions: does orthogonal separation improve sarcasm detection? Does it carry over to general downstream tasks?

ResearchML
2023 · Solo Shipped

RogueTechPerfFixes

BattleTech mod — 100% (up to 200%) performance improvement.

+100% perf
avg · +200% peak
Cecil + Harmony
runtime IL patching
Profiler-led
no guess work

Used JetBrains Profiler to identify performance bottlenecks with a data-driven approach.

Used Cecil to inject code snippets into assembly and Harmony to patch code on the fly to improve runtime performance.

Game modC#
Awesome Inventory loadout UI for RimWorld In-game · UI
2021 → 2024 · Solo · 224 of 267 commits Open source

Awesome Inventory

RimWorld mod — race-free inventory loadouts with a three-tier pub-sub event mesh.

200k+
unique downloads
224 / 267
commits authored
3-tier mesh
race-free pub-sub

Awesome Inventory — open-source C# extension to a RimWorld inventory mod (224 of 267 commits, 200K+ unique downloads).

Three-tier pub-sub event mesh designed to avoid races; Schmitt-trigger hysteresis on inventory margins to prevent restock oscillation; sentinel-job + Harmony-prefix pattern bridging a structural gap in the vanilla game’s job-interrupt notifications.

Game modC#
Home Mover relocating an entire colony building in RimWorld Animated · in-game
2021 → 2024 · Solo Open source

Home Mover · MoveBase

RimWorld mod — multi-building relocation modeled as cycle detection over a lazy spatial dependency graph.

100k+
unique downloads
FVS heuristic
for cycle breaks
Save-safe
serialized across ticks

MoveBase — open-source C# / .NET mod for RimWorld. Multi-building relocation modeled as cycle detection on a lazily-constructed dependency graph (spatial + interaction-cell constraints).

Cycles broken by a feedback-vertex heuristic that demotes one chain node to non-relocating uninstall. Operation state is save-game serializable across ticks. Harmony patches bridge the closed-source engine.

Game modC#
05· Experience

Eleven years shipping software.

Education

Master of Information Technology
2024 — 2025
UNSW Sydney
WAM 84.6
Graduate Foundation Program
2018 — 2021
Columbia University, NYC
Pass
06· Writing

Drafts and field notes.

07· Off-clock

Curiosities outside work.

Game modding

200,000+ downloads, three engines, ten years.

Geospatial / OSM

Building tiles from raw planet data.

Transformer research

Negation as direction, not feature.

Discrete maths teaching

COMP9020 + COMP3411 · UNSW.

Distributed systems

WebSockets at scale, Redis Streams, race conditions.

Long deploys

Multi-phase rollouts and runbooks before incidents.