한 달간 프로젝트를 진행하면서 협업과 기술에 대해서 많이 배울 수 있던 시간이였어요. 저희 팀은 서로의 의견을 귀기울여 들으면서 많은 의견을 내고 현재의 상황에서 최선의 선택을 하여 최선의 결과를 내는 소중한 경험을 한 것 같아요. 부족한 부분에 대해서 여쭤보고 공유하면 팀원들이 모두 적극적으로 도움을 주셔서 부족한 부분을 채워넣을 수 있었습니다.
이번 프로젝트에서 이런게 좋았어요.
- 거리낌 없이 질문할 수 있는 분위기
- 기술 스택에 대해서 충분히 이야기 해보고 결정
- 배웠던 내용을 최대한 활용하고, 필요한 부분에 대해 기술 스택 추가 결정
- TypeScrpit, React, Vite, Storybook, Vercel
- React Query, Tailwind CSS, npm, Axios, React-Router-Dom
- 프로젝트 시작 전 그라운드 룰을 정하여 협업 환경 개선
- 디렉토리 구조를 체계적으로 구조화함으로써, 폴더 이름과 구조를 일관되게 유지하여 프로젝트의 가독성 향상
- 브랜치 명, 깃허브 협업 방식, 커밋 태그 이름(husky사용)
- 공통 컴포넌트를 활용하여 빠른 페이지 개발 가능
- API 타입 구축 및 Axios 기본 설정 담당자를 통한 효율적인 협업
- storybook을 활용하여, 컴포넌트 별 디자인 확인
- Tailwind CSS를 전역적으로도 사용하고, 재사용해 보는 경험
일관적인 프로젝트 구조를 가지고 갈 수 있었고, 지속적으로 소통하고 코드 리뷰를 통해 코드를 확인하면서 전체적으로 프로젝트를 함께 이해하면서 진행할 수 있던 점이 좋았어요. 덕분에 프로젝트 결과물이 성공적으로 나왔다고 생각해요.
만족스러운 점도 많았지만, 부족한 점도 많이 느끼고 배울 점도 많이 느꼈던 시간이었어요.
이런 점이 부족하고 아쉬웠어요.
- 의견을 나눴던 내용에 대한 기록 부족으로 혼란스러움을 겪는 상황 발생
- 실시간으로 협업하는 시간이 많다 보니, 디스코드를 통해 문제점을 말로 공유하고 해결책을 받는 방식으로 진행하여 해결은 빠르게 됨
- 이전에 이야기 나누고 정했던 것에 대해서 다시 이야기가 나옴
- 시간에 쫒겨서 세세한 부분을 충분히 신경쓰지 못하고, 주요 기능이 동작하도록 마무리하는데 급급하게 진행된 부분
- React Query에 대한 부족한 이해와 컴포넌트와 데이터 간의 관계를 정확히 파악하지 않은 채 코드를 작성하여, 오히려 개발 속도가 늦어지는 문제
- 게시글 작성, 수정 페이지를 구현할 때, 주먹구구식으로 코드를 개발을 하거나, 다른 팀원의 코드를 참고하여 끼워 맞추는 식으로 코드를 작성
- 다른 기능에 사용된 훅을 정확한 이해 없이 사용하려다 보니 문제가 발생
- query가 아닌 suspencequery를 사용하면서 예기치 않은 문제가 발생
- 맡은 부분에 대해서 이슈를 미리 생성하지 않아 작업이 한번 겹치는 문제
- 공통 컴포넌트에서 원하는 CSS 속성 사용이 어려움
- className을 사용해도 해결이 되지 않는 문제
앞으로 이런 방향을 가지고 노력하면 되겠다고 생각했어요.
- 문제가 발생했거나 의견이 있을 때, 곧바로 issue나 discussions를 활용하여 기록하고, 문서화하는 습관을 가지도록 노력이 필요합니다.
- 잘 모르겠는 부분에 대해서, 좀 더 적극적인 자세를 취해야 될 것 같습니다. 개발이 진척이 안된 것에 대해 소극적인 자세가 되지 말고, 더 질문하고 정보를 얻는 것에 노력이 필요합니다.
- 시간에 쫓기더라도, 내가 작성하는 코드는 모두 이해하도록 노력이 더 필요합니다.
- 컴포넌트와 데이터 간의 관계를 이해하고 개발하기
- 사용하는 훅에 대해서는 정확히 알고 사용하기
- 맡은 부분에 대해서 이슈 바로 생성하여 작업 상황을 모두 공유할 수 있도록 주의가 필요합니다.
- React Hook, 사용자 정의 Hook, 컴포넌트, React Query에 대한 공부
- 유연한 사고와 합리적인 타협하는 자세