About

A quiet pond, tended by a software engineer.

I'm Yun-Chen Lee — currently in the MSCS program at UW–Madison, and previously a frontend / full-stack engineer at several Taipei startups and at NTU. MSCS @ UW–Madison · Frontend, full-stack, and AI-assisted developer tooling.

Madison, WI

Hi, I'm Yun-Chen Lee.

Software engineer comfortable on both sides of the stack. I've shipped frontend platforms at Appier, Crescendo Lab, 1111 Job Bank, and NTU; built backend services in Fastify and Spring Boot; and most recently spent a summer at TSMC wiring AI-assisted refactoring into legacy Java test suites. I like calm UI, durable infrastructure, and the small joy of a developer-tool that disappears into the workflow.

Education

Master of Science in Computer Science

University of Wisconsin–Madison · Sep 2025 — May 2027

GPA 3.9 / 4.0

B.B.A. in Information Management

National Taiwan University · Sep 2020 — Jun 2024

GPA 3.93 / 4.0

Interests
WebGL & generative artDeveloper tooling & AI agentsDistributed & big-data systemsTea, ceramics, badminton
Yun-Chen Lee portrait

Yun-Chen Lee

Software Engineer · Donkey

donkeylee.com · Madison, WI

Stack

Tools I reach for first.

Languages

  • TypeScript
  • JavaScript
  • Python
  • Java
  • C
  • C++
  • SQL

Frontend

  • React
  • Vue
  • Next.js
  • Nuxt.js
  • React Native
  • Three.js
  • Storybook
  • Playwright

Backend

  • Node.js
  • Fastify
  • Spring Boot
  • Django
  • FastAPI
  • REST
  • gRPC

Data

  • PostgreSQL
  • MySQL
  • MongoDB
  • Redis
  • Spark
  • Kafka
  • BigQuery

Infra

  • Docker
  • Kubernetes
  • Jenkins
  • CI/CD
  • Helm
  • NGINX

Experience

Stepping stones across the pond.

Five internships from Taipei to Hsinchu — frontend platforms, backend services, and most recently AI-assisted refactoring of legacy Java test suites at TSMC. Told as short stories rather than resume bullet dumps.

Download résumé
  1. May 2026 — Aug 2026Hsinchu, Taiwan

    Software Engineering Intern

    TSMC

    AI-assisted modernization for legacy test suites

    • Built codebase-aware AI Skills powered by Azure MCP that automatically decouple external dependencies in 500+ Spring Boot tests, turning a multi-week manual refactor into a reusable rollout across 30+ repositories.
    • Migrated database-coupled unit tests into mock-based integration tests and Playwright E2E suites, holding 70%+ coverage while feeding decoupling ratio and SonarQube quality signals back into the team's dashboards.
    JavaSpring BootAzure MCPPlaywrightSonarQube
  2. Apr 2025 — Jul 2025Taipei, Taiwan

    Frontend Software Engineer Intern

    1111 Job Bank

    Internal tools and an AI layout editor

    • Engineered a Vue.js event-management dashboard that orchestrates RabbitMQ workflows across 20+ services, cutting manual handling by ~70% via CRUD tooling, RBAC, and type-safe API integrations.
    • Prototyped a Nuxt.js AI layout editor wired into Figma MCP so non-technical users can compose 3 block types across 5+ templates without pulling in an engineer.
    Vue.jsNuxt.jsTypeScriptFigma MCPRabbitMQ
  3. Sep 2023 — Jul 2025Taipei, Taiwan

    Backend Software Engineer Intern

    NTU — Office of Academic Affairs

    Course allocation & registration platform

    • Refactored a legacy course-allocation system handling 1M+ course–student pairs in Python and PostgreSQL, with Jenkins-triggered API pipelines that automate workflows for 30K+ students.
    • Architected and shipped NTU's greenfield course-enrollment module in Fastify, designing API, validation framework, and repository architecture to fold 20+ registrar policies into reusable services.
    FastifyPythonPostgreSQLJenkinsTypeScript
  4. Jan 2024 — Mar 2025Taipei, Taiwan

    Frontend Software Engineer Intern

    Appier

    Pipeline health and UI reliability

    • Diagnosed dependency-graph fragmentation in the build system and enforced deterministic package resolution, dropping CI/CD pipeline build time by ~65%.
    • Resolved long-standing async race conditions with deterministic request sequencing and client-side interaction locks, cutting Datadog-tracked rendering failures by 87%.
    ReactTypeScriptGitHub ActionsDatadog
  5. Jul 2023 — Jan 2024Taipei, Taiwan

    Frontend Software Engineer Intern

    Crescendo Lab

    Reusable component libraries

    • Built company-wide reusable React + TypeScript UI libraries as internal npm packages, plumbed into Storybook and a Django BFF — pulling repeated feature delivery from weeks down to hours.
    ReactTypeScriptStorybookDjango

Projects

Three projects worth a closer look.

A WebGL playground (you're standing in it), an open-source AI-powered job radar shipping ATS crawls + LLM filtering on a free GitHub Actions cron, and a calmer notes idea I'm shaping in the open.

FeaturedLive on this page

Graphics Town

A WebGL playground I keep building creatures inside. This pond is its newest exhibit.

An evolving graphics sandbox — hand-authored geometry, GLSL water, bezier swim paths, mouse-driven ripples. The koi pond on this site is part of the same playground: every primitive in the hero is shaped by code, not stock assets.

  • Procedural koi & lotus geometry generated at mount time (no model assets)
  • Object-pooled ripple field driven by pointer position
  • Season-aware palette wired into both DOM and WebGL materials
TypeScriptThree.jsReact Three FiberGLSLWebGL
Open source

JobRadar

An AI-powered job-tracking template that watches the boards so I don't have to.

Open-source TypeScript / Node template that crawls ATS providers, dedupes postings across reposts, runs each JD through an LLM extraction step, then emails me the ones that actually match. Runs free on a GitHub Actions cron.

  • Tracks 6,600+ roles across 1,500+ companies
  • Concurrent ATS JD crawlers with URL-level deduplication
  • LLM-powered filtering turns messy JDs into structured role signals
  • Email alerts whenever something matches user-defined criteria
TypeScriptNode.jsATS CrawlersLLM ExtractionGitHub Actions
WIP

Jovana

A calm product idea I'm shaping in the open.

A work-in-progress for a calm space where personal notes link themselves. Today this is a placeholder card — the fuller story (and screenshots) lands once the first usable cut does.

  • Concept: a quiet notebook where structure emerges from links
  • Stack TBD — leaning Next.js + local-first sync
  • Public roadmap once the v0 demo is stable
In progressNext.jsLocal-first sync

Contact

Say hi from the other side of the pond.

I'm happy to chat about graphics, developer tooling, AI-assisted refactoring, or just a good cup of tea. The fastest way to reach me is email or LinkedIn.

donkey.leelee@gmail.com · 608-896-5504 · Madison, WI

Yun-Chen Lee — Frontend Engineer