안녕하세요, 웹 프론트엔드 개발자 이윤희입니다.

  • 단순히 빠르게 서비스를 만드는 것보다 유지보수 하기 좋은 코드를 만들기 위해 노력하고 있습니다.
  • 개발자 개인의 실수를 방지할 수 있는 시스템을 만드는 것에 관심이 많습니다.
  • 서비스를 개발할 때 사용자를 최우선으로 하는 개발을 지향합니다.
  • 동료와 함께 성장하는 것을 중요하게 생각합니다.
  • 정답을 찾기보다 우리만의 규칙을 만들어 가고 있습니다.
  • JavaScriptTypeScript
  • ReactNext.jsstyled-componentsStorybook
  • MobxReduxRedux-SagaReact-Query
  • WebpackBabel
  • ChangesetsNodeExpress.jsNest.jsTypeORM

Connect

Work Experiences

우아한형제들

period19.08.26 ~ Current
position배민공통서비스웹프론트개발팀 / FrontEnd Engineer
  • 전사 웹 프론트 라이브러리 및 도구를 개발
  • B마트 서비스/어드민 프론트 개발
  • 배민앱 시각 시스템 개발
  • 개발 경험 향상을 위한 데브옵스 개발
  • 배달의민족 주문하기 및 결제하기 웹뷰 개발/운영개선
  • 배민페이머니관리 웹뷰 개발/운영개선
  • 배달의민족 대표 B2B서비스채널인 `배민사장님광장` 웹서비스 Front-end 개발/운영개선
  • 배민사장님광장 외 B2B서비스채널(전자계약서, 업주 요청 등의 웹서비스 및 셀프서비스) 개발/운영개선
  • 배달의 민족 주문접수 앱 웹뷰 개발

배민공통서비스웹프론트개발팀

period24.02 ~ Current
positionFrontEnd/BackEnd Engineer
  • 팀 빌딩
    • 슬랙 워크플로우 생성(서포트 채널 가이드, 업무 요청, 장애 대응, 배포)
    • 슬랙 반복 스레드 생성(아침, 저녁)
    • 필수 문서 가이드 작성 및 공유(그라운드 룰, 배포 가이드, 버저닝 정책, 브랜치 전략, 릴리즈 전략, 자기소개, 담당 서비스 업무 지도, 지라 사용법, 1Pager 양식, 지라 티켓 생성 가이드)
    • 권한 관리(위키, 지라, 깃랩, 사내 어드민)
    • 정리(위키 페이지, 지라 티켓, 깃랩 레포)
    • 캘린더 생성(팀, 배포)
    • 템플릿 제공(지라 티켓, 1Pager)
    • 사내 시스템에 팀 정보 등록(우아한워크플로우, 방화벽, 젠킨스)
    • 팀 내 리소스 정리(서비스, 롤, 깃랩, 젠킨스, 센트리)
    • 위키 자동 생성
      • 타이틀 날짜 양식 다양화
      • 요일 지정 및 타겟 날짜 변경 가능
      • 생성자만 수정, 삭제 가능
    • 슬랙에서 지라 티켓 생성 시 지라에 슬랙 링크 추가
    • 팀 프로젝트 배포 가이드 수정
      • 서비스
      • 플랫폼
      • 라이브러리
    • 우아한워크플로우 베타앱 만들기
    • 온보딩 문서 만들기(readme, contribute) 및 타팀원 온보딩
    • 3개의 서비스 서버 및 인프라 통합(FEOPS, 우아한파티, 우아한스펙트럼)
    • Gitlab 파이프라인 가이드 및 파일 제공

주문/결제 파트

period23.12 ~ 24.01
position웹 프론트엔드 개발
skillTypescriptReactNext.jspnpm
description배달의민족 커머스의 주문/결제 지면 프론트 개발
  • 스프린트 구조 개선
  • 주간/반기 회고 문서 작성
  • [통합 장바구니] 인증토큰 만료시 리프레시 로직 추가
  • [통합 장바구니] Phase2 대응
  • 서버 에러 문구 대응 방법 구상

B마트 웹뷰 및 어드민

period23.08 ~ 23.12
position웹 프론트엔드 개발 및 파트 리딩
skillTypescriptReactNext.jspnpm
description배달의민족 B마트 웹뷰 및 B마트 어드민 작업
배민커머스웹프론트개발팀의 B마트 파트장으로 B마트 관련 프론트 업무 진행
  • 파트 리딩 및 커뮤니케이션 진행
  • 칸반과 스토리 기반의 업무 진행
    • 테스크로 업무 요청이 오는 경우 스토리로 변경
      • 스토리로 바뀌어야 업무가 팔로업 된 것으로 공유
    • B마트 컴포넌트를 사용하여 빠른 업무 대응 및 작업 파악 가능하게 수정
    • 라벨을 통해 웹뷰와 어드민 작업을 명확히 구분
    • 라벨을 통해 칸반의 row 구분
    • 스토리와 테스크를 구분하여 업무 파악이 용이하게 수정
    • 담당자가 지정되지 않은 경우 백로그로 분류
    • 위 사항이 안 지켜질 경우 예외로 관리
  • 과제 진행
  • 이벤트/혜택 탑바 관련 웹뷰 개선
  • B마트 장바구니 빈 화면 개선
  • B마트 반품/교환 진행 시 본인미인증인 경우 인증 모듈 추가
  • 품절 대체 상품 추천 디자인 QA
  • 어드민 메뉴/용어 변경 작업
  • 장바구니 혜택 알림 어드민 운영 개선
  • 네이버 지도 연동
  • 쿠폰메타정보 복사 기능 추가
  • 사내 디자인시스템을 활용한 개발
    • 아틀리에 블루, 블루 어드민
  • 상품 썸네일 뱃지 등록 기능 개발
  • 기획전 관리 내 `히든` 타입 추가 건 대응
  • 쿠폰 생성할 때, 사용 가능한 대상으로 특정 상품 검색 기능 개발
  • 탭 메뉴 어드민 폰트 컬러입력란 추가
  • FC 위치 사진 제공 기능 개발
  • 로컬에서 시크릿 모드 없이 개발 가능하게 변경

우아한파티

period23.06 ~ 24.01
position백엔드 개발 겸 웹 프론트엔드 개발
skillTypescriptReactNext.jsNestvanilla-extractmodule-federationpnpm / rest monorepoNest.jsTypeORMPostgresQLRedisAWS
description사내 이미지 및 피피티 템플릿 제공 툴의 프론트 및 서버 개발
사내 구성원을 위한 이미지 및 피피티 템플릿 제공
  • 인프라 세팅
    • 백엔드 프로젝트 세팅
    • 심플로이 배포 환경 세팅
    • 정적 파일을 위한 인프라 세팅
    • 사내 이미지 플랫폼 도입
    • 데이터베이스 설계 및 세팅
  • 프론트 개발
    • MVP 화면 개발
      • 메인, 즐겨찾기, 작업 중 페이지 개발
      • 유저, 피피티, 이미지 등 화면 구현 및 백엔드 기능 활용할 페이지 개발
    • 다운로드 기능
    • 사내 로그인 기능
    • 데이터 통신을 위한 레이어 개발
      • 스웨거를 기반으로 데이터 요청 파일 자동 생성
      • HTTP 클라이언트 설계
      • react-query 도입
  • 백엔드 개발
    • MVP 기능 개발
      • 유저, 피피티, 이미지, 기능 개발
      • 페이징 개발
      • 좋아요 개발
      • 카데고리 개발
      • 태그 개발
      • 검색 기능 개발
      • 정렬 기능 개발
    • local-stack을 활용하여 이미지 및 파일 업로더 개발
    • 확장자 및 파일 이미지 width, height 구하기
  • 모듈페더레이션으로 개발
    • CORS 해결을 위한 nginx 세팅

라이브러리

period23.06 ~ 23.08
position웹 프론트엔드 개발 및 툴 자동화
skillTypescriptChangesets
description사내 혹은 팀내 라이브러리를 모노레포로 관리
비즈니스에 집중하기 위해 필요한 작업들을 코어파트에서 진행
  • 라이브러리 배포 전략 및 변경점 공유
    • 라이브러리 변경점 관리를 위한 changeset 가이드라인 마련
    • 커밋 메시지를 바탕으로 변경점들을 자동 작성
    • gitlab-ci를 활용하여 changeset 자동 작성
    • main에 merge 시 변경점이 있는 패키지 자동 배포(카나리)
    • 태그 push 시 패키지 자동 배포(운영)
  • 코드 관리에 대한 리소스 저하를 위한 배포프로세스 가이드라인 마련 및 장려
    • Trunk Based Branching과 배포 프로세스 마련
  • 이미지 옵티마이저 마련
    • 임의 이미지 최적화에 사용할 수 있는 옵티마이저 개발을 통해 이미지 리소스 관리 최적화
    • 옵션 목록: width, height, format, quality, object-fit
  • 코어 웹 바이탈(CWV)을 통해 현재 프로덕트의 현황을 공유하고 발전 방향을 잡아가기 위한 템플릿을 구성

디자인시스템

period22.06 ~ 23.02
position웹 프론트엔드 개발 및 파트 리딩
skillTypescriptReactStorybooknpm workspace
description배민앱 내에서 사용되는 디자인시스템 개발
  • 컴포넌트 개발
  • 디자인옵스 디자이너들과의 커뮤니케이션을 주도
    • 디자인시스템을 만들기 위한 부수적인 커뮤니케이션 정리 및 문서 작성
  • 타 디자인시스템 및 디자인시스템 툴 팀과의 회의 운영
  • 디자인시스템 개발 일정 산정 및 리딩
    • 디자인시스템 개발 일정 및 적용 일정을 계획하고 그에 맞춰 개발을 진행함.
    • 본업이 아닌 다양한 팀의 개발자들과 협업하여 디자인시스템 컴포넌트 개발
    • 주마다 디자인시스템 개발 파트 위클리와 디자인 위클리를 통해 하나의 워킹 그룹으로서 일 할 수 있는 문화를 만듦.
  • 디자인시스템 비마트, 배민스토어 적용 일정 산정 및 리딩
  • 디자인시스템이 시스템으로서의 기준을 가질 수 있는 부분들을 만들기 위한 문서를 작성함.

FEOPS

period22.06 ~ 24.02
position백엔드 개발 및 프론트 개발과 프로젝트 리딩(전반적인 기획 및 설계)
skillTypescriptNest.jsTypeORMpostgreSQLNest MonorepoRedisAWS
description개발 경험 향상을 위한 데브옵스 개발 프로젝트
자동화 할 수 있는 것들은 자동화하여 팀 그리고 사내 업무 효율성 향상
코드의 불편한 곳을 찾아서 개선
  • 아틀라시안(지라, 위키) 연동
  • 지라 버전 자동 생성 배치 개발
  • 위키 데일리 리포트 자동 생성 배치 개발
  • 노션을 활용한 주간 회의 배치 개발
  • Gitlab MR 자동 머지 시 rebase 기능 개발
  • Gitlab MR 시 다른 MR rebase and merge 기능 개발
  • 사용자들의 불편을 제보 받아서 개선
  • 사내 서비스(지라, 위키, 슬랙, 깃랩, LDAP)와 슬랙 등 다양한 툴과의 연동
    • 사내 서비스 검색 기능을 통해 데이터 찾는 시간을 1/4 이상으로 감소
    • 지라, 위키를 테스트하기 위한 STAGE, BETA 환경 구축
    • 외부 서비스들의 상태 확인 API 개발
  • 지라, 위키, 깃랩, 슬랙 같은 사내 툴을 연동하기 위힌 Z-VPC에 인프라 설정
    • SRE, 클라우드플랫폼, 클라우드스토리지, 보안팀과 협업하여 개발 환경 구성
    • 기존 A 환경이 아닌 Z 환경에 인프라를 구성함.
    • Prod/Stage/Beta 환경 구성
  • 회사 배포 시스템인 심플로이 v6 도입
    • PM2 도입
    • 심플로이 배포를 위한 환경 변수, docker, groovy, gitlab ci 세팅
    • gitlab ci를 통해 배포 과정을 일원화
  • 프론트엔드 개발자들이 업무에 집중할 수 있도록 필요한 기능들을 개발
  • FEOPS 유지 보수성 및 성능 향상을 위해 아키텍처 개선
  • 본업이 아닌 다양한 팀의 개발자들과 협업하여 FEOPS 개발을 진행 및 리딩
    • 스프린트 운영을 통한 업무 능률 향상에서 칸반 보드 도입을 통해 스토리 기반의 업무 진행
    • 스토리포인트 도입, 지라 대시보드 활용
  • 위키 기반으로 슬랙 block-kit-builder 만들어 주는 기능 개발
  • 어드민을 위한 API 개발
  • Cloud Watch와 SNS를 통한 서버 알림 구성
  • 배치가 휴일에 돌지 않게 구성
  • 웹훅 추가 및 변경 API 개발
  • 슬랙 소켓 연결을 통해 멘션, 메시지 쇼컷, 커맨드, 워크플로우 개발
  • 깃랩의 MR을 슬랙 메시지로 전송
  • 슬랙에 기존에 있는 앱을 통하지 않고 슬랙 워크플로우로 지라 티켓 생성 및 관리하여 더 많은 기능을 제공
    • 서포트 워크플로우 등록 시 담당자에게 DM 전송하여 빠른 업무 소통 장려
    • 담당자 설정
    • 컴포넌트 추가
  • 백엔드를 여러개의 서버로 분리 및 운영
  • 깃랩 파이프라인 성공, 실패 시 슬랙 메시지 전송
  • 깃랩 approve 갯수 충족 시 rebase and merge 기능 추가.
  • FEOPS 기능 컨트롤을 통해 유저에게 자율적인 기능 선택 가능하게 지원
  • 팀의 자유로운 질문 및 커뮤니케이션, 공유 활성화를 위한 슬랙 앱 개발
  • 공공데이터를 통해 기본적인 휴일 정보 연동. 추가적으로 필요한 휴일 정보를 추가 연동
  • 코드레벨에서 FEOPS 내부의 일과 각 팀에서 원하는 일을 분리
  • 메시지 정책을 정리하여 유저들에게 필요한 정보를 적정한 시기에 전달
  • 메시지 갯수가 허용량을 초과한 경우 최적화 로직 구성
  • 중복 메시지에 따른 업무 혼란 요소 제거
  • 코드의 불안 요소 제거
    • 서버의 클래스 인스턴스는 인스턴스 변수를 가지면 요청이 중복되면 잘못된 응답을 줄 수 있기 때문에 인스턴스 변수 제거
  • 슬랙 API 제한 기능에 대한 대처 가이드라인 마련
  • 조회 API 페이징 관련 인터페이스를 통일하여 커뮤니케이션 비용 감소
  • 그룹단위의 편의 기능을 개발하여 업무 관리 포인트 통합하여 관리
  • API 데이터 조회 기능 정책 정립하여 커뮤니케이션 비용 감소
  • API 인터페이스 파일 자동 생성하여 프론트와 커뮤니케이션 비용 감소
  • 지라 관련 편의성 기능 개발로 인해 인적 리소스 감소
    • 지라 프로젝트 조회 API 개발
    • 지라 티켓 생성 API 개발
    • 지라 릴리즈 버전을 생성하게 하여 다양한 API에서 활용하게 지원
    • 개발이 끝난 업무에 대해서 지라 fix version을 자동으로 추가하여 인적 리소스를 절감
  • 일반 계정이 아닌 깃랩 어드민 API와 연동하여 사용자 편의성 증가
  • 게임 혹은 랭킹 요소를 추가해서 리뷰 문화를 장려
    • 게임 요소들 조회 정책 정립 및 최적화 작업
  • 슬랙 채널 시상 시스템을 통해 정보 및 기술 공유 활성화
  • 슬랙 그룹 멤버을 통해 담당자 변경을 자동화하여 인적 리소스를 절감
  • 위키 페이지 조회, 생성, 복사, 수정 API를 통해 위키 관련 반복 작업들을 자동화하여 인적 리소스를 절감
  • 슬랙 shortcut, 커맨드 기능을 통해 슬랙에서 기능을 손쉽게 이용
  • 웹훅의 기본 조건에 맞춰 서버의 조건을 수정하여 장애 요소 감소
  • 깃랩 버전에 맞게 로직 수정하여 생산성 향상에 기여
  • 리뷰어 자동 할당으로 인해 MR을 만들 때마다 드는 리소스 제거
  • 깃랩 이벤트에 대한 메시지가 누락되지 않게 하여 효과적인 커뮤니케이션 체계 마련
  • 웹훅 성능 개선
    • 5초에서 2초
  • 통일성 없는 네이밍 포맷 가이드라인 마련 및 리팩터링
  • FEOPS 백엔드 온보딩 및 개발 편의성 향상을 위한 가이드 문서 마련
    • 기능을 추가하고 싶은 사람을 위한 온보딩 프로세스 도입
  • 스웨거를 만들기 위한 로직 개발, 서버 배포 시 자동으로 인터페이스 파일 생성하여 프론트엔드와 소통을 원할하게 합니다.
    • MyApiResponse
  • 유저에게 전달하기 위한 포맷 관련 이슈 제거를 통해 유저에게 편의성 증대
    • slack-jsx
  • 자료들을 관리하는 방법 변경을 통해 직접 자료를 확인할때 발생 할 수 있는 요소를 제거
    • soft delete
  • 특정 팀에 관련 된 로직들 분리하여 적용 및 분리가 쉽게 구성
    • 임시값 관리를 위한 저장소 마련 및 관리
  • FEOPS 내 환경 변수 계층 만들기
  • 서버 에러 시 공통 처리 로직을 통해 빠른 에러 감지 및 대응 구조 설계
    • 서버 전체, 기능 장애 시 알람 구조 마련
    • 에러 발생 시 문제 파악을 위한 디버깅 구조 마련
    • loki, grafana, 프로메테우스
  • 개발 과정에 따른 티켓 상태 변경 자동화 기능 개발
    • 티켓 관리의 혼란을 방지하기 위한 티켓 상태에 대한 가이드라인 마련
    • 티켓 상태 자동 변경 기능을 부분적으로 막을 정책 및 기능 개발
  • 스프린트 운영을 통한 업무 능률 향상
    • 스토리포인트 도입, 지라 대시보드 활용
  • 칸반 보드 도입을 통해 스토리 기반의 업무 진행
  • 테스트 코드 추가
  • 업무 시간 내에만 알람 받게 수정
    • 근무 여부 확인 기능
  • 기능을 추가하고 싶은 사람을 위한 온보딩 프로세스 도입
    • 온보딩 문서 구체화 하기
  • 에러 발생 시 해당 요청자 확인 프로세스 도입
  • 리드미와 컨트리뷰팅 분리
  • 마크다운을 활용한 슬랙 메시지 전달 기능
  • 어드민 환경 개선
  • 비마트 파트 위클리 자동화
  • 깃랩 개인 메시지 유저별로 조회 및 동기화로 수행
  • 플랫폼 콘솔에 사용자 그룹 변경
  • 년도가 넘어가면서 지라 버전이 잘못 생성되는 이슈 대응(head-ver)
  • fe-today-i-learned 랭킹 만들기
  • 그룹 API 오류 대응
  • 슬랙 메시지 전송 동기화로 변경
  • 배민커머스웹프론트개발팀 데일리 스레드 만들기
  • 깃랩 검색 데이터에 링크 추가하기
  • 스웨거 변경 감지 봇 만들기
  • 젠킨스 배포 시 트리거 담당자 전달하기
  • 백엔드 아키텍처 재설계
  • 다양한 문서 정리
  • VPC간 통신을 위한 네트워크 설정
  • 페어코딩 마련
  • CI 빌드킷 버전 업
  • FEOPS, 스펙트럼, 우아한 파티 합칠 준비 및 문서 정리
  • 깃랩 개인 메시지 유저별로 조회 및 동기화로 수행
  • 테스트 ava에서 vitest로 변경
  • 서포트 워크플로우 강화하기 계획
  • 루트 페이지 접속 시 필요한 아이콘 대응
  • 중복 실행 알람 환경 변수 노출하기
  • 업무 중에만 슬랙 DM 보내기 로깅하기
  • In Test 상태 변경이 되는지 팔로업 하기
  • 소나큐브 연동
  • Vitest 테스트 데이터 gitlab(lcov), 소나큐브(cobertura) 연동
  • 위키 자동화 시스템 만들기
  • withCredentials 대응

커머스 백오피스 플랫폼

period22.06 ~ 22.07
position웹 프론트엔드 개발
skillTypescriptReactMobxNext
description커머스를 위한 백오피스 개발
  • TF 지원
    • 디자인 QA를 리딩하면서 오는 혼선을 통합 관리
    • 커머스백오피스플랫폼을 개발하면서 시스템의 기준을 마련

뉴 통합 결제 플랫폼

period21.10 ~ 22.06
position웹 프론트엔드 파트 리딩
skillTypescriptReactMobx
description배민페이관리 웹뷰/결제하기 웹뷰
  • 데일리 위클리 회고 성격 정리, 지라 보드 생성 및 워크플로 정리
  • 센트리 도입 및 운영에는 소스맵을 센트리에만 소스맵 적용
  • ci 구성(빌드, test, 소나큐브 업로드, 슬랙으로 ci 결과 및 테스트 소나큐브 리포트 받기, 배포)
  • 기존 1M 이상 하던 파일을 웹팩을 통한 파일 스플릿
  • 복잡한 이해관계에 의해 통일성 없는 코드를 새로운 프로젝트 구성
  • 배민페이 관리 지면 전면 개편 및 공통 모듈 재작성(2022.01.27 open)
  • 접근성 개선
  • react-query 도입을 통해 서버 상태와 프론트 상태를 분리하고 mobx 역할을 축소
  • dialog를 선언적으로 처리하여 cLick 함수 안에서 modal에 관련 된 코드를 한 곳에서 작성하여 쉽게 사용하도록 함
  • functional css 도입을 통해 생산성을 향상 시키고 styled-component의 역할을 제한적으로 허용하여 다양한 디자인을 시스템을 만들어 공통적으로 관리되고 통일성 있는 UI/UX를 제공함
  • 파편화 되어 있던 결제페이지 실행 코드를 통일하고 결제페이지 개편 및 관리 포인트 하나로 통일
  • 디자인 시스템을 위한 컴포넌트 typography 도입

배민 통합 결제 플랫폼

period21.06 ~ 22.06 (1년)
position웹 프론트엔드 파트 리딩(7월 입사 1명, 11월 입사 2명)
skillTypescriptReactMobx
description각 지면 주문하기 웹뷰 및 배민페이 관리 웹뷰
  (배민(배민/배민라이더스/배민원), 비마트, 선물하기, 가족계정, 브랜드오더, 배민쇼핑라이브, 배민페이관리 웹뷰)
사내 모든 서비스에서 같은 주문결제 경험을 제공
  • 서버 개발자만 있는 팀에서 프론트 팀을 만들고 프론트 파트를 리딩하며 개발 문화를 만들어 감
  • 문서 최신화, 정리 및 실행환경 개선
  • 린트, 프리티어 수정, 서브모듈 제거
  • 브랜치 정리 및 브랜치 전략 수정하여 다른팀 프론트와 하나에 레포에서 작업하면서도 서로 작업에서 블로커가 되지 않도록 함
  • 깃랩 플로우로 변경 및 일하는 방식을 현재팀이 중심이 되어 여러 팀이 협업할 수 있게 문서 및 워크플로 정리
  • 배포 프로세스 개선, 알람 정리 및 작업 방식 정리
  • 센트리 소스맵 추가로 인해 디거핑 편의성 증가
  • 앱 웹뷰 지원(최소 버전 안드로이드 4.x)
  • CI/CD 구성
  • 불법자금세탁방지를 위한 고객확인 기능을 추가하는 작업
  • 배민페이 적립 포인트 노출(포장주문에서 짝수 회원만)
  • 규칙없이 구성되어 있던 인프라를 회사의 기준 인프라를 기준으로 재정비하여 누구든 수정 할 수 있게 구성함
  • 스프린트 도입 및 다양한 파트의 R&R 정리 및 결제플랫폼 로드맵 문서화 및 공유
  • 배민페이 결제지면 개편
  • 배민 쇼핑 라이브 결제플랫폼 도입
  • 커머스 봉투값 도입
  • 개발 환경 개인화 및 결제플랫폼 브랜치 전략 수정 및 워크플로 변경으로 효율적인 업무 프로세스 도입
    • 디바이스별로 배포 환경 구성
  • 공통 레이어 강화를 통해 각 서비스에서 작업해야 하는 상황 최소화
  • 결제플랫폼을 모든 서비스에 적용함.
    • 배민쇼핑라이브, 전국별미 결제플랫폼 도입(레거시 프로젝트인 배민페이 프론트 프로젝트 제거)
  • 결제플랫폼 2.0 개발
    • 결제플랫폼 2.0 개발을 통해 코드에 대한 이해와 나아갈 방향을 제시
  • 업무 프로세스 일원화를 통한 유관 부서 최소화
    • 워킹그룹을 운영해 이른 시일 안에 더 나은 결정을 할 수 있는 문화를 만듦.
    • 브랜치 전략을 수정해 불필요한 소통과 실수를 줄여 업무 효율이 상승함.
    • 유관부서를 최소화하여 일의 병목을 줄임.

배민페이 관리지면

period21.06 ~ 22.05 (1년)
position웹 프론트엔드 파트 리딩
skillTypescriptReact
description배민페이 관리지면을 개편하여 유지보수성을 향상 시키고 고객에게 좋은 UI/UX를 제공
  • 우아한 JS에서 리액트로 전환
  • 새로운 디자인 가이드 기반으로 페이지 개편
  • 베타 환경 개인화를 통해 병렬 작업 지원
  • 캐시 전략으로 인해 이미지나 페이지가 잘못 노출되거나 늦게 노출 되는 경우를 제거
  • 에러 로깅 시스템을 통해서 서비스에서 오류가 발생하는 횟수를 최소화
  • 개발자 개인 컴퓨터에서의 불편함들을 개선해 업무 능률 상승

배민페이 프론트

period21.06 ~ 22.05 (1년)
position웹 프론트엔드 파트 리딩
skillTypescriptReact
description전국별미, 배민쇼핑라이브의 배민페이, 결제지면 관련 npm 모듈 관리
배민 통합 결제 플랫폼의 배민페이 관련 sub module 관리

결제하기 웹뷰

period21.06 ~ 22.05 (1년)
position웹 프론트엔드 파트 리딩
skillTypescriptReact
description배달의민족 내의 결제 페이지 웹뷰
(배민, 배민라이더스, 비마트, 선물하기, 가족계정, 브랜드오더, 배민페이, 전국별미, 배민쇼핑라이브)
  • 서버에서 관리되던 페이지를 프론트로 이관
  • 각 서비스별로 다르게 운영되는 웹뷰 인터페이스를 통합하여 업무 효율성 향상
  • 새로운 디자인을 바탕으로 페이지 개편 작업
  • 별도로 관리되던 코드를 통합함으로 업무 시간을 감소시킴.
  • 백엔드 개발자가 관리하던 페이지들을 프론트 개발 영역으로 통합시킴.
  • 레커시 프로젝트인 배민페이 프론트를 제거함으로써 관리 포인트를 감소시킴.
  • 새로운 디자인을 바탕으로 결제페이지를 개편함.
  • 서비스별로 운영되던 인터페이스를 통합하여 관리 및 업무 효율성을 향상함.

PLCC 현대카드 이벤트 페이지 지원 업무

period21.06 ~ 22.05 (1년)
skillhtmlJavascript
descriptionPLCC 현대카드 이벤트 페이지(웹뷰)

주문접수앱 웹뷰

period20.11 ~ 21.01 (3개월)
skillTypescriptReactReduxExpress
description배달의민족 업주님들이 사용하는 앱의 웹뷰
  • 배달대행사 연결 및 관리 페이지
  • AI 배달 예상 시간 안내 페이지

post 배사광

period20.11 ~ 21.05 (6개월)
skillTypescriptReactMobxSWRreact-hooks-form
description배달의민족 대표 B2B서비스채널인 `배민사장님광장` 웹서비스 Front-end 개발/운영개선 프로젝트 리뉴얼
  • 프로젝트 초기 React AppLication Architecture 설계
  • 브랜치 전략 구상(master/deploy/feature)
  • 젠킨스 구성(master의 최신 커밋이 base가 아니라면 배포 불가능)
  • 허스키 도입(rebase시 현재 브랜치 최신화 후 진행)
  • 내정보 페이지, 하위 페이지 작업 및 메인홈 페이지 작업
  • webpack 및 babel 설정
  • Dialog, FormCard 추가
  • swr 도입
  • 글로벌 스타일 추가(스타일 가이드 구성)
    • boxModel 글로벌 클래스 추가
    • color 값 정의
    • color 글로벌 클래스 추가
    • typo 글로벌 클래스 추가
  • 오픈을 위한 전체적인 QA
  • 점검 및 프론트 배포 여부 주기적인 체크
  • 개인 정보 페이지 브라우저 뒤로가기 버튼으로 인해 이동 시 새로고침
  • 사파리에서 새로고침이 되지 않는 이슈 해결
  • ie11 지원
  • 배사광 리뉴얼 배포(3/24)
  • 리팩토링 작업

super2

period20.07 ~ 20.11 (4개월)
skillTypescriptReactSpring
descriptionB2B서비스채널(전자계약서, 업주 요청 등의 웹서비스) 개발/운영개선
  • 전자계약서 e2e TEST(testcafe) 작성
  • tsLint를 esLint로 변경
  • 슈퍼2 설정 정리 및 실행 환경 간소화
  • 가게 영상/사진 관리 기능 추가
  • 전통시장카테고리 기능 추가
  • 배민오더 오프라인 정보 기능 추가
  • 가게 편의 정보 기능 추가
  • 전자 계약서 내 메뉴 신청 양식 변경

ceo-moon-front

period20.06 ~ 21.01 (7개월)
skillJavascriptWoowahanJS
description배달의민족 대표 B2B서비스채널인 `배민사장님광장` 웹서비스 Front-end 개발/운영개선(셀프서비스 제외한 부분)
  • AB test 구성 및 테스트
  • 이벤트 페이지

ceo-web-self-service

period20.01 ~ 20.10 (9개월)
skillTypeScriptReactMobxReact-Router
description배달의민족 대표 B2B서비스채널인 `배민사장님광장` 웹서비스 Front-end 개발/운영개선(셀프서비스 부분)
  • 사장님 광장 내의 셀프 서비스 오픈(20.02.25일 오픈)
  • ceo-web-design-system를 활용해서 서비스 Front-end 개발
  • 메뉴 시스템 개선(20.07.14 오픈)
  • ceo-selfservice-front(react, redux)를 ceo-web-design-system를 활용해서 ceo-web-self-service(react, mobx)로 내제화
  • 스마트 메뉴 기능 대거 추가
  • e2e test(testcafe) 작성
  • A/B test 구성
  • 로컬 환경에서 https 적용
  • class component meThod binding 규칙 논의

ceo-web-design-system

period19.10 ~ 20.10 (12개월)
skillTypeScriptReactMobxReact-Router
descriptionB2B서비스채널을 위한 디자인 시스템 구축/운영개선
  • 프로젝트 초기 React AppLication Architecture 설계
  • 새로운 프로젝트 개발 환경 및 구조 연구하고 설계 참여
  • 다른 프로젝트에서 사용 될 공통 디자인 시스템 컴포넌트 작성 및 수정
  • Storybook을 통한 UI 검증 프로세스 간소화

ceo-selfservice-front

period19.08 ~ 20.01 (5개월)
skillTypeScriptReactReduxRedux-SagaReact-RouterJEST
description배달의 민족을 사용하는 사장님들의 메뉴 관리를 위한 서비스 웹 서비스 개발/운영개선
  • ceo-web-self-service로 병합 후 프로젝트 종료
  • 1인분 메뉴 가격 최소, 최대값 입력 제한 개발 - 메뉴 타입 설정 기능 개발
  • 메뉴구성 / 메뉴 설정 기능 추가 개발
  • 옵션 최대 / 최소값 기능 개발

smartmenu-admin-front

period19.08 ~ 20.01 (5개월)
skillTypeScriptReactReduxRedux-SagaReact-RouterAnTd
description배달의 민족을 사용하는 사장님들의 메뉴 관리를 위한 서비스의 회사 내부 관리 웹 서비스 개발/운영개선
  • 메뉴 매핑 정보 체크 가능 개발
  • 1인분 메뉴 가격 최소 / 최대값 입력 제한 개발
  • 운영자 권한 관리 라이트버전 개발
  • 시스템 관련 라우팅 분리
  • 프랜차이즈 메뉴 할인 기능 개발

미미박스

period19.01.23 ~ 19.08.23
position프론티어 / Front-End Engineer
projectsReact Mobile-Web & WebView
Handlebaz Web, Handlebaz Mobile-Web & WebView
  • 화장품 e-commerce MEMEBOX 웹 프론트엔드 개발

MEMEBOX Mobile Web & WebView

period19.01.23 ~ 19.08.23
skillTypeScriptReactReduxRedux-ThunkReact-RouterApollo
descriptionReact로 구성 된 모바일 웹과 웹뷰 서비스
  • 기존 handlebaz로 구성되어 있던 모바일 웹 리액트로 리뉴얼
  • 퍼블리싱 없이 기획자와 디자이너의 기획서와 제플린을 통한 HTML, CSS, JS 작업(HTML, CSS 리드)
  • 기존 탭 리뉴얼 및 새로운 프로모션 탭 제작
  • 앱 웹뷰 지원(안드로이드 4.4 지원까지)
  • iOS에서는 CSS 속성으로 스크롤이 지워지지 않아 임의의 방법으로 제거
  • Apollo GraphQL 활용
  • React Hooks 도입 리드
  • Carousel에 영상 추가 및 위치에 따른 영상 재생 컨트롤 기능 개발
  • GTM 및 사내 웹 로그 로직 추가 및 모듈화
  • GitLab CI 수정 및 PM2 ecosystem 도입 리드

Handlebaz Web, Handlebaz Mobile-Web & WebView

period19.01.23 ~ 19.08.23
skillJavascriptNodeHandlebaz
descriptionhandlebaz로 되어 있는 프로젝트에 정적 데이터 수정( PC Web, Mobile Web )

SVm

period18.06.05 ~ 19.01.18
position서버팀 / Back-End Engineer
projectsPUFF APP Backend
PUFF APP Admin
  • 동영상 스트리밍 앱인 퍼프 백엔드와 어드민 개발

PUFF APP Backend / PUFF APP Admin

period18.06.05 ~ 19.01.18
skillRuby on RailsJavascriptNodeMySQLAWS
descriptionPUFF APP을 위한 API 및 ADMIN 개발/유지보수
  • Ruby on Rails monoLiThic 구성 된 프로젝트 유지 보수
  • 앱 내 게임 관련 데이터 Redis에서 수집해 데이터 제공
  • GiftiShow BaThch Sever 구성(Node.js)
  • Ruby on Rails로 개발되어 있던 API Node로 리뉴얼
  • KT GiftiShow 관련 API 수정 및 추가 - EC2(AutoScaLing, ELB), S3, Route53, API Gateway 세팅 및 활용
  • Swagger 작성 리드
    • Swagger 모듈화 및 효과적인 관리를 위한 방안 구상

Side Projects

MOTI

알아봐요 동물의 숲

      모아봐요 동물의 숲에 관한 최신 정보들을 쉽게 확인해 볼 수 있는 앱(android, ios)
      주요 기능 : 물고기, 곤충, 마이디자인, 주민, 정보 제공 및 KK노래 미리듣기
      서비스 기간 : 2020년 4월 ~ 2021년 1월
      NodeExpressTypescriptSequeUlzeMySQLEC2

본캐마스터

  • 테스크 템플릿을 제공하여 루틴을 쉽게 생성할 수 있도록 도와주고 친구와 테스크를 공유하여 성취감을 얻는 루틴 메이커 앱 서비스
  • React-NativeTypescriptMobxswr
  • 시연 영상

bing-bong

Study Watson

  • 효율적으로 스터디를 관리하는 가장 쉬운 방법을 제공하는 웹 서비스 입니다.
  • ReactReduxRedux-SagaNEXT
  • 시연 영상

Community

Activity

  • 21.06 ~ 21.08 우아한 테크캠프 멘토
  • 20.05 ~ 21.05 DR 서포터즈 2기
  • 개발 동아리 활동
    • 23.06 ~ 23.12 SIPE
    • 21.07 ~ 22.02 Nexters
    • 18.03 ~ 20.04 MASH-UP

Presentation

수상

  • 2020.12.14 2020 농식품 빅데이터 온라인 해커톤 우수상(한국농수산식품유통공사)
  • 2019.12.16 핀테크 x 인슈어테크 해커톤 금융결제원 우수상(과학기술정보통신부)
  • 2018.01.19 HANAplatform 기반 IoT 고급 개발자 양성 과정(NCS) BestProject상(멋쟁이사자처럼)

Education

  • 2011.03 ~ 2017.02 경북대학교(신소재공학부 전자재료공학 전공)
  • 2008.03 ~ 2011.02 대구공업고등학교(전자기계과)
  • 2012.01 ~ 2014.01 공군병(제 11전투 비행단 기계반)

Last Updated

  • 2024.01.17