HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
♥️
2기 최종 프로젝트 팀별 공간
/
😋
[팀 11] 테이스티
/
🏁
프로젝트 개인 목표
🏁

프로젝트 개인 목표

 
프로젝트를 통해 이루고 싶은 개인적인 목표들을 정리 및 작성하여 원하는 포인트에 집중해서 프로젝트를 진행하기 위해 작성하려고 합니다. 각자 1차 프로젝트를 진행한 이후이기 때문에 이전 프로젝트에서 미흡했던 부분이나 개선하고 싶었던 점을 고려해서 작성해도 좋을 것 같습니다!
 

샘플

🚩
프로젝트 개인 목표 샘플 (Readonly)
 

권내영

기술적 측면
  • SSR에 대한 이해 및 적용(Next.js)
  • 채택된 라이브러리에 대해 공부하며 사용하기
    • react-query, recoil, jotai 등을 사용한다면 라이브러리에 대한 이해도를 높인 채 사용하기
경험적 측면
  • 백엔드 개발자들과의 협업 방식 습득하기
  • 프로젝트 회의 문서화, 기록 작업
    • 회의나 각자 한 일, 할 일 등을 일정 주기로 기록해 서로의 상황을 확인하고, 추후 활용 가능하도록 기록 작업
    • 템플릿을 만들어놓고 정리하는 시간 갖기
  • 프로젝트 시작 전 또는 초기 단계에 컨벤션 등을 정하고 문서화해 프로젝트 시 통일된 코드 또는 문서 작성
 
 

이지원

  • 애자일 방법론의 적용
    • 각 팀원들이 현재 작업 진행상황을 보다 자세히 공유할 수 있도록 git Project 활용
    • 주마다 혹은 더 짧게 스프린트를 정하고 스프린트의 반복으로 프로젝트 진행
      • 4주 전체 프로젝트를 분업하기에는 너무 단위가 크다
      • 4번으로 자른다고 가정하고 일을 분배를 하면 Git Project 일의 단위가 작아질것
    • 매일 정해진 시간에 짧게 프로젝트 진행 상황을 스크럼을 통해 공유
    • 매 스크럼 혹은 회의가 있을 때 마다 노션을 통해 간단한 회의록 작성 (돌아가면서)
  • 개발에 집중할 수 있는 환경을 미리 세팅
    • PR 템플릿
    • Commit Convention
    • Code Convention
    • 디렉토리 구조
    • 공통 컴포넌트에 대해서..
  • 프로젝트를 마무리하고 전체 프로젝트 흐름에 대한 이해가 남아있도록 작업
코드 컨벤션 예시

1. Components 이름은 Pascal case를 사용합니다.

  • Good : function Button = ...
  • Bad : function button = ...

2. Component 확장자는 JSX를 사용합니다.

  • Good: Button.jsx
  • Bad: Button.js

3. Component는 함수 표현식 + 화살표 함수로 작성합니다.

  • Good: const Button = () => {}
  • Bad: functon Button(), const Button = function(){}

4. props는 각 태그의 고유 기능을 잃지 않게 항상 할당해 줍니다.

  • Good:
const Button = ({...props}) => { //생략 return <StyledButton {...props} /> }

5. styled component에 인라인 스타일을 넣는 것은 최대한 지양합니다.

  • Bad : <StyledButton style={{...}}>

6. prop에 명시하는 이벤트는 on~, 핸들러 함수를 정의할 때 는 handle 접두사를 사용하고 이벤트의 이름을 사용합니다.

  • Good: <StyledButton onClick={handleClick} />
  • Bad: <StyledButton onClick={somethingElse} />

7. 동일한 이벤트를 다루는 핸들러가 여러개 존재 할 경우 정확히 어떤 컴포넌트에 할당되는 이벤트인지 명시해서 구분합니다. (handle + 컴포넌트 + 이벤트)

const handleButtonClick=()=>{} const handleTimeBoxClick=()=>{} return <> <TimeBox onClick={handleTimeBoxClick} /> <Button onClick={handleButtonClick} /> </>
PR Template 예시

개요

구현 배경 (이슈, Ticket Number)을 작성하고 무엇을 구현했는지 간단히 설명

구현 내용

구현 방식에 대해서 자세하게 설명

추가 이슈

개발 중 발생한 추가적인 이슈 등 에 대해서 명세

조계진

  • 초기 기획을 기한 내에 모두 이루기(현실적인 시각이 필요할 것) + 트러블 슈팅
    • 제한적인 비용 안에서 기획을 이루기 위해선 생산성이 높은 도구를 활용하는 것이 좋을 것 같음(Next.js, Typescript, React-query)
    • 태스크를 인원별로 분배 후 예상 작업 기간을 기록하기
  • 디자인 툴 익히기(전에는 Figma 안에서 Chakra-ui의 kit을 이용)
  • 후에 리팩토링 할 일이 적어지게 컨벤션을 확실히 정하고 팀원이 서로 이해했는지 확실히 확인하기
    • ESLint나 Prettier로 커버가 안되는 부분(컴포넌트 내에서 함수나 변수 간의 띄어쓰기), TS를 사용한다면 interface or type
      • import ⇒ interface ⇒ component ⇒ style
  • 서로의 작업 상황 확인
    • PR에 대해서 리뷰를 달 상황이 안되더라도 approve 남기기

하신영

경험적 측면
  1. 프론트 개발자로서 백엔드 개발자와 협업하는 방법 배우기
  1. 어떻게 하면 팀원들과 효율적으로 소통할 수 있는지 연구
      • 협업툴 선택과 활용( Notion, Github: issues, projects, Slack, Discord )
      • 업무 분담을 어떻게 하면 효율적으로, 합리적으로 할 수 있을지
      • 테크 스펙 사용 https://blog.banksalad.com/tech/we-work-by-tech-spec/
      예시
      issue 사용( 여기에 pr단위의 테크 스펙 적기) ⇒ propjects 보드에서 각 팀원의 업무 파악 (sprint단위)
      pr 예시
      기존 템플릿에 마감일이 없어서 추가가 필요하다고 생각
      ### 기능 이슈 #### 제목: \[feature\] 기능이름 #### 기능: <!-- 기능을 설명해주세요. --> #### 기능 세부 설명: <!-- 세부적인 설명을 설명해주세요. --> #### 기타 <!-- 버그 발생시 활용! --> ### 버그 이슈 #### 제목: \[bug] 에러명 #### 어디에서 <!-- 버그가 발생된 위치 --> #### 의도했던 상황 <!-- 의도하고자 했던 상황을 설명하세요 --> #### 현재 상황 <!-- 예시: 상황이 발생하는 대략적인 진행 사항을 단계적으로 설명 해주세요. --> #### 어떤 버그가 ( 에러메시지 ) <!-- 에러메시지를 넣어주세요. -->
      • 좋은 코드 리뷰를 하려면?
  1. 맨데이 파악하기
  1. 디버깅, 및 시행착오 그날 바로 문서화
기술적 측면
  1. NextJS, TypeScript를 적용
  1. 컴포넌트 다이어그램 적용
  1. 아토믹 디자인 시스템 적용해서 재사용성, 확장성이 강한 컴포넌트 만들기
    1. 아토믹 디자인을 활용한 디자인 시스템 도입기
      카카오엔터테인먼트 FE 기술블로그
      아토믹 디자인을 활용한 디자인 시스템 도입기
      https://fe-developers.kakaoent.com/2022/220505-how-page-part-use-atomic-design-system/
      아토믹 디자인을 활용한 디자인 시스템 도입기

시간이 된다면 하고 싶은 것
  1. 스토리북 적용: Atom, Molecule, Organism 까지 완성을 해보고 싶다. 또한 데이터가 많이 들어온 경우 테스트도 해보면 좋을 듯.
 
 

번외

 
스쿼시머지합시다!!