패스트캠퍼스/기자단

[기자단] 패스트캠퍼스X야놀자 백엔드 부트캠프 : 파이널 프로젝트 후기

개발중인 감자 2024. 1. 21. 11:32

 

🌟 파이널 프로젝트란?

 

야놀자와 협업하는 기업 연계 프로젝트이다. 

실제 포트폴리오에서도 야놀자와 협업이라고 기재할 수 있는 프로젝트이다.

 

야놀자가 제시한 프로젝트 주제들 중 하나를 맡아

PM, UXUI, FE, BE인 4개의 부트캠프 수강생이 모여 한팀을 이룬다!

 

프로젝트 주제는 대외비이기 때문에 자세히 기술하지는 않지만, 

내가 맡은 주제는 당근마켓같이 '숙박 거래 서비스'라고 보면 될 것 같다. 

 

 

 

 

📌 우리의 프로젝트 [캐치룸] ?

 

 

 

우리 프로젝트의 이름은 캐치룸이다. 숙소를 빠르게 catch 하자! 라는 의미에서 지었다. 

팀원은 PM 5명, UXUI 1명, FE 6명 그리고 내가 속한 BE 4명으로 이루어져있다. 

 

프로젝트가 시작되면 다음과 같은 순서로 진행했다. 

1) 팀빌딩 

2) PM의 기획 기간. 이때 동안 개발팀은 부족한 공부를 진행하거나 포트폴리오 점검 등 개인 시간을 가졌다. (약 1달)

3) 개발 기간 (약 1달)

4) QA (테스트)

 

실제 현업에서 진행하는 것처럼 프로젝트를 진행하였다. 

우리 조의 PM분들이 대부분 경력자들이기 때문에 

기획부터 개발까지 무난하게 프로젝트를 진행하였다. 

 

 

👥 협업 방식 : 디스코드의 활용은 어디까지?

 

 

 

우리는 소통을 👾 디스코드로 일원화하였다. 

팀원 중 한분이 디스코드 장인이 계셔서 슬랙처럼 예쁘게 꾸며주셨다 

디스코드 장인분이 쓰신 디스코드 협업 방식 벨로그 링크는 ▶️▶️▶️ 링크 👾

 

 

서로 필요시 태깅하기도 편하고 회의하기도 매우 편하기 때문에 강추 한다 ~!

 

 

📌 프로젝트 운영 : 노션  

 

프로젝트 운영 일정, 칸반보드, API 명세서, PRD는 모두 노션에서 진행하였다. 

 

 

 

 

 

 

📌 요구사항 정의서 : 피그마

 

기획단에서 나온 요구사항 정의서는 모두 피그마에 통일되었다. 

피그마 정말 편하면서도 어려운 존재같다. 이걸 전부 작성하신 기획단.. 존경스럽단 말이 바로 나온다 👍🏻

 

 

 

 

💻 프로젝트 개발 목표 및 후기 

 

백엔드 팀의 관점에서 파이널 프로젝트에서 적용하고 싶었던 몇 가지가 있었다.

 

 

1. 마이크로 서비스 아키텍처 (MSA)

미니프로젝트에서 인프라를 맡으면서, 아키텍처의 중요성을 배웠었다. 

그래서 간단하게라도 마이크로 서비스 아키텍처를 구축하고 싶었다. 

 

Api gateway 까지는 도입하지 못했지만, 

채팅 서버와 본 서버를 분리하는 작업은 도입하였다! (힘들어서 눈물 광광) 

자세한 글은 추후에 따로 작성하겠다. 

 

 

2. WebSocket, Redis, Kafka

채팅 서비스를 개발하면서 레디스와 카프카에서 고민을 많이 했었다. 

원래는 카프카를 사용하기로 했으나, AWS에서 제공하는 카프카인 MSK는 무료가 아니었기 때문에 인프라 비용을 고려하여 Redis로 바꾸었다. 

채팅하기 뿐만 아니라 채팅방 정렬 작업도 필요했기 때문에 Redis pub,sub 기능을 사용하였다. 

이 부분도 추후에 글 작성해서 넣어야겠다 (까먹진 않겠지)

 

 

3. 동적 쿼리 - Query Dsl

까다로운 검색 조건 및 3가지의 정렬 조건이 있었기 때문에 동적 쿼리를 사용하기 위해 Query Dsl를 사용했다. 

사용하기 전에는 걱정이 많았는데 생각보다 간편하고 쉬워서 놀랐다 역시 많이 사용하는데에는 이유가 있다 ^-^ ㅎ

 

 

 

🌟 파이널 프로젝트 후기 

 

 

 

개발단 뿐만 아니라 PM, UXUI 까지 모인 프로젝트로 현업 체험을 짧게 나마 할 수 있었다. 

특히 소통과 일정관리가 얼마나 중요한지 알 수 있었다. 

 

이 프로젝트를 진행하면서 할 수 없을 것 같은 기능은 '처음'부터 명확히 표현해야함을 알았다. 

왜 개발자들이 안됩니다 달고 사는지.. 왜 기획자와 개발자 사이의 간극이 존재하는지.. 이번에 확실히 알 수 있었다. 

그래도 우리 PM분들은 너무 좋으신 분들이라 다 이해해주셨다.

 

개발적으로는 다양한 기술들을 경험해보면서 실력적으로도 많이 성장할 수 있던 기간이었다. 

영원히 친해지지 않을 것 같았던 인프라와 이젠... 한몸이 된 느낌이다. ㅎㅎ

 

그리고 팀원들이랑 몇 번 오프라인으로 만나면서 재밌게 개발했었다. 

다들 열심히 하시는데 꼭 성공했으면 좋겠다~

 

개발 후기는 추후에 남기겠다! 감사합니다!