김한서

김한서

Software Engineer

추상적인 가치를 실질적인 경험으로 전환하는 과정에 흥미를 느껴 개발 공부를 시작했습니다. AI 시대의 개발자로서, 사람만이 가진 맥락을 기술로 효과적으로 전환하는 데 집중합니다. 따라서 특정 스택에 얽매이지 않고, 더 나은 가치를 창출할 수 있는 방법을 끊임없이 탐구하고자 합니다.

Experience

비바리퍼블리카(토스)

Design Platform Team — Frontend Engineer Assistant

2025. 09 — 2026. 03
  • 전사 디자인시스템 TDS 이슈 대응 및 유지보수 컴포넌트 구현체 분석을 통한 버그 수정 및 버전별 마이그레이션 안내 대응, 마이그레이션 자동화 유틸 작성
  • 사내 디자인 툴 데우스의 codegen 안정성 개선 버전별로 파편화되고 명령형으로 작성되어 유지보수가 어려웠던 코드 컴포넌트를 DST 속성 기준으로 단일화하도록 리팩토링데우스 패널에서 선택된 DST 속성이 코드 컴포넌트에 그대로 반영되도록 개선하여 데우스 화면 ↔ 코드 간 간극 해소
  • 패키지 업데이트 QA 프로세스 자동화 컴포넌트 props를 순회하여 QA용 케이스 한판을 자동 생성하는 데우스 플러그인 제작. 버튼 한 번으로 컴포넌트 node를 일괄 교체할 수 있도록 Replacer 플러그인을 추가로 제작하여, QA 기간 1~2일 → 10~20분으로 단축
  • 문서화 체계 구축 및 내부 도구 개선 각 컴포넌트의 llm.txt 생성 로직을 추가하여 LLM 기반 개발 시 디자인시스템의 맥락을 제공할 수 있도록 구성. nextra → fumadocs 마이그레이션을 통해 props table 업데이트 자동화 RN, Desktop, Mobile 등 플랫폼별 문서를 단일 페이지 내 탭 전환 방식으로 통합

Project

confeti

콘서트, 페스티벌 티켓 정보를 한눈에 볼 수 있는 웹사이트 | Frontend

ReactTypeScriptTurborepoVanilla ExtractStorybook
  • 홈 화면 캐러셀 이미지 로딩 속도가 느려 사용자의 첫 화면 진입이 지연, 유저 이탈에 영향을 줄 것이라 판단→ Chrome DevTools의 Network 탭과 Lighthouse 지표 분석 후 이미지 CDN(imgix)을 구축하고, WebP 등 용량이 작은 포맷으로 자동 변환 및 리사이징 처리LCP 6.6s → 1.5s로 약 77% 감소 (아티클 링크)
  • 번들 사이즈 분석 결과, SVG 컴포넌트가 차지하는 용량이 상당한 비중을 차지하는 것을 확인→ 기존 방식은 @svgr/cli를 활용하여, 원본 SVG 파일과 이를 변환한 React 컴포넌트 파일을 함께 관리해야 했기 때문에 파일 수가 많아지고 중복 관리 문제 발생SVG sprite의 도입을 제안하여 하나의 Icon 컴포넌트로 모든 SVG를 일괄 관리하도록 icon 시스템 체계화
  • 편집/완료 버튼을 눌렀을 때, 서버 응답을 기다리는 동안 UI 피드백 지연 발생→ MY셋리스트 페이지 편집하기 버튼 optimistic update 적용, 유저의 체감 응답 속도를 향상
  • 선언형 패러다임 기반 디자인시스템 컴포넌트 개발→ 모달을 열고 닫는 로직/상태를 캡슐화하여 일괄 관리하기 위한 overlay provider 생성→ 모달을 트리거하는 코드와 모달 컴포넌트가 가깝게 위치할 수 있어 선언적 사용 가능, DX 향상

모립 (morib)

생산성 향상 웹 애플리케이션 | Frontend

ReactTypeScriptFramer MotionTailwindElectron
  • 사용자가 할일을 생성하고 관리하며, 타이머를 통해 서로의 작업 집중 시간을 공유할 수 있는 생산성 향상 솔루션
  • 1년 가까이 지속된 프로젝트에 참여하며 기존 히스토리를 파악 후 개선 및 유지보수 경험
  • 번들 분석 후 많은 용량을 차지하던 로띠 파일, 커스텀 캘린더 컴포넌트의 번들이 초기 로딩에 불필요하다고 판단→ 코드 스플릿팅 이후 페이지 진입 시 onMouseEnter 속성을 이용해 컴포넌트를 동적으로 import하여 초기 로딩을 단축시킴과 동시에 사용자 경험을 개선
  • 랜딩페이지 제작, Framer Motion을 활용한 섹션별 스크롤 위치 추적 기반 인터랙티브 UI 구현
  • 기존 모립 서비스 QA 작업, 레거시 코드 재설계 및 리팩토링→ 타이머 provider 영역을 축소하여 타이머 페이지의 불필요한 리렌더링 개선

Education

동국대학교

경제학과 전공 / 융합 소프트웨어 복수전공 학사

2020. 03 — 2026. 02 (수료)

Université de Lille

Exchange Student — Economics & Marketing

2023. 09 — 2024. 02

Activity

Yapp 26기 Web 파트

2025. 05 — 2025. 09
  • 기업형 벤처 창업동아리로 lettie 서비스에 참여, 우수상 수상
  • 27기 서류, 면접 평가 참여

Sopt 34, 35기 Web 파트

2024. 03 — 2025. 02
  • 웹 전반에 대한 세미나 강의를 듣고, 매주 과제를 수행한 후 여러 스터디 및 해커톤, 앱잼 등의 프로젝트에 참여
  • Server Sent Event 테크톡 발표
  • 리액트 심화 스터디에 참여하여 리액트의 동시성을 주제로 발표, useTransition을 이용한 검색 기능 최적화 실습 진행
  • 앱잼팀 confeti, morib 우수상 수상

Pirogramming 17기

2022. 08 — 2022. 09
  • git 실습 및 파이썬 기초 학습, HTML/CSS/JavaScript/Django 기초 세션 수강
  • 반려동물 동반 장소 찾기 웹서비스 FE, BE, Design, 크롤링 참여