개별 팀 프로젝트 - Broccoli-Velog

일상의 기록·2022년 8월 7일
1

항해99 8기

목록 보기
4/12
post-thumbnail

항해99 가 시작하고 2주차인 알고리즘 주차에 알고리즘 스터디를 시작하게 되면서 @codieng999 님과 @axisotherwise 님과 친해지게 되었습니다.

그렇게 알음알음 이야기를 하다가, 주특기 주차에 들어가서 저녁에 남는 시간에 프로젝트에 도전해보자 라는 슬로건으로 모이게 되었습니다.

처음에는 Express 담당 세 명만 있었지만, React 담당@dusunax 님과 @somfist 세 분이 모이게 되어서 작업을 진행하게 되었습니다.

우당탕탕 기록기

🤔 우려

프로젝트에서 가장 걱정 했던 부분은 다른 분들의 주특기 공부 에 방해가 되지 않아야 한다 였습니다.

따라서, 프로젝트의 완성보다는 다음을 중요하게 여겼습니다.

  • Git 을 통한 협업
    - main : 배포용 브런치
    • submain : 병합용 브런치
    • dev/작업자명 : 개발용 브런치
  • 프론트엔드와 백엔드 의 협업
    - API 명세서를 통한 협업과 여러 이슈 경험

😂 미숙한 협업 준비

프로제긑의 문제가 되는 부분으 백엔드 에서 발생했다고 생각합니다.

  1. 서버의 안정성 을 중점으로 생각했습니다.
    1. 이에 따라서 작업 속도가 늦어져서 프론트엔드의 작업 속도와 격차가 벌어졌습니다.
    2. 또한 API 명세서 등이 제대로 제공되지 않았기 때문에 프론트 엔드에서 이를 믿고 사용하기 힘들었습니다.
  2. 협업 간에 각자의 로컬 PC 에 MySQL 을 설치하는 것이 아니라 RDS 를 사용했던 부분

🔧 안정성?

주특기를 배운지 얼마 안된 만큼 Joi 를 통한 유효성 검사나 비동기 함수 에러처리 그리고 Custom Utility 함수를 활용한 반환 객체의 안전성 등을 중점으로 다뤘습니다.

해당 부분을 @codeing999 님께서 잘 따라와주셔서 백엔드에서는 많은 배움이 있었던 것 같습니다.

🔧 RDS -> Local MySQL

팀원 분들 중 한 분이 EC2 인스턴스 에 MySQL 을 설치하고 포트를 열어 주셨는데, 약 3일 간 해당 부분의 연결이 끊어지게 되었습니다.

따라서 연관된 부분의 MySQL 호출 코드가 모두 에러를 일으키게 되었고 작업에 지장이 생겼었습니다. 이후, 해당 분이 프로젝트에서 나가게 되셔서 해당 부분을 해결하는데 시간 소요가 꽤나 컸습니다.

급하게 프론트 엔드 분 PC 에 MySQL 을 깔고 실행했던 것 같습니다.

🔧 프론트 엔드와의 협업

사실 백엔드에서는 여러 가지 문제점이 많았기 떄문에, 프로젝트 내내 프론트 엔드 분들께 죄송한 마음이 많았습니다.

RDS -> Local MySQL 로 변환되는 문제 뿐만 아니라 기존에 API 명세서를 만들면서 설계했던 테이블의 키 이름 등이 변경 되는 이슈 등이 있어서 해당 부분이 큰 스트레스 셨을 것 같습니다.

또한, 사전에 인지하고 있었음에도 CORS 처리 등을 하지 않고 submain 에 병합하는 등의 실수도 몇 일씩 고통스러운 시간을 보내게 만들었습니다.

🤔 그래서?

이번 프로젝트를 마무리하면서 든 생각은...

  • API 명세서를 작성하고 이를 준수하려고 노력하고 변동 사항이 생길 것 같다면 꼭 협의 를 통해서 하자.
  • morgan 을 사용하지 말고 winston 등을 사용하고 더 구체화된 로그 기록 을 제공해드리도록 하자.
  • 가능하다면 submain 브런치 단계에서 테스트용 EC2 Instance 를 띄우는 방식으로 프론트엔드에서 이에 접근하기 유용하게 만들자.

💌 결과

결국 프로젝트는 완성되지 못한 상태로 남게 되었습니다.

하지만, 이 시간을 통해서 어떤 것들이 부족하고 채워넣을 수 있을 지 확실하게 알게 되었습니다.

단순히 에러 처리가 잘되어있는 서버를 떠나서, 협업을 준비 하는 자세가 있어야 높은 생산성을 기반으로 즐거운 협업이 될 수 있음을 알게 되었습니다.

14 일 동안 매일 저녁 9:30 에 모여서 고생하신 팀원 네분들에게 너무 감사하고 재밌는 시간이었습니다.

profile
2022년 12월 9일 부터 노션 페이지에서 작성을 이어가고 있습니다.

0개의 댓글