FE Team Leader
Front-End Developer
개발 2021.09 ~ 2021.12
운영 2021.11 ~ 2021.12
🔗 Links
Github
📜 서비스 내용
계획적인 준비 루틴 관리를 위한 약속 일정 및 루틴 관리 서비스입니다.
위 서비스에서 제공하는 핵심 기능은 2가지입니다.
- 나만의 준비 루틴 생성
- 약속 시간 전 준비 시간 계산
🛠 기술 스택
- React Native, TypeScript
- Redux-toolkit
🖥 개발 내용
공통 컴포넌트 모듈화
서비스에 사용되는 input, button과 같은 컴포넌트를 모듈화하여 범용적으로 사용할 수 있게 개발하였습니다. TypeScript를 도입하였기 때문에 서비스에 필요한 prop을 직접 선언하고 관리하였습니다.
서버 통신 로직 분리
redux를 이용하여 전역 상태를 관리하고, redux-thunk를 사용하여 비동기 통신하였습니다. 컴포넌트로부터 비동기 로직을 분리할 수 있어 가독성을 향상시킬 수 있었습니다.
부분 웹뷰 적용
이동 시간 계산을 위해 출발지/목적지를 입력하는 기능을 구현하였습니다. React Native의 경우 카카오 maps SDK를 적용하기 어려워 해당 뷰만 웹뷰로 개발하였습니다.
웹뷰와 앱 간 통신이 필요했고, bridge를 통하여 해결하였습니다.
Github flow
혼자 개발하는 것이 아닌 함께 공통된 기능을 개발하기 때문에 개발 시작 전 git convention을 정립하였습니다. 추가로 코드 리뷰도 함께 진행하면서 코드의 질과 코드 이해도가 상승하였습니다.
💡 성장 경험
PR과 이슈 단위
Github flow를 사용하고, 모든 팀원의 코드 리뷰를 강제하면서 이슈와 PR 단위에 대해 다시 생각해보게 되었습니다. 코드 리뷰를 하다 보니 부피가 큰 PR에 대해서 부담감이 느껴졌고 코드 이해도도 떨어지게 되었습니다. 팀원들의 피드백과 코드 리뷰를 반복하여, 단위가 매우 컸던 개발 초기 이슈와 달리 공통된 핵심 기능 혹은 도메인별로 이슈 단위를 가져갈 수 있게 되었습니다.
FE팀 리드
전체 팀 일정과 상황에 맞춰 프론트엔드 개발의 일정을 조정하고 팀원들과 유대감 형성을 위해 노력하였습니다. 모든 일정이 비대면으로 진행되다 보니 평상시보다 소통에 더 큰 노력을 기울였습니다.
오늘 자신의 상태와 개발 현황을 짧게 공유할 수 있는 데일리 스크럼에서는, 팀원들과 유대감을 위해 계획하게 되었습니다. . 하지만 대외 활동 특성상 자신의 본업과 함께 진행하기 때문에 매일 화상으로 만나서 진행하기엔 무리가 있었습니다. 그래서 슬랙의 리마인더 기능을 통해 알람을 울리고 해당 스레드의 댓글로 상황을 짧게 공유할 수 있게 하였습니다. 이렇게 팀원들간 작업 상황 싱크를 맞췄기 때문에 위클리 스프린트를 더 수월하게 진행할 수 있었습니다.
한 주간 개발 진행 상황을 공유하는 위클리 스프린트에서는 근황 토크 후 회의를 진행하였습니다. 출시를 위한 개발 일정 조절과 태스크 분배를 명확히 하려 노력했습니다. 그리고 중요한 이슈 혹은 기능에 대해서 페어 프로그래밍을 진행하였습니다.
프론트엔드 팀의 자취를 돌아보는 먼슬리 회고를 진행하였습니다. 기술적으로 혹은 팀 운영에 있어 미흡하거나 잘한 부분을 함께 이야기하였습니다. 원인이 무엇이고, 결과가 어떻고, 앞으로 어떻게 하면 좋을지에 대해 논의하였습니다.
👀 서비스 화면


