> 주요업무
- Material-UI를 이용해 구현된 공용 컴포넌트의 잘못된 type 설정으로 인한 에러 해결
- 각 페이지에서 공용 컴포넌트의 이벤트를 다르게 설정하여 생긴 type과 build 에러 해결
- 프로젝트 내 상품 리스트를 보여주는 테이블 리스트 공통 Component 개발과 문서화, 장바구니와 관련된 공통 함수 개발
- QA가 기능개발과 동시에 진행되지 않던 절차에 따라 git flow 브랜치 전략에서 github flow 브랜치 전략으로 변경
- 백엔드 파트와의 소통을 통한 기능 개발 범위와 일정 산정 절차를 명확히하고 효율적인 협업과 커뮤니케이션을 위해 팀 내외 업무 요청 프로세스를 정립 및 협업을 위해 노력
- 효율적인 코드 리뷰를 위한 commit 단위에 대해 지속해서 대화하고 피드백을 주고받으며 프로세스 정립을 위해 노력
> 사용 기술
- 프레임워크 : Next.js
- 언어 : TypeScript
- 상태관리 : React-query(server state), Context API
> 회고 / 리뷰
Harmony는 네이버의 스마트팜과 비슷한 형태의 이커머스 플랫폼으로 기업이 사용하는 관리자 페이지와 고객이 사용하는 페이지가 나 뉘어있었습니다. 프론트엔드 개발을 총괄하시는 리드 개발자 한 명과 관리자 페이지를 구현하는 인턴 한 명, 고객 페이지를 구현하는 프 론트엔드 개발자 두 명, 이렇게 총 4명에서 협업했습니다. 저는 한 달가량 고객 페이지를 구현하다가 관리자 페이지에 200개가 넘는 type과 관련된 build 에러가 발생하면서 관리자 페이지로 투입되었습니다.
관리자 페이지에서 발생한 type과 build 에러가 공용 컴포넌트의 type을 본인이 개발하는 컴포넌트에 맞춰 바꿔가면서 설정하여 발생 한 문제라는 것을 발견하고, 공용 컴포넌트의 type을 Material-UI와 React Event에서 자체적으로 정의한 타입으로 설정하여 특정 컴 포넌트에 종속성을 가지지 않도록 리팩토링했습니다. 이 경험을 통해 발생한 오류를 돌려막는 것이 아니라 오류의 원인을 파악하고 함수 에서 불필요한 부분을 분리 또는 삭제하여 비교적 간단하게 버그를 해결한다는 장점을 발견할 수 있었습니다.
관리자 페이지 구현 시, 디자인 시스템이 제대로 정립되지 않은 UI 디자인에서 공통성을 찾아내고, 크기가 일정하지 않은 table이나 padding 등에 관해 디자이너와 적극적으로 상의하여 일정한 룰을 가질 수 있도록 노력했습니다.
더보기