// operator profile

Yong Sung John Lee

Vancouver · Software Engineer @ Monstercat

"Software engineer who turns 'that'll take months' into 'it's already in prod.'"

Day job is systems work in Go, PostgreSQL, and TypeScript. The rest of my time goes into a homelab that started small, kept compounding, and now hosts a quiet little corner of services for friends, family, and future-me.

Most of my open-source work orbits Neovim and the workflow of operating that homelab from inside it. The plugins below are mine — the through-line is "live in the terminal where keystrokes are cheap, orchestrating multiple agents across repository worktrees like a conductor."

location
Vancouver, BC
role
software eng.
company
monstercat
stack
go · pg · ts
github
@yongjohnlee80
// origin

How I got here

My passion for computing ignited at age nine, when I first encountered a BASIC animation of a stick figure pushing a box. I memorized the entire script on the spot, despite barely knowing any English. That spark led me to enroll in a computer cram school in Korea, where I dove into BASIC and started crafting my own simple games. By grade six, I'd earned a spot on the honor roll of the National Personal Computer Competition in Korea — competing among adults with Turbo C 2.0, dBase III, and Lotus 1-2-3.

Facing the 64-tile limit of animation on an IBM 286 AT pushed me to teach myself C and C++. When my family moved to Canada, I tested directly into Computer Science 12 as a grade-nine student. The next year (June 1996), I earned another honor-roll nod in the Canadian Computing Competition, writing algorithms in Borland C++ 3.11 as one of the youngest in the province.

Life steered me into other ventures through my 20s and 30s. The passion never faded, but the keyboard time did. At 40, I came back to it full force — working days, pursuing my Computer Science degree by night. Today I'm a full-time software engineer doing what I'd been chasing since the BASIC stick figure: building software and solving problems through code.

// projects

Open source

Each is MIT-licensed and lives on GitHub under @yongjohnlee80.

6 active repos
autovim the editor I actually live in

"If the terminal is home, this config is the furniture."

Opinionated Neovim distribution built on LazyVim, optimized for AI-assisted development in Go and TypeScript. Single-command installer, OS-detected branches.

auto-agents.nvim the orchestration glue

Multi-agent panel for Claude / Codex / Gemini / Copilot

Run AI agents side-by-side as named slots inside Neovim. Each has its own knowledge-base scope, status reporting, and per-agent model. F5 cycles among them; you treat them like terminals because that's what they are.

worktree.nvim branch-juggling without the tabs

Comprehensive worktree manager for multi-repo projects

Switch between worktrees, add new ones, remove what you've shipped — without leaving the editor. Built because `git worktree add` plus a sticky note wasn't a workflow.

gitsgraph.nvim git visualization for the multi-repo life

Multi-repo + worktree git graph

Three-pane floating panel: repo picker, IntelliJ-style graph, live commit preview. Pull, fetch, destroy worktrees from the picker. Built because gitgraph.nvim is great but shows one repo at a time, and I live in five.

md-harpoon.nvim the markdown panopticon

Six markdown previews, pinned to single-letter slots

q / w / e / a / s / d — each pins one preview, with persistent cursor state across slot switches. For runbooks, ADRs, blog drafts, KB pages. Six slots is enough; ten is too many.

remote-sync.nvim the deployment backbone

Local-first, git-backed rsync for remote-host configs

Edit your homelab's configuration on your laptop, ship it to the VPS without ever SSHing for editing. Each directory has a `.autovim-remote.json` with target + excludes + named commands (build, deploy, reload nginx, etc.). This site is deployed via it.

If you've read this far, you've probably noticed the through-line: I want to operate infrastructure and develop solutions inside Neovim — solving real-life problems while handling multiple repositories and worktrees gracefully, without my workflow ever leaving the keyboard. The plugins are how I got there. The blog posts are how I remember what I learned along the way.

If you're working on similar problems — multi-agent orchestration, remote-first development, Go + Postgres at scale, the boring-but-essential plumbing of self-hosting — I'm always interested in trading notes. The contact page has the channels.

Prefer reading-mode typography? Same content, calmer page →