Résumé · Frontend Engineer

김선
4년차 프론트엔드 개발자

GitHub @LunaSeonKim lte08098@gmail.com 강남대학교 소프트웨어전공 · 2023 졸업
3년 8개월리빗(Livit) 연속 재직
2위주력 제품 기여 (9명 중)
81%랜딩 사이트 단독 운영

01소개

기후테크 스타트업 리빗(Livit)에서 3년 8개월간 기업용 탄소회계 SaaS Tansolution을 만들어온 프론트엔드 개발자입니다. React·TypeScript로 고객사 담당자가 매일 쓰는 화면을, 기획·구축부터 대기업 고객 커스터마이징까지 맡았습니다.

02경력

리빗 (Livit) — 프론트엔드 개발자

2022.12 — 재직 중 기후테크 · 탄소회계 SaaS
  • Tansolution (기업용 탄소회계 플랫폼, 2023.04~2026.05) — 고객사 담당자가 사용하는 웹 서비스(React)와 서버 일부 담당. 배출량 등록·조회, MACC·SBTi 등 도메인 특화 대시보드, 보고서 시스템(7종·PDF 출력), OCR 증빙 처리(수기 입력 → 확인 방식으로 전환), 협력사(Scope 3) 관리, MFA 인증, 제품 영문화 등 핵심 기능 개발. 전체 기여자 9명 중 커밋 기준 2위 3,883 commits
  • LCA 솔루션 (전과정평가, 2026.04~) — 스프레드시트형 편집 그리드, 평가계수 관리·엑셀 다운로드, 결과 시각화(트리/표/차트). Vitest·MSW 단위 테스트와 ADR 문서화 병행 243 commits
  • iM뱅크 프로젝트 (2025.09~2026.04) — 은행의 기업 고객용 ESG 간이진단 웹(모바일·데스크톱 분기). 조건부 문항 분기와 이어하기, 휴대폰 본인인증, 기프티쇼 API 리워드, PDF 리포트, 실기기(iOS·Android·삼성 브라우저) 대응까지 사용자 플로우 전반. 커밋 기준 2위 기여자 · 배포 후 누적 이용 기업 약 800곳 329 commits
  • 회사 랜딩 사이트 (2024.10~) — Next.js App Router + 한/영 i18n 사이트 단독 구축·운영 (커밋 기여율 약 81%). SEO/OG 메타, 콘택트 폼 안티봇(허니팟) 적용

그 외 경험

  • Tanso기업·지자체 도입 B2B2C 챌린지 서비스. 지도 기반 이동 경로 기록(도보·차량·해외 출장)을 탄소 감축량으로 연결 · 344 커밋
  • 광명시 프로젝트Next.js + GraphQL 웹 단기 구축, 메인 개발자 · 68 커밋
  • E2E 테스트 자동화Playwright 기반 배출량 등록 시나리오 자동 테스트 · 56 커밋
  • 서비스 기획 참여기능정의서·회원가입 프로세스·DB 모델링 작성 (2022.12~2023.04)

03기술 스택

언어
TypeScriptJavaScript
프론트엔드
ReactNext.js (App Router · i18n)ViteRedux ToolkitApollo Client (GraphQL)React Hook Form
UI
MUIRadix UITailwind CSSTanStack TableSCSSGSAP (ScrollTrigger)
시각화
EChartsChart.jsApexCharts
테스트
Playwright (E2E)VitestTesting LibraryMSW
AI 활용
Claude CodeCursor
기타
GraphQL CodegenExcelJSFirebase FCMJWT · MFA 인증AWS S3 업로드지도 API

본 이력서의 프로젝트·기여 수치는 GitHub 커밋 기록(TEAM-Livit 조직 25개 리포지토리 · 80개 브랜치 전수 조사)에 근거하며, 서비스 이용 기업 수는 운영 데이터 기준입니다.

Technical Career History

기술경력서

김선 · 프론트엔드 개발자 (4년차) · GitHub @LunaSeonKim

근거 기반아래 작업 내역과 커밋 수치는 실제 GitHub 커밋 기록(TEAM-Livit 조직, 총 5,050 커밋 — 본인 계정 2개 합산)에 근거하며, 서비스 이용 기업 수는 운영 데이터 기준입니다.

Tansolution — 기업용 탄소회계 SaaS 플랫폼

기업의 온실가스 배출량을 산정·관리·보고하는 B2B SaaS. 기획 단계부터 참여.

기간 기획 2022.12 – 2023.04 · 개발 2023.04 – 2026.05 역할 프론트엔드(고객사 담당자용 웹) + 서버 일부 기여 3,883 커밋 · 9명 중 2위

주요 작업

제품 기능

  • 배출량 관리 핵심 화면 — 배출원 등록 폼과 목록·조건별 필터링 개발. 담당자가 한 번에 수십 건을 입력하는 상황을 위해 제출 큐를 두어 연속 저장 시 유실·중복을 막음
  • 대시보드·데이터 시각화 — 연도별 배출량과 지분율 반영 계산(equity ratio)에 더해 MACC(한계저감비용), SBTi 감축목표, 감축 시나리오 시뮬레이션 등 도메인 특화 차트 구현. 차트–테이블 하이라이트를 연동해 숫자에서 원인으로 파고드는 탐색 흐름 구성
  • OCR 증빙 문서 처리 UI — 월 수십 건의 배출량 데이터를 증빙 문서와 대조해 수기 입력하던 작업을, 인식 결과를 문서 옆에 띄우고 썸네일이 검토 항목에 맞춰 자동 줌·이동하도록 만들어 '입력'에서 '확인'으로 전환
  • 보고서 시스템 — 배출량 기본 보고서를 포함해 사회 부문·안전보건·건설·에너지·SBTi 등 7종 개발. 인쇄 전용 레이아웃으로 PDF 출력까지 지원하고 국문·영문 양쪽 대응

확장 · 운영

  • 제품 영문화(i18n) — 해외 고객 대응을 위해 2024.12부터 제품 전반을 영문화. 로그인·배출량 등록·보고서·대시보드에서 초대·MFA 이메일 템플릿까지 확장했고, 배출계수 목록은 한글·영문 우선순위를 반영한 커스텀 정렬로 처리
  • 협력사·조직 관리 — Scope 3(공급망) 배출량 수집을 위한 협력사 등록·데이터 요청 기능. 법인·사업자등록번호 유효성 검사와 요청 메일 분기를 붙이고, 조직 계층은 트리 테이블로 다룸
  • 인증·보안 — 이메일 기반 다중 인증(MFA) 구현: 토큰 발급·검증, 시도 횟수 제한, 만료 토큰 처리까지. 관련 메일 템플릿을 국문·영문으로 대응
  • 성능·안정성 — 배출량 목록 무한 스크롤, 라우트 단위 lazy loading과 청크 로드 실패 시 재시도(retryLazy), 연료 단위 변경의 낙관적 업데이트, ErrorBoundary 도입

기획 · 고객 대응 · 서버

  • 초기 기획 참여 — 개발 착수 전(2022.12~2023.04) 기능정의서, 회원가입 프로세스 레이아웃, 기능명세서, DB 모델링 등 기획 산출물 작성에 참여
  • 대기업 고객 대응 — 삼성·DRB 등 고객사별 요구사항 반영 및 커스터마이징 (커밋 이력 기준)
  • 서버 사이드 — server/src(TypeScript) 수정 다수, API와 화면을 오가며 기능 단위로 완결성 있게 개발. 모노레포 구조로의 서버 리팩터링 참여

ReactJavaScript / TypeScriptMUIRedux ToolkitApollo ClientApexCharts

LCA-Project — 전과정평가(LCA) 솔루션

제품 전과정평가(Life Cycle Assessment) 신규 솔루션. 최신 스택으로 구축하며 테스트·문서화 문화까지 함께 조성.

기간 2026.04 – 진행 중 역할 프론트엔드 + 서버 API 일부 기여 243 커밋

주요 작업

  • 스프레드시트형 편집 그리드(sheet-grid) — 셀 편집 모드 전환 시 키보드 제어권 복구, IME(한글 입력)·Space·Delete 키 진입 처리 등 정교한 입력 UX
  • 평가계수 관리 — 흐름-DB 연결 검수 드로어, 편집/진행률 훅, 고객사(금호) 양식 xlsx 다운로드 + 진행률 표시
  • 분석 결과 화면 — GTG 트리 테이블(커넥터·sticky 스크롤·정렬), 결과 트리/표/차트 통합 뷰. 트리 통과선 렌더링을 TreeGuideCell로 공용화
  • 디자인 시스템 구축 — Figma 디자인을 UI 프리미티브 10종(button·chip·combobox·Field 등)과 다이얼로그·알림 시스템으로 코드화. 타이포그래피·형태 토큰을 파일로 분리해 스케일 체계를 세우고, chip은 variant/tone/size 3축으로 설계해 조합만으로 쓰이게 함
  • 품질·문서화 — Vitest + Testing Library + MSW 단위 테스트와 실행 리포트. ADR로 아키텍처 결정을 남기고(feature folder 패턴 채택 등), 산정 로직 원천 분석·작업 로그를 문서로 남겨 인수인계 가능한 상태 유지

TypeScriptReactViteTailwind CSSRadix UITanStack TableEChartsGraphQL CodegenExcelJSreact-virtualsonnerVitestMSW

iM뱅크 프로젝트 — 금융권 ESG 서비스

은행의 기업 고객이 ESG 간이진단을 받고 리포트와 리워드까지 받는 웹 서비스. 모바일용·데스크톱용 화면을 각각 두고 접속 기기에 따라 분기하며, 기업당 담당자 1명이 참여합니다.

기간 2025.09 – 2026.04 역할 프론트엔드 기여 329 커밋 · 4명 중 2위 운영 배포 후 누적 이용 기업 약 800곳 (기업당 담당자 1명 · 2026.08 기준)

주요 작업

  • ESG 간이진단(Quick Check) — 문항 응답·저장 플로우 전반. 앞선 답변에 따라 뒤 문항을 걸러내는 조건부 분기와 자동 응답 처리, 잠긴 챕터 접근 차단, 진행률 바 단계 표시
  • 중단 지점 이어하기 — 세션 스토리지에 진행 상태를 남겨 재방문 시 이어하기 모달을 띄우고, 이탈·뒤로가기·비정상 접근은 안내 모달과 리다이렉트로 처리
  • 휴대폰 본인인증 — 인증 타이머와 코드 입력 자동 포커스, 전화번호에 하이픈을 자동 삽입하면서도 커서 위치가 튀지 않도록 보정. 리워드 선택→인증 화면은 카드 전환 애니메이션으로 연결
  • 리워드·기프티쇼 연동 — Giftishow API로 쿠폰 발급·상품 관리·잔액 조회를 붙이고, 리포트 완료 시 리워드 모달과 쿠폰 자동 발송 처리. 리워드가 기업당 1명에게만 나가는 구조라 수령 자격 확인과 진입 조건 분기를 함께 설계
  • PDF 리포트 — 표지·로고를 포함한 ESG 분석 리포트 컴포넌트 개발, iOS·Android 각각의 다운로드 방식 분기 처리
  • 기기별 대응 — 접속 기기에 따라 진입 화면을 나누고 데스크톱 전용 레이아웃을 별도 구성. 삼성 브라우저의 뒤로가기 동작 차이를 분기 처리하고, 반응형 훅 기반으로 스크롤·모달·플로팅 버튼 동작과 모바일 호버 스타일을 보정
  • 인증·세션 — JWT + GraphQL 인증 구현. 토큰 저장소를 localStorage에서 sessionStorage로 옮기고 AuthGuard·useAuth 훅으로 인증 상태를 일원화, 임시 사용자(isTemp) 분기 처리
  • 전역 에러·운영 — GraphQL 에러를 한곳에서 받는 ApolloErrorSnackbar, 청크 로드 실패 시 재시도(retryLazy), Google Analytics 페이지뷰 추적
  • 도메인 로직 — 배출량 계산 보정(도시가스 LPG→LNG 계수 수정), 온실가스 계산기 화면, 사업자등록번호 검증 UI, 캐릭터 모달 등 인터랙션

ReactMUIRedux ToolkitApollo ClientAuth0 / JWTreact-pdf

Tanso — 탄소 절감 챌린지 서비스 (B2B2C)

기업·지자체가 도입하고 소속 직원이 직접 참여하는 탄소 절감 챌린지 서비스. 직원의 출퇴근·업무 이동을 기록해 탄소 감축량으로 환산합니다. 참여자 화면(client)과 관리자 화면(admin)으로 나뉩니다.

기간 기획 2022.12 – 2023.04 · 개발 2025.03 – 2026.04 역할 프론트엔드 기여 344 커밋

주요 작업

  • 지도 기반 이동 경로 기록 — 장소 검색과 최근 검색 기록, 자주 가는 장소·즐겨찾기로 출발지와 목적지를 잡고, 경유지를 넣고 빼면 지도 위 경로가 다시 그려지도록 구성. 경로 전체가 한 화면에 담기도록 지도 중심과 축척을 자동 조정(fitBounds)하고, 바텀시트와 지도를 함께 다루는 모바일 인터랙션 설계
  • 이동수단 3종 통합 — 생성 방식이 제각각인 도보·차량·해외 출장을 하나의 기록 흐름으로 통합. 차량은 등록 차량·차종을 골라 경로를 만들고, 해외 출장은 공항 목록으로 처리. 도보 경로는 별도 최적화 작업 진행
  • 기록을 배출량 데이터로 연결 — 그린 경로를 일별 이동 이력(TransportHistories)으로 변환해 날짜별로 조회·수정하게 하고, 이동 거리와 수단이 탄소 감축량 산정으로 이어지도록 단위 환산 로직을 바로잡음
  • 챌린지 — 챌린지 생성 폼(날짜 검증·에러 처리), 챌린지 캘린더와 D-day 표시, 일별 챌린지·챌린지 피드 화면
  • 공통 컴포넌트·테마 — React Hook Form과 결합한 날짜 입력(RHFDate·RHFDatePicker), 커스텀 데이트 피커·기간 선택기·날짜 슬라이더 제작. 타이포그래피 variant와 버튼·체크박스·입력 테마 오버라이드 정의, 스낵바 라이브러리 전환
  • 인증 흐름 — Apollo Client 레벨 토큰 제거/갱신(refreshToken), 로그아웃 시 상태 초기화
  • 알림 — Firebase FCM 푸시 연동과 알림 권한 설정 화면, 이메일 템플릿
  • 초기 기획 참여 — 개발 착수 전(2022.12~2023.04) 관리자 기능정의서, 참여자 정보·후기 관리 화면 기획 산출물 작성에 참여

ReactMUIApollo Client지도 APIFirebase FCMRedux Toolkit

회사 랜딩 사이트 (국문 / 영문)

국문 2024.10 – 2026.04 · 81 커밋 · 기여율 약 81% (사실상 단독 운영) 영문 2023.08 – 2024.02 · 42 커밋

주요 작업

  • i18n 구축 — Next.js App Router + [locale] 라우팅으로 한/영 사이트 구축
  • 페이지 전반 — 홈·회사소개·제품·인사이트·뉴스·콘택트 페이지 구축. 회사소개는 GSAP(ScrollTrigger·ScrollSmoother·SplitText)으로 sticky 풀페이지 스크롤과 텍스트 분할 애니메이션 구성
  • 반응형 — useResponsive 훅을 만들어 헤더·푸터부터 각 페이지까지 모바일 대응, 로딩 컴포넌트·토스트 정비
  • SEO — 파비콘, 메타데이터, Open Graph 이미지·URL 처리
  • 안티봇 — 콘택트 폼 허니팟 + 타임스탬프 검증 구현

Next.js (App Router)TypeScriptTailwind CSSRadix UIGSAPnext-intlSCSSMUI (영문)

광명시 프로젝트

기간 2024.11 – 2024.12 (단기) 역할 메인 개발자 기여 68 커밋

주요 작업

  • 단기 구축 — Next.js + GraphQL 웹 서비스를 한 달여 만에 구축: 인증(privateRoute), 게시물·이력 관리, 약관·개인정보 페이지
  • 계정·권한 — 계정 정보 수정과 비밀번호 변경, 회원 목록과 사용자 권한 관리 화면, 탈퇴 처리
  • 컴포넌트 — 정렬·페이지네이션을 갖춘 커스텀 테이블, 폼·모달·토스트, 파일 업로드(S3 createPresignedPost)
  • 서버 — GraphQL 리졸버 일부 직접 작성(auth, history, post)과 예외 처리

Next.jsTypeScriptGraphQLSCSSAWS S3

E2E 테스트 자동화 (Tester)

기간 2024.12 – 2025.11 기여 56 커밋

주요 작업

  • 시나리오 자동화 — Playwright 기반 Tansolution 주요 플로우 커버: 배출량 등록(Scope 3 포함), 목록 필터·등록 현황 검증, 파일 업로드·다운로드, 회원가입·비밀번호 재설정, 계정 전환 및 국가 전환
  • 테스트 데이터 설계 — 국가별·IPCC 계수별로 테스트 데이터를 구조화하고, 제품 버전에 맞춰 테스트 파일을 디렉터리로 분리해 회귀 테스트 관리
  • 안정화 — 빈 데이터 상태 예외 처리, 다운로드 이벤트 대기 방식 개선, 타임아웃 튜닝(120초) 등 플레이키 테스트 제거
  • 실험 — MCP 연동 테스트(mcp_tester 브랜치)

TypeScriptPlaywright

종합 역량 요약

핵심 도메인탄소회계·ESG (Scope 1~3 배출량 산정, 공급망 데이터 수집, MACC·SBTi 감축 시나리오, LCA, 금융권 ESG) — 3년 이상 도메인 지식 축적
주력React/Next.js 기반 B2B 실무자용 웹·대시보드, 폼·테이블·차트 중심의 데이터 집약적 UI
기획 산출물 작성, 디자인 시스템 구축, MFA 인증·보안, 랜딩 사이트 단독 운영, 서버 GraphQL API 작성, E2E 자동화까지 커버
일하는 방식단위 테스트(Vitest·MSW)와 ADR 문서화 병행, 고객사 커스터마이징 대응 경험. Claude Code·Cursor 등 AI 협업 개발 도구를 실무 워크플로에 적극 활용

Portfolio · Frontend Engineer

탄소회계라는 복잡한 도메인을,
폼·테이블·차트
이해 가능하게 만듭니다

김선 — 기후테크 도메인 4년차 프론트엔드 개발자. 3년간 한 제품의 초기 구축부터 대기업 고객 대응까지 겪었습니다. 화면만 만들지 않고 서버 API를 직접 작성하고, E2E 테스트를 자동화하고, ADR로 결정을 기록합니다.

3y 8m리빗 연속 재직
2/9주력 제품 기여 순위
81%랜딩 사이트 기여율
~800iM뱅크 서비스 이용 기업

github.com/LunaSeonKim lte08098@gmail.com

01

대표 프로젝트

작업 내역과 커밋 수치는 GitHub 커밋 기록에서 검증된 것만 담았고, 서비스 이용 기업 수는 운영 데이터 기준입니다.

3,883 COMMITS · TOP 2/9

Tansolution — 기업용 탄소회계 SaaS

2023.04 – 2026.05 · React · MUI · Apollo/GraphQL · ApexCharts

기업 온실가스 배출량 산정·보고 플랫폼에서, 고객사 담당자가 실제 업무에 쓰는 화면을 3년간 개발했습니다.

  • 기획 단계부터 참여 — 개발 착수 전 기능정의서·회원가입 프로세스·DB 모델링 작성에 참여한 뒤, 같은 제품의 프론트엔드를 맡아 기획–구현을 잇는 경험
  • 배출량 등록 폼과 목록·필터, 지분율 반영 계산 표시
  • 도메인 특화 대시보드 — MACC(한계저감비용) 차트, SBTi 감축목표 대시보드, 감축 시나리오 시뮬레이션 등 탄소회계 고유의 시각화 구현. 차트–테이블 하이라이트 연동으로 탐색형 UX 구성
  • OCR 증빙 문서 검증 UI — 담당자가 월 수십 건의 데이터를 증빙과 대조해 일일이 입력하던 작업을, 인식 결과를 문서 옆에 띄우고 썸네일이 검토 항목에 맞춰 자동 줌·이동하도록 만들어 '입력'에서 '확인'으로 전환
  • 삼성·DRB 등 고객사별 커스터마이징 대응 — B2B 제품에서 "고객마다 다른 요구"를 코드 구조로 흡수하는 경험
  • 프론트와 서버(TypeScript)를 오가며 기능 단위로 완결성 있게 개발
243 COMMITS · 진행 중

LCA 솔루션 — 전과정평가 플랫폼

2026.04 – · TypeScript · Vite · Tailwind · Radix · TanStack Table · ECharts · Vitest · MSW

신규 제품을 최신 스택으로 구축하고 있습니다. 아래는 기술적으로 가장 도전적인 작업들입니다.

  • 스프레드시트형 편집 그리드 — 셀 편집 모드 전환 시 키보드 제어권 복구, 한글 IME 조합·Space·Delete 키 진입 처리. 엑셀에 익숙한 실무자가 위화감 없이 쓰는 그리드
  • 평가계수 관리 — 흐름-DB 연결을 검수하는 드로어 UI, 고객사 양식 그대로의 xlsx 다운로드(진행률 표시)
  • GTG 트리 테이블 — 트리 커넥터·sticky 스크롤·정렬이 조합된 복합 테이블
  • 디자인 시스템 구축 — Figma 디자인을 코드로 옮겨 UI 프리미티브 세트(button·tabs·tooltip·badge·chip·toggle·combobox·Field) 신설, ConfirmDialog·토스트/스낵바 알림 시스템 구축, 타이포그래피·형태 토큰 분리(typography.css / primitives.css)
  • Vitest+MSW 단위 테스트와 테스트 리포트, ADR(feature folder 패턴 채택 등) 문서화
329 COMMITS · TOP 2/4

iM뱅크 프로젝트 — 금융권 ESG 서비스

2025.09 – 2026.04 · React · MUI · Apollo/GraphQL · JWT · Giftishow API

은행의 기업 고객이 간이진단 → 리포트 → 리워드까지 끊기지 않고 도달해야 하는 서비스. 모바일과 데스크톱 화면을 따로 만들고 접속 기기에 따라 분기했습니다. 배포 후 지금까지 약 800개 기업이 이용했습니다. 사내 실무자용 화면만 만들다가, 각자 다른 기기로 한 번씩 들어오는 외부 사용자를 상대한 경험입니다.

  • ESG 간이진단 — 앞선 답변에 따라 뒤 문항을 걸러내는 조건부 분기와 자동 응답 처리, 잠긴 챕터 접근 차단, 진행률 단계 표시
  • 이탈 방지와 이어하기 — 세션 스토리지로 중단 지점을 기억해 재방문 시 이어하기 모달을 띄우고, 이탈·뒤로가기·비정상 접근은 안내 모달과 리다이렉트로 처리
  • 기기별 대응 — 기기별 진입 화면 분기와 데스크톱 전용 레이아웃, 삼성 브라우저의 뒤로가기 동작 차이 분기, iOS·Android PDF 다운로드 방식 분기. 실기기에 올려야 드러나는 문제들 대응
  • 본인인증 디테일 — 전화번호에 하이픈이 자동으로 붙어도 커서 위치가 튀지 않도록 보정, 인증 타이머와 코드 입력 자동 포커스
  • 기프티쇼 API 리워드 — 쿠폰 발급·상품 관리·잔액 조회 연동, 리포트 완료 시 자동 발송. 리워드가 기업당 1명에게만 나가는 구조라 수령 자격 확인을 함께 처리
  • 배출량 계산 계수 보정(LPG→LNG) — 도메인 지식이 코드 정확성으로 이어진 사례
344 COMMITS · B2B2C

Tanso — 탄소 절감 챌린지 서비스

2025.03 – 2026.04 · React · MUI · Apollo/GraphQL · 지도 API · Firebase FCM

기업·지자체가 도입하면 소속 직원이 참여하는 챌린지 서비스에서, 직원의 이동을 지도에 기록해 탄소 감축량으로 환산하는 흐름을 만들었습니다.

  • 지도 기반 이동 경로 기록 — 장소 검색·최근 검색·즐겨찾기로 출발지와 목적지를 잡고, 경유지를 넣고 빼면 경로가 다시 그려짐. 경로 전체가 한 화면에 담기도록 지도 중심·축척을 자동 조정(fitBounds)
  • 이동수단 3종 통합 — 도보·차량·해외 출장. 차량은 등록 차량·차종을 골라 경로를 만들고, 해외는 공항 목록으로 처리. 도보 경로는 별도 최적화 작업 진행
  • 지도가 곧 입력 장치 — 그린 경로가 일별 이동 이력으로 변환돼 거리·수단이 그대로 감축량 산정의 입력이 됨. 계산 단위 환산 오류를 잡아낸 것도 이 흐름을 알고 있었기에 가능
  • 바텀시트와 지도를 함께 다루는 모바일 인터랙션, FCM 푸시·알림 권한 설정
기여율 81% · 단독 운영

회사 랜딩 사이트 — 단독 구축·운영

2024.10 – · Next.js App Router · next-intl · Tailwind · Radix · GSAP

회사 공식 사이트를 한/영 두 벌로 혼자 구축하고, 2년 가까이 콘텐츠까지 직접 운영하고 있습니다.

  • [locale] 라우팅 기반 한/영 사이트를 혼자 구축하고 지속 운영
  • SEO/OG 메타·파비콘, GSAP 기반 스크롤 애니메이션과 반응형 대응
  • 콘택트 폼 스팸 차단 — 허니팟 + 타임스탬프 검증으로 봇 차단 구현
리빗 랜딩 사이트 메인 화면 — 탄소 배출 관리가 기업 경영의 일상화가 될 수 있도록
단독 구축·운영한 한/영 i18n 랜딩 사이트
02

그 외 경험

광명시 프로젝트 — 메인 개발

68 commits

Next.js+GraphQL 단기 구축, 서버 리졸버(auth/history/post)까지 직접 작성

Playwright E2E 자동화

56 commits

배출량 등록 시나리오·필터 검증 자동 테스트, 국가별 테스트 데이터 구조화

03

기술 스택

주력
TypeScriptReactNext.jsViteGraphQL (Apollo · Codegen)TailwindRadix UIMUI
시각화
EChartsChart.jsApexCharts
품질
PlaywrightVitestTesting LibraryMSW
AI 활용
Claude CodeCursor
기타
Redux ToolkitReact Hook FormTanStack TableGSAP지도 APIExcelJSFirebase FCMAWS S3
04

일하는 방식

기획부터 붙습니다

기능정의서와 회원가입 프로세스 설계에 참여한 뒤, 같은 제품의 화면을 직접 구현했습니다. 무엇을 왜 만드는지 아는 상태로 코드를 씁니다.

끝까지 만듭니다

화면에서 막히면 서버 코드를 열어 API를 고치고, 배포 후엔 E2E 테스트로 지킵니다.

기록합니다

ADR로 아키텍처 결정을 남기고, 테스트 실행 리포트를 문서화합니다. 다음 사람이 "왜 이렇게 했는지"를 코드 밖에서 찾을 수 있게 합니다.

AI와 함께 일합니다

Claude Code·Cursor 등 AI 협업 개발 도구를 실무 워크플로에 적극 활용합니다. 반복 작업과 초안은 도구에 맡기고, 설계 판단과 검증은 직접 합니다.

도메인을 팝니다

배출계수, 지분율 산정, LCA 영향범주 같은 도메인 개념을 이해하고 UI로 옮깁니다.

검증 가능성 — 본 포트폴리오의 작업 내역과 커밋 수치는 GitHub 커밋 기록으로 검증 가능하며, 서비스 이용 기업 수는 운영 데이터 기준입니다. (비공개 리포지토리로, 요청 시 상세 기여 내역 제공 가능) 회사 제품 화면은 비공개 자료라 이 공개본에서는 제외했으며, 면접 시 시연·제공 가능합니다.