[회고] Jumpit 2차 클론 프로젝트 회고 ✍️

summerlee·2022년 11월 29일
4

프로젝트

목록 보기
2/3
해당 클론 프로젝트는 'Jumpit' 사이트의 코드를 베끼지 않은, DB 모델링 설계부터 기능 구현 등 모든 부분을 팀원들과 소통하며 직접 코드를 짠 프로젝트이며 상업적인 이용 목적 또한 없음을 밝힙니다.

우리팀이 만든 최종 결과물 일부 캡쳐


1. 우리는 왜 Jumpit 사이트를 선정했을까?

UI가 트렌디하고 깔끔하였으며 1차 프로젝트 때 보다 더 다양한 페이지 이동과 기능이 포함되어있었다. 추가적으로 소셜로그인 기능도 있어서 많은 부분에서 성장할 수 있을 것 같다고 생각 했기에 해당 사이트를 선정하였다.




2. 작업 기간

2022.11.14 ~ 2022.11.25 (2주)




3. 기술 스택 / 파트 분담

프론트엔드

HTML

React

SCSS

Javascript

백엔드

Javascript, Express(Node.js), Mysql

dbmate(DB scheme 버전관리)

jsonwebtoken(토큰 발행)

bcryptjs(비밀번호 암호화)

파트 분담

백엔드는 나를 포함 총 세명이었으며 다같이 ERD 모델링을 하고 여러차례 수정 뒤에 추합했다.

<우령(본인)>

로그인 API
회원가입 API
유저 정보 불러오기 API
스크랩 담기 API
스크랩 보기 API
스크랩 삭제 API
메일 변경 API
계정 탈퇴 API

<시아님>

이력서 관리 (정보 불러오기, 정보등록, 정보 수정)
지원하기 페이지 (상세페이지 내 지원하기 모달창 기능 구현, 마이점핏 페이지 내 ‘지원중’과 ‘지원완료’된 목록 구분하는 기능 구현)

<지수님>

Homepage 게시글 API
직무탐색 게시글 전체 API
직무 탐색 상세 페이지 API
회사 소개 상세 페이지 API
검색페이지 게시글 API
직무 탐색 게시글 페이지 필터 API
검색페이지 필터 API




4. 최종 결과물

메인페이지

직무탐색 - 필터링

실제 점핏 사이트는 필터의 갯수가 굉장히 많지만 2주라는 시간에 다 하기엔 버거울 것 같아 필터링 갯수를 줄였다. 또한 소셜 로그인 기능도 구현하려고 했으나, 여러 상황이 겹치기도 했고 소셜 로그인 담당 프론트분께서 건강이 안좋아지셔서 아쉽게도 구현하지는 못했다.(다음 프로젝트때 꼭 구현해 볼 예정이다)

아직 여러 상황이 겹쳐 계획처럼 구현하지 못한 부분이 있어 배포는 하지 못했지만 추후에 할 예정이다.




5. DB - ERD 모델링

우리 팀이 만든 ERD 모델링

먼저 기능 구현을 하기 전에 데이터 모델링 작업에 들어갔다. 백엔드 팀원들 각자 dbdiagram 사이트를 이용하여 모델링 작업을 해본 뒤 여러 회의를 거치고 거쳐 의견이 맞는 부분을 취합하여 완성했다. 작업을 하다 보니 필요없는 부분도 생겨 지우기도 하고, 더 필요하겠다 싶은 테이블이 생긴 적도 있었기에 그것은 추후 회의를 통해 삽입했다. 멘토님의 피드백으로 수정한 부분도 있었다.




6. 어려웠던 점

아직 SQL JOIN문에 익숙하지 않아서 여러 테이블을 조인으로 묶어 결과물을 프론트에게 전달해 주는 과정이 어려웠다. 조인이 많아질수록 복잡해지고 괄호도 헷갈리기 시작했다. 결국 다른분께 도움을 구해 쿼리문을 완성하긴 했지만 조금 더 스스로 공부할 필요가 있다고 생각했다. 언제 한번 멘토님이 말씀해 주신 말이 생각난다. '신입은 SQL문을 잘 짜는 것만으로도 잘하는 것' 이라는 말, 확실히 쿼리문을 얼마나 잘, 효율적으로 짜느냐에 따라 코드가 달라지는 것 같다. SQL문을 많이 써보고 공부해야겠다.




7. 협업 방식

- 노션 (Notion)

이전 1차때는 트렐로를 사용했는데, 이번에는 노션으로 협업을 진행했다. 노션에도 트렐로와 같이 보드 기능이 있어 굉장히 편리했다.

우리 팀 노션

노션의 보드 기능을 활용한 일정 정리

- 디스코드 (Discord)

1차때 디스코드의 편리함을 느꼈기 때문에 줌이나 구글미트만으로는 불편함을 많이 느꼈다. 그래서 2차 팀프로젝트를 진행하는 동안에도 디스코드 채널을 만들어 그때그때 회의나 질의응답을 하고 링크 공유도 했다. 확실히 소통의 속도가 빨랐다.




8. Postman 을 활용한 API 명세서

프론트엔드와 백엔드의 소통을 위해 API 명세서를 작성했다. 이전과 같이 포스트맨의 세이브 기능을 활용하여 어떤 양식으로 요청하고, 요청값 반환시에는 무슨 결과값이 나오는지에 대해 언제든지 쉽게 찾아볼 수 있도록 해서 프론트와 백 사이의 소통 효과를 극대화 했다. uri 엔드포인트와 결과값, 요청할 때 포함해야 하는 값에 대해 명시해놓으니 굳이 따로 그때그때 말해주지 않아도 되어 이러한 면에서 소통 시간을 줄일 수 있었다.



9. 아쉬웠던 점

9-1. SCRAP API 미적용

나와 함께 맞춰봐야 하는 프론트엔드 분께서 여러 사정으로 인해 스크랩 API를 실제 결과물에 반영하지 못하셨다. 아무래도 백엔드와 연결하는 부분에서 어려움을 많이 느끼신 듯 했다. 스크랩 API를 담당한 입장으로서 내가 만든 API를 보여줄 수 없어 아쉬웠지만 이렇게나마 코드로 남겨보려고 한다. 아래 이미지들은 스크랩 추가/ 스크랩 보기 / 스크랩 삭제 API로 구성되어 있으며 각각 Controller / Service / Model(Dao) 순서이다.

--> 🥹 감사하게도 프론트분께서 끝까지 포기하지 않으시고 열심히 작업해주신 덕분에 구현에 성공했다! 많이 고생 하신 것을 알기 때문에 더더욱 감사했다 ㅠㅠ 고생하셨습니다 성아님!!

스크랩 API Controller

스크랩 API Service


스크랩 API Model

스크랩 API READ 부분 포스트맨 결과 캡쳐~~

9-2. 카카오 소셜 로그인(OAuth) 미적용

소셜 로그인 또한 내 파트였는데, 소셜 파트 프론트엔드분이 건강이 안좋아지셔서 중간부터 참여하지 못하셨기에 일정에 문제가 생겨 보류하게 되었다.🥲 열심히 공부하여 포스트맨으로 유저 데이터를 받아오는 것 까지는 성공했으나 실제 프론트엔드분과 맞춰보지 못한 아쉬움이 굉장히 컸다. 하지만 이 또한 하나의 공부였다고 생각하고 기록해 두려고 한다.
나중에 소셜 로그인을 조금 더 공부하여 따로 게시글로 올려둬야겠다. 나중에라도 꼭 적용해보고 싶은 것 중에 하나이기 때문에 무조건 공부하고 싶다.

카카오 소셜 로그인 API Controller

카카오 소셜 로그인 API Service

카카오 소셜 로그인 API Model

카카오 소셜 로그인 API - 포스트맨을 이용한 유저 정보 출력 (본인 카카오 계정의 이름 및 이메일 응답)



10. 마치며

사실 1차 프로젝트보다는 소통 면에서도 그렇고 어려웠던 부분이 제법 있었다. 의견 제시가 필요한 회의에서 과묵하신 분들과의 소통에 어려움을 느꼈고, DB 데이터 관리를 위한 dbmate 사용 관련으로도 작은 마찰이 있었다. 하지만 회의 때 한분 한분 진행상황을 물어보는 해결방안으로 소통 문제는 나름 해결 할 수 있었다. 데이터 관리 부분은 왜 내가 그런 의견을 제시하는가에 대한 근거를 말해보기도 했지만 다른 사람들을 납득시키기엔 쉽지 않았다. 내가 조금 더 잘 설명할 수 있었더라면 그분들도 충분히 이해해주시지 않았을까? 하는 아쉬움이 있다. 이러한 과정은 힘들었지만 확실히 겪으며 느낀 것은 팀 안에서의 소통이 굉장히 중요하다는 것이다. 짧다면 짧고 길다면 긴 2주를 함께한 팀원들이었지만 팀의 소통, 화합이 제대로 되지 않으면 사소한 문제 해결에도 오래걸린다는 것을 다시금 깨닫게 되었다. 확실히 개발자는 소통하려는 마음가짐상대방을 존중하는 자세 를 지녀야 하는구나, 이게 아주 중요한 덕목이구나를 느꼈다. 많이 공부하고 배워서 모두에게 신뢰를 줄 수 있는, 그런 개발자가 되고 싶다. 아직은 많이 미숙하지만 차근 차근 성장해서 다른 팀원들을 많이 도와줄 수 있는 사람이 되는게 목표다. 이렇게 한차례 경험했기에 난 더 성장한거겠지! 정말 재미있는 프로젝트 기간이었다. 다음엔 필터링과 소셜로그인을 꼭 해보고 싶다ㅎ.ㅎ

2주간 함께 한 3팀 여러분들 다들 고생하셨습니다. 😆

profile
완벽하지 않아도 기록하려고 노력하기 😅

10개의 댓글

comment-user-thumbnail
2022년 11월 29일

너무 글이 좋네요~! ^ _ ^

2개의 답글
comment-user-thumbnail
2022년 11월 29일

벽이 느껴지네요,,완,,벽,,🌟 저와 소셜로그인 한번 해보실래여 🫶 ?

1개의 답글
comment-user-thumbnail
2022년 11월 30일

진짜 써머씨. 저와. 함께. 프로젝트 한번 하시조. 열심히 짜신 코드에. 눈물을 줄줄 흘리며. 감니다,

1개의 답글
comment-user-thumbnail
2022년 12월 6일

Thanks to this article I can learn more. Expand my knowledge and abilities. Actually the article is very real.

https://www.mybkexperience.one/

답글 달기
comment-user-thumbnail
2022년 12월 13일

너무 멋져요 제 롤모델이세요 🥹

1개의 답글