Skip to content
Hero Background Light

About the Author

I’m a Staff Software Engineer based in the Sacramento area of Northern California, with over fifteen years of experience building software across very different layers of the stack — from firmware that runs before the operating system to large-scale web platforms used by real customers every day. My career didn’t follow a straight line, and that’s exactly what shaped how I think about systems today.

I started deep in BIOS and UEFI firmware at Dell, debugging engineering issues on servers, storage, and switches. From there I moved into distributed system development, then into backend services, and eventually into full-stack web development to work closer to products, users, and impact. That transition reshaped how I think about engineering: not just how things work, but why they matter.

Today I work as a Staff Software Engineer at BILL in San Jose, leading frontend architecture and authentication/identity work for the company’s Spend & Expense product line. Before BILL, I led GraphQL backend and federation work at Rivian, built secure conversational AI features at Infinitus Systems, designed authentication systems on AWS Cognito at Kind Health, and spent six years at Dell spanning firmware, hardware bring-up, and web development through their Enterprise Rotation Program.

I’ve worked as a backend engineer, frontend engineer, and full-stack engineer, designing APIs, GraphQL platforms (including Federation), distributed systems, and user-facing applications. I’ve helped build enterprise-scale products, supported high-stakes launches, and worked across teams with very different constraints — from fast-moving startups to regulated industries.

Along the way I’ve learned that good software engineering is less about chasing trends and more about fundamentals: clear thinking, solid abstractions, and an honest understanding of trade-offs. That bias toward fundamentals is what shaped this site.

System design interviews ask senior engineers to defend architectural decisions under time pressure — and most of the available material is either too shallow (“here are some buzzwords”) or too sprawling (a 600-page book you’ll never finish). I wanted a study companion that respected the reader’s time: short enough to read in a sitting, dense enough to power a real whiteboard discussion, and opinionated enough to be useful. That’s the bar I held every page on this site to.

If you’re preparing for a system design loop, I hope these notes save you time. If you find something wrong, unclear, or missing, please tell me — system design is a craft, and good craft only improves through feedback.

I also publish at SWENG.dev, where I write longer-form pieces on system design, backend and frontend engineering, architecture decisions, tooling, performance, and the less-discussed parts of the job — career transitions, technical debt, and how engineers grow over time. Lately I’ve also been exploring AI and agent-based systems there: not as a buzzword, but as another set of tools that senior engineers need to understand deeply to use responsibly.

For Korean-speaking readers, I keep a separate blog at StanStory.

  • Location: Rocklin, CA (USA)
  • Education: MS in Computer Science, Yale University · BBA, Seoul National University · BS in Electrical Engineering & Computer Science, KAIST
  • Tools I reach for most: TypeScript / JavaScript, Go, Node.js, React, Next.js, GraphQL (and Federation), PostgreSQL, MongoDB, DynamoDB, AWS, Kubernetes
  • Outside of work: family, piano, guitar, table tennis, and the occasional weekend side project

I’d love to hear from you — feedback on this site, questions about a topic, or just a hello.

Thanks for stopping by. Hope you find something useful here. 🙏

Last updated:

Ready to ace your next system design interview?

Work through structured notes on the fundamentals, data systems, and architecture patterns that show up in every senior interview loop.

Start StudyingInterview Framework