채용공고 올리기

이준엽님을 응원해보세요!

지금 만족하고 있어요
창의적
성실함
책임감
협업 지향
효율적

미리보기

기본 정보

이름
이준엽
직업
백엔드 개발자
간단 소개

안녕하세요 창의력을 무기로 빠르게 발전하는 3년차 개발자 이준엽입니다

기술 스택

기술 스택

NestJS, MySQL, AWS, Terraform, Node.js, Express, Redis, TypeScript, JavaScript, GitHub, MongoDB, Java, Spring

경력

회사명

(주)비주얼

직급 | 부서 | 근무 유형

백엔드개발자 | 개발팀 | 재직 중

근무 기간

2023.06. ~ 재직 중 (1년 9개월)

담당 업무

주얼리 커머스 플랫폼 “아몬즈” 를 개발하고 운영
주얼리 생태계의 문제점을 해결하고 생태계를 확장하며 다양한 주얼리를
더 많은 소비자와 연결함으로써 새로운 주얼리 생태계를 이루고자하는 팀

API 개발

  • 업무 배경

    • 팀의 연차가 쌓이면서 방대해진 서비스의 원활한 유지 보수 및 빠르고 안정적인 기능 개발을 위해 쌓인 기술 부채 청산과 Legacy 프로젝트의 버전상향 필요

  • 진행 업무

    • Express -> NestJS

      • 기존 자바스크립트로 개발된 레거시 프로젝트를 타입스크립트NestJS 를 이용하여 마이그레이션

      • job을 처리하는 worker 서버들의 역할이 확장됨에 따라 늘어나는 queue와 job을 효율적으로 관리하고 유지보수를 용이하게 하기위한 QueueModule 설계 및 개발

    • 테스트환경 개선

      • 점점 많아지는 테스트의 실행시간 단축을 위해 SWC 도입으로 테스트 실행시간 감소

      • jest -> vitest 이관을 통해 Unit Test 실행시간 3배 이상 단축

      • e2e 테스트 외부서비스 격리 및 모듈 분리, 의존성 제거로 테스트 안정성 향상

    • 성능 개선

      • MySql DB의 억단위가 넘어가는 데이터가 존재하는 테이블의 조회 성능을 위해 인덱스 분석 및 추가

      • 인덱스를 활용하지 못하는 쿼리의 개선을 통해 조회시간 10배 단축

      • 페이지네이션 API 성능 개선을 위한 커서방식 페이지네이션 도입

      • 배송처리 api 동시성 문제 redis 를 활용하여 해결

    • 기능 개발

      • 설계 문서 기반 소통 및 API 개발

      • 유저 서비스 (홈, 기획전, 좋아요, 장바구니 등) 기능 개발 및 유지보수

      • 백오피스 서비스 (어드민 및 셀러) 기능 개발 및 유지보수

      • 가공 데이터 처리를 위한 서버 기능 개발 및 유지보수

      • 외부 업체 API 연동을 위한 설계 및 개발 진행
        (이미지기반 검색, 배송 자동 회수, 외부채널 상품 연동)

인프라 관리

  • 업무 배경

    • 백엔드 팀에서 서버 리소스 관리와 모니터링 업무를 진행하며, Terraform을 사용해 각 리소스를 관리

  • 진행 업무

    • 여러 프로젝트를 monorepo 로 관리하기 위해 아직 통합되지 못한 서버를 이관하여

      Terraform을 이용해 ECS 리소스 생성CodePipeline을 생성하여 CI/CD 구축

    • MySql 8.0 버전업 진행 - 버전업으로 발생할 사이드이펙트 파악 및 조치

    • EKS 를 도입하여 스테이징 서버 구축을 위한 스터디 및 프로젝트 진행

      • Step FunctionLambda 를 활용한 지속적인 운영 데이터 복제 파이프라인 생성

브랜치 전략 개선

  • 업무 배경

    • 팀 인원이 증가할수록 자주 발생하는 코드 충돌 이슈로 인해 기존의 브랜치 전략으로는 업무 효율 감소 및 휴먼에러가 증가할 수 있는 요소가 많은 환경

  • 진행 업무

    • 충돌이 적은 브랜치 전략에 대한 고민을 하고 있던 때라 어필하여 TBD 방식의 브랜치 전략을 도입

    • TBD 전략 도입을 위해 지속적이고 안정적인 통합을 도와주는 방법으로 Feature Flag 방식을 채택하였고 모듈의 설계 및 개발을 리드

    • 결과적으로 팀원들의 코드 충돌이 발생하는 현상 감소

    • 지속적인 통합을 통해 최신화된 코드로 인한 개발 신뢰성 향상

업무 자동화

  • 업무 배경

    • 한 명의 개발자가 업무를 진행하기 위해서 관리해야 하는 포인트가 많아서 업무의 비효율이 발생
      (JIRA, Notion, AWS, Github 등)

  • 진행 업무

    • JIRA Automation 기능을 활용하여 최대한 적은 채널을 오가며 작업할 수 있도록 업무 환경을 개선
      (Feature Flag 관리 기능, 서버 배포 트리거 기능, DDL/DML 쿼리 실행 등)

    • github action 을 활용하여 오래된 feature flag 를 모니터링 할 수 있도록 개발

    • 운영팀의 업무 효율 증가를 위해 매출 및 브랜드 관리 정보를 가공하여 슬랙을 통해 알림 받는 기능 개발

회사명

주식회사빵야네트웍스

직급 | 부서 | 근무 유형

백엔드개발자 | 개발팀

근무 기간

2022.09. ~ 2023.05. (9개월)

담당 업무

K-POP 아이돌의 공연 및 팬미팅 라이브 스트리밍과 웹 드라마 VOD를 제공해주는 서비스

백오피스 신규 개발

  • 업무 배경

    • 운영팀이 데이터를 관리할 수 있는 백오피스 기능이 없어서 DB에 직접 접근하여 개발자가 데이터를 바꿔야 하는 업무 환경

    • 업무를 효율적으로 진행하기 위해 CRUD 기능이 있는 Admin 서버 개발

  • 진행 업무

    • 신입으로 입사했고 학원에서 배운 언어는 JAVA 였기때문에 2주 정도 Node.js 및 Express 학습시간을 갖고 회사의 다른 프로젝트를 참고하여 Admin API를 개발

    • 간단한 CRUD 부터 jwt 토큰 기반 로그인, 관리자 권한 부여 등의 기능을 개발

    • Admin 프로젝트 진행하는 동안 프론트 업무를 볼 인원이 부족하여 API 작업이 끝난 후엔 Vue를 학습하여 프론트 업무 지원

인프라 모니터링 및 레거시 서버 리팩토링

  • 업무 배경

    • 잘못된 스펙설정으로 비용이 과하게 나오는 리소스 존재

    • 거의 사용되지않는 서버 리소스 다수 존재

  • 진행 업무

    • ECS 클러스터에 Fargate 인스턴스를 줄여서 유지 보수와 비용의 이점을 얻고자 MSA로 분리된 Legacy 프로젝트들 중 합칠 수 있는 것들을 한곳에 합치도록 재설계하고 트래픽이 많은 인스턴스는 분리된 채 유지될 수 있도록 개선

    • ES6 이전 버전으로 작성된 레거시 코드들을 Typescript로 리팩토링하여 가독성을 올리고 타입안정성을 확보

    • 순간적으로 서버 트래픽이 증가하는 경우 대비를 위해 영향을 크게 받는 API 를 Lambda 로 분리하여 서버 안정성 향상

포트폴리오

URL

link

개인 기술 블로그

URL 링크

대외활동

활동명

KH 정보교육원 직업훈련 수료

소속/기관명

KH 정보교육원

연도

내용
댓글