Corey Chen

About

About Me

I'm Corey Chen, a Go backend engineer in Singapore. For two years I built and ran microservices for a multi-tenant B2B platform — identity, segmentation, notifications, audit, and the Kafka and Temporal plumbing between them. Before that I interned on TikTok's storage infrastructure team.

How I Think

I care most about systems that stay correct when something fails: a consumer that sees the same message twice, a workflow that crashes halfway, a downstream call that times out. Most of my best work is making those cases boring.

I like to understand problems from the profiler and the data, not from guesses. The memory leak I'm proudest of fixing came down to a value-copied client, found by reading a heap profile.

Outside work I build with AI agents — my own trading-operations system runs Claude and Codex as reviewed research agents — and I write about engineering, markets and travel.

AI & Agents

I'm all-in on AI, and I mean agents, not autocomplete. I work AI-native: agents take part in every stage of my work, from design and coding to review, docs, research and publishing. Outside work I run a multi-agent research system for my own portfolio.

How I build agent systems

I treat models like unreliable distributed services. In coreytrading, agents get frozen, hashed evidence and must return schema-validated JSON; they never touch state directly. A controlled writer checks policy, freshness and revision before anything changes, a second model can review, abstaining is a valid answer, and every run has a budget and a receipt.

See the system →

AI-native workflows

I build the workflow, not just the prompt. Project contracts (AGENTS.md / CLAUDE.md) tell every model how the codebase works, custom Claude Code skills turn repeatable jobs into one command, scheduled agent tasks run research on their own, and MCP connectors plug agents into the tools I already use. This site's own pipeline is an example: I write in Chinese, and a skill checks the post, translates it into three languages, publishes it and drafts the LinkedIn update.

Where I think this is going

Personal agents will grow into digital twins that carry your experience and judgment. Once agents can meet each other on your behalf, the slow, lossy shortcuts we use to size people up (titles, brands, schools) get repriced by verifiable records of what you've actually done.

Read my writing →

Why it matters for backend work

Agent systems are distributed systems with a non-deterministic component. The habits I learned from Kafka and Temporal (idempotency, bounded retries, budgets, audit trails) are exactly what make agents safe to run for real.

Working Principles

Systems Over Silos

I design services as part of a distributed whole, not isolated units. Every decision considers upstream and downstream impact.

Observable by Default

Tracing, metrics, and structured logging are not afterthoughts — they're core requirements from the first commit.

Ship, Then Iterate

I favour working software over perfect plans: get it running, measure it, then improve it.

Skills Snapshot

Go
gRPC
gRPC
MySQL
Redis
Kafka
Docker
K8s
Prometheus
Jaeger
Backend
Go go-zero gRPC Gin GORM Temporal
Data
MySQL Redis Kafka
Infrastructure
Docker GitLab CI/CD Kubernetes
Observability
OpenTelemetry Jaeger Prometheus
AI Tools
Claude Code Codex Cursor

Tools & Setup

Hardware

  • MacBook Pro M3
  • Mechanical keyboard
  • Dual monitors

Software

  • GoLand / VS Code
  • iTerm2 + tmux
  • Docker Desktop
  • TablePlus
  • Postman

Workflow

  • Feature branches + code review
  • GitLab CI
  • AI-assisted development with Claude Code, Codex and Cursor

Get in Touch

Open to backend engineering roles in Singapore. The fastest way to reach me is email.

I write regularly at /blog.