배달 주문 매칭 서비스

배달 주문 매칭 서비스

개요

개발기간 : 2021.03 ~ 2021.11

인원구성 : 개발자 2명

사용기술 : SpringBoot, React, Firebase, Git

기능 : 현재 위치 서비스를 기준으로 게시글 작성 및 지도에 표시, 매칭되는 사용자랑 실시간 체팅, 체팅이 왔을 때 알림 서비스

수행업무

  • 커뮤니티 CRUD기능을 수행하는 Spring기반의 API 개발
  • Firebase Authentication을 이용한 로그인 상태 관리 및 자동로그인 기능 개발
  • Realtime Database를 이용한 실시간 채팅 구현
  • SHA-256 해시 알고리즘을 활용한 비밀번호 암호화
  • Use Case Diagram, Class Diagram을 통한 요구사항 시각화

회고록

본 프로젝트를 수행하며, 초기 구상한 Git 브랜치 전략과 Commit Message Convention을 지키며 개발을 진행하였습니다. 이를 통해 팀원이 개발한 내용과 충돌되는 상황을 최소화할 수 있었고 개발 진척도 공유가 원활히 이루어질 수 있었습니다.

채팅기능을 Firebase Realtime Database를 활용하여 개발하였습니다. Socket처럼 room을 만들어 통신하는 것이 아닌 Database의 변화를 감지하는 모니터링 방식으로 수행하였고 이를 통해 사용자는 별도의 reload과정 없이 실시간으로 채팅을 주고받을 수 있었습니다.

추가적으로, Database 모니터링 기능은 Spring을 통해 개발하였습니다. Spring의 이해도를 높이기 위해 이런 구조를 채택하였지만 불필요한 네트워크 통신을 줄이기 위해 React에서 해당 기능을 추가하였으면 어떨까 하는 아쉬움이 남았습니다.