FRONTEND ENGINEER AND WRITER
yceffort.
A record of the experience I gained by building and running things.
EXPERIENCE AND CONTRIBUTIONS
From building services to the ground a team works on.
I have built and run software across many domains since 2014. I have led a frontend team and built libraries and tools shared by many services. I pass on what I learned through books, writing, and open source.
Frontend engineer, currently employed
- Building services
- React, TypeScript, Next.js
- Operations and performance
- Node.js, Kubernetes, web performance
- Team foundations
- Shared libraries, CLIs, code review
Experience
Experience from where I work now and the places I have worked before.
KakaoPay Securities
2026.03 to presentFrontend Engineer, Home team
Building the stock home screens and making them faster
- Built the securities home in the KakaoPay app and the stock home in the KakaoBank app
- Wrote a WebSocket library
- Cut FCP by 44%, downloaded JS by 38%, and CPU time in the first 5 seconds by 30% on the home screen (mobile lab measurement) by reassembling an external SDK, cleaning up bundles, and improving rendering
- Restored a required external SDK from its source maps and reassembled it without touching its logic, cutting the event sending entry by 72% (gzip)
- Removed frame drops from a framer-motion banner, ported number-flow to older browsers, and moved its animation to the compositor thread
React, TypeScript, Next.js, Turbopack
NAVER Financial
2020.09 to 2026.03Frontend Engineer, Assets & Membership FE Lead → Card FE Lead / Shared Development TF Lead
Led a frontend team of up to 14 people, building financial services and the shared foundation of the frontend organization
- Led the move from a single CRA app to 20-plus SSR services on Koa and Next.js, so a failure stays inside one service and each service can deploy on its own, more often
- Led the shared packages used by those 20-plus services (@mydata, @financial, @financial-auth, @pie) and set up how they are published to the registry
- Led bundle size work that cut the _app chunk shared by every page by 345 kB (51%) and 110 pages by 1.17 MB in total, bringing the average initial load from 2.6 s to 1.4 s
- Started the NaverPayDev open source program and led publishing and maintaining the team's shared packages
- Built hidash, a lodash replacement
- Built mobile financial services including MyData, member authentication, and the card tab
- Built and maintained a state management library, the design system, a project scaffolding tool, Node.js CLIs, and MCP servers for everyday productivity
- Led code review and mentoring on the team, ran intern hiring interviews, and created and ran hiring assignments and intern practice assignments
React, TypeScript, Next.js, Node.js, Kubernetes, pnpm, Turborepo
See the public packagesTriple
2019.05 to 2020.08Frontend Engineer
Built a travel web service that runs from discovery through booking and payment
- Built and operated global city search and flight ticket sales
- Migrated the payment service and shared components from JavaScript to TypeScript
- Built a one-to-one chat service between sellers and customers
React, TypeScript, Next.js, Koa, Docker, Amazon ECS
Kakao
2016.09 to 2019.05Software Engineer
Built and operated the frontend and server of Kakao Together, a donation platform
- Migrated a legacy AngularJS application to Angular
- Built admin tools and operated the Ruby on Rails server alongside them
Angular, TypeScript, Ruby on Rails, MySQL, Redis
Samsung SDS
2014.03 to 2016.06Software Engineer
Built global healthcare solutions and proofs of concept for new technology
- Built an EHR solution for overseas hospitals and a nursing ward service
- Built iOS beacon based indoor navigation and a blockchain PoC for a financial client
- Validated data consistency and integrity with Python
Delphi, Oracle DB, Spring, JavaScript, Python
Publications
- Author
Frontend Performance Optimization Deep Dive
From the network to the browser and frameworks, the principles behind performance
Publisher page (Korean) - Co-author
npm Deep Dive
Module systems, package management, and the JavaScript ecosystem
Publisher page (Korean) - Author
Modern React Deep Dive
How React works and how to build web applications with it
Publisher page (Korean) - Translator
React Interview Guide
React knowledge through questions and answers
Publisher page (Korean)
Who Learns the Judgment That Remains An essay on developers, judgment, and learning in the age of AI. Working title, in progress (Korean).
Node.js Deep Dive A technical book on how Node.js works inside, from V8 and libuv to module loaders, memory, networking, and production environments. Working title, in progress (Korean).
Open source
- Developer tool
@yceffort/coldpath
A Rust CLI that traces JavaScript bundle bytes back to their original sources with source maps and V8 coverage. It separates code that runs on load from code that runs only on interaction, and produces bundle treemaps and pull request comparisons. Analysis runs offline, without Node.js or a browser.
- Fork and extension
@yceffort/number-flow
A fork of barvian/number-flow that makes its number animations work in older browsers and webviews. It keeps the original API, adds a fallback engine built on requestAnimationFrame, and was verified on real legacy browsers.
- Webview debugging
@yceffort/storage-inspector
A Lit web component for inspecting and editing localStorage and sessionStorage inside a webview. Each key gets a description and type from a schema, and values are validated as you edit them.
- Developer tool
@yceffort/rust-markdownlint
A Markdown linter written in Rust that aims to be compatible with markdownlint-cli2. Its diagnostics and auto-fixes were checked against the original tool, and it runs on the repositories I maintain.
- macOS app
yc.clipboard
A macOS menu bar app for searching and reusing your clipboard history, including text, images, and files. It supports pinning, previews, and pasting back into the previous app.
Beyond work
- 2024
Talk at DAN24
Spoke about optimizing the bundle size of web services.
- 2021.01 to 2021.12
SSAFY mentor
Supported young developers at the Samsung Software Academy For Youth by answering programming questions and writing columns.
- 2018 to present
Tech blog yceffort.kr
I build and run this blog myself, and write about framework internals, performance and operations, developer tools, and working with AI.
- 2016.03 to present
Board member, JUMP (nonprofit)
I help with work automation on Google Cloud Platform and with programming education.
Education
- 2018.03 to 2020.02
KAIST
M.S., Graduate School of Management of Technology
Highest Honors, GPA 4.23 / 4.3
- 2007.03 to 2014.02
Dongguk University
B.A. in International Trade, double major in English Interpretation and Translation