2차 프로젝트 회고록

Hyeon Soo·2021년 3월 14일
0

1. 프로젝트를 시작하기 전에

1차 프로젝트에서 내가 코드를 같이 작성하며 배웠던 기능 중 중요한 것은

  1. 휴대폰 인증번호 전송기능을 구현하기 위한 외부 API이용 방법
  2. Query Parameter 이용한 카테고리 분류
  3. Query Parameter 이용한 정렬

정도였다. 2차 프로젝트에 내가 클론할 웹 사이트는 채용 사이트인 원티드로 정해졌고, 팀원은 프론트 3명, 백엔드 3명으로 총 6명으로 구성되었다.

2. 1차 planning meeting

원티드는 원래 구직자가 주로 사용하는 페이지가 기본이면서, 기업 전용의 페이지가 따로 존재한다. 그래서 모든 기능을 구현하기 위해서 원칙적으로는 두 페이지를 모두 구현해야 한다. 하지만 기업 전용의 페이지들에 접근할 수가 없었기 때문에, 기본 페이지를 기준으로 기능을 설정하였다. 기능은 다음과 같이 정리할 수 있었다.

소셜 로그인
로그인 여부에 따라 달라지는 메인페이지
채용 게시글, 글에서 지원하기, 이력서 올리기, 정렬 기능 및 필터 기능
이력서 작성 및 이력서 업로드, 삭제
마이페이지의 기본정보 수정, 좋아요, 북마크, 지원 현황

이상의 기능들을 주로 구현하기로 합의하였다. 키값은 Notion을 통해 공유하고, 일정은 Trello를 이용하여 관리하기로 했다.

이번에 Trello를 이용하면서 특이사항은, 1순위로 구현할 부분과 2순위로 구현할 기능의 라벨 색을 달리 하였고, 체크박스를 만들어 진척사항을 상세하게 관리하였다. 그외 키값의 기준은 프론트엔드가 정하기로 한 것 등은 비슷하다.
단, 백엔드의 입장에서, 이번 프로젝트에서 새로 구현하게 될 부분들은 최대한 같이하거나, 아니면 코드 리뷰라도 진행하기로 하고, 이미 구현해본 기능들은 각자 맡아 진척사항을 빠르게 가져가기로 했다. 또한, 유닛테스트가 필수적으로 진행되어야 했기 때문에, 목표 설정을 무리하게 가져가지 않기로 하였다. 이번 프로젝트에서 새로 진행하기로 한 부분은

  1. 소셜로그인
  2. 아마존 EC2, RDS 배포
  3. 아마존 S3 이용
  4. selected related, prefetch related
  5. 무한 스크롤

정도였다. 이 중 1주차의 목표는 소셜 로그인과 EC2, RDS 배포하기를 완성하는 것을 기본으로 하고, 채용 게시글 페이지들, 메인페이지를 목표로 하였다.

3. 2차 planning meeting

1주차에 소셜로그인과 배포, 채용 상세 페이지와 메인페이지가 일단락이 된 상태였다. 그 상태에서 1차적으로는 이력서 페이지를 구현하기로 하였고, 이를 위해 아마존 S3를 이용하는 법을 찾아보기로 했다. 채용 기본 페이지는 Q객체와 Selected related, prefetch related를 이용하여 구현하고 있었기에 약간 딜레이가 되고 있었다. 그래서 2주차의 목표는 1차적으로 채용 기본 페이지, 이력서 페이지를 완성하는 것을 기본으로, 마이페이지까지 손 대는 것이 목표였고, 무사히 달성 할 수 있었다.

잘한 점과 잘 못한 점. 최종 회고

우선, 소셜 로그인 구현 및 유닛테스트 작성에 있어 기여한 부분이 많았고, S3를 이용한 이력서 파일 업로드 및 삭제 로직은 단독으로 구현하였다. 생소한 부분이라 장해가 될 수 있었는데, 무사히 목표한 시간 내에 구현할 수 있었던 것을 잘한 점으로 꼽고 싶다.
반면, 1차 때와는 달리, 2차 때는 동료의 코드를 살펴볼 시간을 내지 못했고, 상대적으로 다른 팀원이 작성한 코드의 이해도가 1차 때보다는 떨어진다. 그래서 오류 해결 등에 큰 도움을 주지 못하고 개인 플레이로 남은 부분이 있다는 점이 아쉽다.

0개의 댓글