TIL-26. 위코드 2차 프로젝트를 마치며..

solarrrrr·2021년 12월 13일
1

Today I Learned

목록 보기
26/74
post-thumbnail

프로젝트 팀 이름

  • TEAM_HOLLA

개발 기간

  • 2021년 11월 15일 ~ 2021년 11월 26일(12일간)

개발 인원

  • Front-End 4명(장세영, 이수경, 정지후, 설혜린)
  • Back-End 2명(김봉철, 유병문)

적용 기술 및 툴

  • Front-end
    JavaScript, React.js, SASS, React-Router-Dom, React-icons

  • Back-end
    Git, Ddiagram, Postman, Django, Python, MySQL, jwt, bcrypt, AWS RDS, EC2, Docker

  • 협업툴
    Trello, Slack, Notion

구현 기능 및 개인 역할

김봉철

  • DB 모델링, DB 구현, CSV 제작 관리 및 최신화
  • KaKao Social 로그인/회원가입, 인증/인가 API 구현
  • Main page에서 오디오북을 랜덤하게 추천하는 API 구현
  • 구매한 상품의 장르를 기반으로 하는 추천 API 구현
  • 실시간 감상평을 기준으로 화면에 보여주는 API 구현
  • Review page에서 상품별 별점 등록 및 출력 API 구현
  • Review 등록 및 출력 API 구현
  • Unit Test 구현

유병문

  • PROJECT 기획 및 기간 별 TRELLO 관리
  • DB 모델링, DB 구현, db_uploader 구현, CSV 제작 관리 및 최신화
  • 상세 페이지에서 오디오북 정보 및 작가 정보 API 구현
  • 장바구니 페이지에서 오디오북 상품 등록 API 구현
  • 상품 총 개수 및 총 가격 API 구현
  • Unit Test 구현

🎀 시연 영상


1차 나이키 사이트 클론에 이어 2차 프로젝트는 오디오북 서비스를 제공하는
윌라 사이트를 모티브로 제작했다.
다만 시간의 제약으로 인해 100% 클론보다는 핵심적이면서 기간 내에 가능한
기능 위주로 구현하였다.


1차 프로젝트가 끝나자마자 팀 발표와 함께 2차 프로젝트가 시작되었다.
팀은 누구와 되어도 관계 없었지만 병문님과 되어 더욱 기뻤다.

병문님은 개인적으로 실력이 나와 비슷하다고 생각했는데,
같이 으샤으샤 하며 좋은 시너지가 나올 것이라는 기대감이 있었기 때문에
팀 발표 후 설레는 마음으로 2차 프로젝트를 맞이할 수 있었다.

위코드에서 진행하는 모든 프로젝트는 모두 자신의 포트폴리오가 되어
취업에 사용되는데,
그 때문에 팀 프로젝트임에도 기능 구현에 욕심을 부리는 사람도 있었고
좀처럼 진도를 못 빼는 동기를 답답해하며 불화가 생기는 경우도 더러 있었다.

2차 프로젝트에 임하면서 못해 본 기능도 구현해 보고
좀더 어려운 것도 해 보고 싶다는 욕심이 났었는데
병문님과 팀이 되면서 내려놓았다.

대화를 해 보니 병문님은 1차 프로젝트 때
나보다 더 기능 구현을 못 해 보신 상태였다.
그래서 최대한 양보를 하고자 소셜 로그인과 메인 페이지는 내가 맡고
상세 페이지와 로그인 데코레이터를 병문님이 맡게 되었다.

메인 페이지의 경우 프론트엔드에서 기능 구현을 할 것이 너무 많은데
다 할 수가 없어 많이 축소되었고,
그로 인해 백엔드쪽에서는 실질적으로 구현할 기능이 많이 없어지게 되었다.

반면 상세 페이지의 경우 상품의 상세 정보 및 장바구니 기능과 리뷰 기능까지 있어서
병문님이 해 보면 좋겠다는 생각이 들어서 나누어 진행하게 되었다.


즐거웠던 2차 프로젝트

기능을 나누어 놓았지만 서로 물어보고 알려주며
사실상 프로젝트 전체를 같이 진행했다고 봐도 과언이 아니었다.

서로 배움의 깊이가 비슷했기에 오히려 대화가 잘 통했고
각자가 아는 지식을 나누며 2차 프로젝트 때 정말 많이 성장할 수 있었다.

이런 게 함께 일하는 즐거움이라는 걸 2차 프로젝트 내내 느끼며 행복코딩이라는 걸 했다.

특히 병문님의 성장이 내 눈에 보일 정도였는데,
스스로도 희열을 느끼며 즐겁게 공부하는 모습을 보니까
나도 덩달아 좋은 영향을 많이 받았던 것 같다.


하지만 쉽지만은 않았던...

백엔드에 비해 프론트엔드의 기능 구현이 어려워 프론트엔드 분들이
정말 힘들어했다.
표정을 보면 누가 봐도 울 것 같은 그런 분들도 계셨고
너무 느린 것 같다며 답답해하는 분들도 계셨는데
내가 할 수 있는 거라곤 통신 테스트 천천히 해도 되니까
맘 편하게 천천히 하시라고 말하는 것뿐이었다.

이때 정말로 풀스택을 하고 싶다는 생각이 많이 들었었다.
프론트쪽 공부까지 해서 힘들어하는 동기들과 함께하고 싶다는 마음이 컸었는데,
내가 알려줄 능력은 안 돼도 같이 고민하고 해결책을 찾아나가고 싶었다.

엎친 데 덮친 격으로 병문님의 맥북 모니터가 고장나는 바람에
A/S까지 며칠 동안 작업을 멈춰야 하는 블로커가 발생하고 말았다.

고육지책으로 내 노트북으로 함께 페어코딩을 진행할 수밖에 없었는데,
애초에 거의 페어코딩 수준으로 서로 대화하며 진행했기에 큰 불편은 없었다.

페어코딩 때의 병문님은 정말.........
옆에서 같이 보며 참여하는 정도로는 배움이나 학습에 대한 갈증을
많이 풀 수 없기에 답답하고 힘들었을 텐데
시종일관 웃는 얼굴로 대해 주시고..
정말 별명 그대로 스마일맨이셨다. ㅜㅜ

아쉽게도 2주차가 거의 흘러가는 상황이라
어쩔 수 없이 병문님이 구현하기로 한 리뷰 페이지를 내가 작업하게 되었는데
병문님도 아쉬워하셨고 나도 많이 미안했다.
하지만 팀 프로젝트이고 기간 내에 완성을 목표로 하고 있었기에
멘토님과 상의 후 그렇게 진행하게 되었다.


성공적인 마무리!

기능적으로 크게 어려운 부분이 없어서 사실 백엔드쪽은
금방 마무리가 될 수도 있었다.

그런데 unit test라는 복병과 병문님 노트북 고장 이슈로 인해
좀 딜레이되었다.
그래도 늦지 않게 성공적으로 완성할 수 있어서 다행이었다.

특히 unit test는 좀 어려운 개념이고 그래서 어려울 거라고 멘토님들께서 말씀하셨는데
병문님과 머리를 맞대고 서로 알려주면서 빠르게 이해해
다른 팀보다 빠르게 unit test에 성공했던 게 기억에 남는다.

이 unit test는 어떻게 보면 작성하는 데 노가다가 좀 필요할 수 있지만
한번 작성해 두면 이것만큼 든든한 것도 없다는 걸 깨달았다.
특히 리팩토링 시에 안정성을 확보할 수 있는 부분이라든가,
오히려 비용과 시간을 절감할 수 있는 꼭 필요한 과정이라는 걸 알 수 있었다.

기능 구현뿐 아니라 unit test의 원리와 방법, 필요성까지 공부할 수 있어 좋았고
또 1차 프로젝트 때는 ec2 서버와 rds를 이용해 배포를 해 보았었는데
이번엔 docker를 통해 배포를 해 볼 수 있어 더 좋았다.

아쉽게도 아직 프론트엔드쪽은 배포가 이루어지지 않아서
백엔드만 docker를 통해 배포된 상태라 링크가 없다. ㅜㅜ
추후 프론트까지 배포가 완료되면 링크 추가할 계획이다.


마치며..

개인적으로 많이 성장할 수 있는 계기가 되어 좋았지만
아쉬움도 큰 프로젝트였다.

언제나처럼 실력에 비해 내 눈높이와 욕심이 높아서
이것저것 다 해 보고 싶었는데
사이트 특성을 고려한 팀 회의 끝에
결국 1차 프로젝트에서 크게 벗어나지 않은
기능 구현에 그칠 수밖에 없었던 것이 아쉬움으로 남는다.

다른 팀들은 좀더 난이도 있는 프로젝트를 진행해
블로커도 많이 생기고 새로운 기능 구현도 하면서
나름 많이 성장한 분들도 계셨는데
우리는 질문할 거리가 많지 않다 보니
멘토님들과 대화할 시간도 적었고 또 다른 팀들의 블로커를
같이 해결해 주시느라 대화가 더 어려워져서
사실 좀 소외받는 기분도 많이 들었었다.
이 부분 때문에 기수 내부에서도 얘기가 좀 나왔던 걸로 안다.

그래도 팀원들과 시너지가 좋았고 나름대로 열심히 해서
1차 때보다 많이 성장한 것 같아
만족스러운 프로젝트였다고 생각된다.

profile
몰입

3개의 댓글

comment-user-thumbnail
2021년 12월 23일

해당 회고록 읽어 보면서 공감가는 부분이 많네요~ 봉철님 ㅎㅎ

봉철님의 배려심 최고 입니다. 앞으로도 화이팅 입니다!! :)

1개의 답글