급식카드 가맹점 조회 서비스
개요
개발기간 : 2023.03 ~ 2023.07
인원구성 : 개발자 3명, 디자이너 4명
사용기술 : NestJS, React, MySQL, AWS, Git, Figma
기능 : 정해진 가맹점까지의 길찾기, 가맹점 검색, FAQ Q&A 공지 등 커뮤니티 기능, 프로필 관리 및 수정
수행업무
- React 기반의 로그인 페이지 및 커뮤니티 페이지 개발
- MySQL 데이터베이스 설계 및 ERD 문서 작성
- NestJS기반 데이터베이스 CRUD API 개발
- Swagger를 통한 API문서 자동화
- 급식카드 가맹점과 네이버 길찾기의 메타데이터 크롤링
- AWS를 활용하여 Frontend와 Backend 서버 분리 배포
- CORS문제 대응과 SSL/TLS 프로토콜 관련 이슈 대응
회고록
본 프로젝트를 수행하며, Frontend와 Backend를 각각의 서버로 분리하여 통신하는 작업을 처음 경험했습니다. 그리고 수행과정에서 Cookie 값 손실, 통신 누락 등의 문제가 발생하였고, 이를 해결하며 CORS 정책에 관한 이해도를 높일 수 있었습니다.
가맹점 및 네이버 길 찾기 정보를 수집하여, MySQL에 저장하는 크롤링 코드를 Python을 활용하여 개발하였습니다. 가맹점 정보를 수집하기 위해 정적 크롤링 방식이 아닌, BeautifulSoup와 Selenum을 이용한 동적 크롤링 방식으로 수행하였고 이를 통해 공공데이터포털에서는 받아올 수 없던 상세정보를 저장할 수 있었습니다.
추가적으로, 크롤링을 통해 수집된 데이터의 경우 시간이 지날수록 실제 데이터와 차이가 생기며, 이로 인해 서비스의 정확도가 떨어진다는 단점이 있습니다. 이것을 해결하기 위해 Linux Scheduler, Webhook 등의 방법을 활용하여 정기적으로 정보를 갱신해 주면 어땠을까 하는 아쉬움이 남았습니다