프로젝트 초기에 할 일

앞으로 경험이 쌓일수록 계속 업데이트될 글일 것 같아요...!

 

1. 기획서 작성 및 문서화 기반 만들기 + 팀문화 만들기

Notion 등을 통해 문서화할 수 있도록 만들어두기

코드 리뷰, 팀 규칙 등을 정하기

회의 시간 / 회고 시간 등을 정하기

2. 일정 관리

Jira, Notion, Zenhub 등을 사용하여 일정관리를 할 수 있도록 세팅하기

일정 단위를 어떻게 산정할 것인지

- 일주일 단위로 업무를 산정할 것인지

- 하루 단위로 업무를 산정할 것인지

 

3. 프로젝트 컨벤션

1) ESLint, Prettier 설정

 

2) 코드 컨벤션 

  • 이벤트 핸들러 함수명을 어떻게 지을 것인지 등...

3) 디렉토리 구조 (아키텍처)

  • FSD, ...
    • 서로가 진행했었던 프로젝트의 디렉토리 구조를 공유해보고, 맞춰나가기
  • 클린 아키텍처
    • 계층에 대한 시각을 맞추기

4) Git 관련

  • Git Flow, GitLab Flow, GitHub Flow
  • Git Commit 메시지 컨벤션
  • 커밋, PR 단위에 대한 일관성을 위해 이에 대한 의견 공유하기
  • Pull Request 관련 보일러플레이트 만들기
  • Issue 관련 보일러플레이트 만들기
  • Git 커밋 메시지 자동화 툴 사용 여부 고민
    • Commitlint: Git 커밋 메시지를 검사하여 컨벤션을 따르는지 체크
    • Husky: Git Hook을 설정하여 커밋 및 푸시 전에 자동화된 작업을 설정해줌

4. 프로젝트 세팅

1) Github 레포지토리 생성

README.md 파일 관리 잘하기

- 서비스 소개

- 링크

- 팀원 소개

- 이슈들에 대해서 공부한 기록들

- 기술 아키텍처

- 팀문화

Releases 노트

 

2) 사용할 기술들 정리

기술 스택들 

- UI 라이브러리: React, Vue, Angular, ...

- 상태 관리: Recoil, Redux, Zustand, React Query, ...

- 영상 처리: ffmpeg, Web assemly, WebRTC ...

- 스타일: SCSS, TailwindCSS, Emotion,...

- 테스트: MSW, Jest, Vitest, RTL, ...

- 모니터링: GA, Sentry, Slack, ...

협업 도구

- 일정 관리: Jira, Github Project

- 메신저도구: Slack, KaKaoTalk

- 문서화: Notion ...

 

3) 프로젝트 환경 세팅

 

옵션) Docker

5. CI / CD 환경, 배포

1) Github Action

 

 

2) 배포할 클라우드 서비스 결정

Vercel, AWS, GCP, Netlify, Azure