전체 프로젝트
Hackathon Project

UniBiz

대학생과 우리 동네 소상공인을 잇는 마케팅 매칭 플랫폼입니다. 학생은 포트폴리오로 기획·디자인·마케팅 역량을 보여주고, 가게는 학생과 채팅으로 이야기를 나눈 뒤 프로젝트 의뢰서로 홍보 일을 맡깁니다.

기간
2025.07 – 2025.08
팀 구성
6명 (BE 3 · FE 3)
역할
백엔드 개발
완성 여부
완성 ✓
Java 17Spring BootMySQLJPA Spring SecurityOAuth2JWTWebSocketSwagger
01

기획 의도

음식점, 카페, 공방 같은 동네 소상공인은 SNS 마케팅이나 디지털 홍보를 할 시간과 여력이 부족해, 여전히 입소문·현수막·쿠폰에 의존하고 있습니다. 반대로 기획·광고·디자인·마케팅에 관심 있는 대학생은 실제 프로젝트 경험과 포트폴리오가 부족합니다.

서로 도움을 줄 수 있는 두 집단을 연결하는 체계가 없다는 점에 주목해, 멋쟁이사자처럼 중앙 해커톤에서 대학생과 우리 동네 소상공인을 잇는 마케팅 매칭 플랫폼을 기획·개발했습니다. 기획 단계에서는 AI 기반 상권 분석, 학생–가게 추천, SNS 성과 분석까지 서비스 방향으로 구상했습니다.

핵심 가치 — 소상공인은 저비용 마케팅 지원, 대학생은 실무 경험과 포트폴리오, 지역은 청년과 상인이 함께 성장
02

시연 영상

03

시스템 구조

DomainUser, Student, Store, Portfolio, Recruiting, Application, ProjectRequest, Matching, ChatRoom, Review 등
ControllerAuth, Student, Store, Portfolio, Recruiting, Application, ProjectRequest, Matching, Chat, Review 등
LayerController → Model(유스케이스 조합) → Service → Repository
SecurityOAuth2 소셜 로그인, JWT 인증 필터, Spring Security
RealtimeWebSocket 기반 채팅
File포트폴리오 이미지 · 의뢰서 첨부파일 multipart 업로드
04

담당 역할 · 주요 구현

1

포트폴리오 CRUD · 이미지 업로드

학생이 자신의 작업물을 올리는 포트폴리오의 생성·조회·수정·삭제 API를 개발했습니다. PortfolioImage로 작업물 이미지를 함께 업로드할 수 있게 하고, 공개/비공개 여부를 설정할 수 있도록 했습니다.

2

포트폴리오 검색 · 공개 범위

가게가 학생을 찾을 수 있도록 공개 포트폴리오만 최신순으로 조회하는 검색 기능을 만들고, 학생별 공개 포트폴리오 목록과 개수를 조회하는 쿼리를 추가했습니다.

3

프로젝트 의뢰서 CRUD

가게가 학생에게 보내는 프로젝트 의뢰서(개요, 기간, 업무 내용, 예산, 근무 조건, 학생 요구 조건)의 작성·조회·수정·삭제 API를 개발했습니다. 의뢰서를 보내는 사용자가 실제 가게 소유자인지, 본인이 작성한 의뢰서인지 검증하고, 마감일이 시작일보다 빠르지 않도록 입력값을 검증했습니다.

4

의뢰서 첨부파일 업로드

ProjectRequestFile 엔티티로 의뢰서에 여러 파일을 순서대로 첨부할 수 있게 하고, 수정 시 파일을 추가하거나 전체 교체할 수 있도록 multipart 처리를 구현했습니다.

05

성과

26 / 107
백엔드 커밋 (약 24%)
해커톤
멋쟁이사자처럼 중앙 해커톤 출전
2개 도메인
포트폴리오 · 프로젝트 의뢰서 백엔드 담당
← 이전 프로젝트HUFJOK