사용자의 니즈를 읽고 직접 구현하는 프론트엔드 엔지니어 김수진입니다.
'세상을 더 편리하게 만들고 싶다'는 마음으로 개발자를 꿈꾸며 컴퓨터공학을 전공했습니다. 취미로 콘텐츠를 리뷰하고 분석하는 계정을 3년 넘게 운영하며 구독자분들이 좋아하는 게시물을 파악해 팔로워 8천 명을 모았습니다.
사용자의 반응을 읽어서 니즈를 이해하는 일과 그것을 직접 구현하는 일 — 이 두 가지를 동시에 할 수 있는 자리가 콘텐츠 플랫폼의 프론트엔드 엔지니어라고 생각합니다.
기술 스택
경력
크리에이터가 콘텐츠를 만들고 판매하며, 팬이 작품을 발견하고 구매·후원·참여하면서 다음 창작을 함께 이어가는 창작 플랫폼
- 2026.08
Lexical 오픈소스 기여
문제 에디터 오류 문의를 대응하던 중, iOS 자동 대문자화가 켜진 상태에서 Enter를 누르면 커서가 두 줄 밀리는 Lexical 내부 버그를 발견 (레포에 기존 이슈·PR 없음)
- iOS에서는
insertReplacementText가insertParagraph보다 먼저 발생한다는 이벤트 순서 차이를 로그로 확인해 원인 파악 - iOS에서만 커서 보정 로직을 건너뛰도록 최소한으로 수정한 뒤 테스트 작성
- 수정 영상·테스트와 함께 facebook/lexical에 PR 제출
성과 facebook/lexical v0.50.0에 머지 · 릴리즈 New Contributors 등재
- iOS에서는
- 2026.05 – 2026.07
Froala → Lexical 에디터 마이그레이션
문제 Froala 에디터를 신기능 추가와 계류된 버그 해결을 위해 Lexical로 교체. Lexical 러닝 커브 비용 발생
- 접근법 탐색·계획·구현·문제 해결 기록을 축적해 다음 작업을 가속하는 compound engineering 사용
- 6종의 인용 노드 구현 중 커스텀 노드 타입명을 Lexical 기본값과 동일하게 지정해 노드가 생성되지 않는 충돌 발생하여 모든 커스텀 노드에 고유 타입명 규칙 수립
- 앞선 작업을 기준 삼아 구분선 10종을 클래스 + 모양 값을 저장하는 노드로 설계해 기존 정렬/삭제 동작을 그대로 재현
성과 예상보다 2주 빠른 6주 만에 마이그레이션 완료, 이후 에디터 오류 발생 건수 월평균 80% 감소
- 접근법 탐색·계획·구현·문제 해결 기록을 축적해 다음 작업을 가속하는 compound engineering 사용
- 2026.04
댓글 모달 뒤로가기 UX 개선 & 백버튼 하이재킹 정책 대응
문제 모바일 웹에서 댓글 모달을 뒤로가기로 닫으면 모달만 닫히지 않고 읽던 포스트까지 지나쳐 이전 페이지로 이탈. 모달은 히스토리에 기록이 없어 브라우저상 정상 동작이지만 사용자에겐 화면 이탈로 느껴짐
- 모달을 열 때 history에 항목을 추가해 뒤로가기가 모달만 닫도록 처리
- GA4로 "튕김(pogo)" 지표를 직접 정의(15초 이상 읽던 포스트에서 이탈 후 15초 내 복귀)해 효과 측정
성과 3시간 이동평균 기준 전 시간대 튕김 감소, 피크시간(22시) 튕김률 약 19% 감소
금융정보 기관과 개인투자자에게 금융 관련 뉴스, 실시간 금융 데이터, 분석 프로그램을 전용 회선과 인터넷을 통해 전달하는 기업
- 2025.07
인포맥스 단말기 현재가 화면 성능 개선
문제 주식 장 초반, 초당 수천 건의 실시간 데이터 유입으로 CPU 사용량 급상승 및 메모리 누수 발생, 단말기 사용 중 화면 지연 문제 빈번
- react-virtualized를 사용하여 보이는 영역만 렌더링 되도록 가상화 처리
- 실시간 데이터를 useRef + throttle 방식으로 Batching 처리하여 렌더링 최적화
- WebWorker로 데이터 연산 작업을 Worker에서 처리하여 메인 스레드 부하 감소
성과 CPU 사용량 약 50% 절감, 메모리 누수 해소
- 2025.04 – 09
금융솔루션 – ICAMS 프로젝트 (전담)
- Atomic Design + FSD Architecture 도입하여 컴포넌트 구조 체계화
- 엑셀처럼 resize, cell select(row, col 전체 선택 가능)이 가능한 그리드 제작
- 재귀 기반 Infinite Accordion 컴포넌트 구현, 접힘 상태에 따른 그리드 데이터 동적 처리
- 인턴으로서 프로젝트 메인 개발자로 배정되어 문제 상황을 파악하고 회의 제안
- 데이터 팀과의 의사소통 비용을 해결하기 위해 Storybook으로 UI/인터랙션 테스트 문서화
- 기획에서 누락된 UI 동작과 API 요구사항을 초기에 확정시켜 디자인 수정 건수를 감소시키고 개발 속도 향상
- 2025.02 – 04
스마일게이트 GMM/GMK ASP 개발 (PC/Mobile 개발)
- 구조는 같고 데이터만 다른 8개 페이지에 대응하기 위해, 공통 맵핑 로직을 Cursor를 사용해 함수 단위로 분리해서 자동화하여 작업 시간을 2시간에서 20분으로 단축
- 2024.10 – 2025.01
Global Market Monitor 프로젝트 + 리팩토링
- bitBucket과 사내메신저(두레이)를 연동하여 PR 알림 자동화
- 라이브러리 대체로 번들 용량을 줄여 LightHouse 점수 63점에서 93점으로 개선
- agGrid를 react-virtualized로 변경, font 최적화 진행
- [한화투자증권] 기존 서비스 개편 사항 작업
- [메리츠] 파라미터 기반 다크모드 구조 설계/적용, 동일 구조를 [한화] 프로젝트에 제안·적용해 코드 재활용이 가능하도록 개선하여 유지보수성과 확장성 강화
- 기존의 책임이 불분명한 Container/Presenter 구조를 Template, useFetches, useProcess로 분리하여 코드 가독성 개선
Trouble Shooting
문제 초당 10회 이상 발생하는 동일 조회 요청으로 인한 서버 리소스 낭비
해결 Redis로 서버사이드에서 캐싱 처리하여 중복 데이터 요청 방지 → 하루 10,000건 들어오던 서버 요청 800건으로 감소 (약 92% 감소)
수상
학력
- 2019.03 – 2024.02 숭실대학교 IT대학 글로벌미디어학부 · 컴퓨터학부 복수전공 학사
활동
- 2022.08 – 2023.09 GDSC Soongsil 2기 Web/Mobile
- 2023.09 – 2023.12 Kusitms 28기 Web FrontEnd
- 2023.11 – 2024.08 GDSC Soongsil 3기 Core member
- 2024.07 – 2024.08 DND 11기 FrontEnd Developer