Skip to content

Backend Wiki

Seunghun Yu edited this page Mar 27, 2026 · 5 revisions

Backend Team Wiki

이 문서는 백엔드 팀의 기술, 규칙, 결정사항, 운영 방식을 기록하고 공유하기 위한 위키입니다.
모든 변경 사항은 문서화 및 날짜 기록을 원칙으로 합니다.


1. 프로젝트 개요

1-1 목적

  • 서비스의 핵심 도메인 로직 및 API 제공
  • 안정적인 인증/인가 및 데이터 무결성 보장
  • 확장 가능한 아키텍처로 운영/성능/장애 대응 역량 확보

1-2 주요 기능

  • 인증/인가 (JWT 기반 + OAuth_kakao )
  • 핵심 도메인 API 제공 (CRUD + 상태 관리)
  • 데이터 저장/조회 (RDB 중심 + NoSQL 보조) 및 트랜잭션 처리
  • 예외/응답 표준화 및 운영 관측(로깅/모니터링 Grafana)

2. 기술 스택

2-1 기본 스택

구분 기술
Language Java 25
Framework Spring Boot 4.0.1
Build Gradle
DB PostgreSQL + MongoDB
ORM Spring Data JPA (Hibernate)
API Docs Swagger
Auth JWT (Access/Refresh) + OAuth
Cache Redis
Message Queue Kafka
Container Docker, Docker Compose
Monitoring Prometheus + Grafana

2-2 스택 선정 이유

  • Spring Boot
    • 빠른 개발 생산성과 풍부한 생태계(Starter, Actuator, Security 등)
    • 계층 구조(Controller/Service/Repository)로 역할 분리가 명확함
  • Java 25
    • 최신 LTS로 장기 유지보수에 유리
    • 성능/가독성 개선 및 최신 언어 기능 활용 가능

3. JAVA & Spring Boot 버전 선정 및 이유


4. 아키텍처 & 코드 구조

4-1 패키지 구조 규칙

  • domain: Entity/Repository 및 도메인 모델
  • service: 유스케이스(비즈니스 로직)
  • controller: API 엔드포인트
  • dto: Request/Response DTO
  • global: 공통 응답/예외/설정/유틸

컨벤션 수립

코드스타일

구글 자바 스타일 가이드 표준으로 진행합니다.

Git 브랜치 전략

머릿말 설명
feat 새로운 기능 추가
fix 버그 수정
design CSS 등 사용자 UI 디자인 변경
!BREAKING CHANGE 커다란 API 변경의 경우
!HOTFIX 코드 포맷 변경, 세미 콜론 누락, 코드 수정이 없는 경우
refactor 프로덕션 코드 리팩토링업
comment 필요한 주석 추가 및 변경
docs 문서 수정
test 테스트 추가, 테스트 리팩토링(프로덕션 코드 변경 X)
setting 패키지 설치, 개발 설정
chore 빌드 테스트 업데이트, 패키지 매니저를 설정하는 경우(프로덕션 코드 변경 X)
rename 파일 혹은 폴더명을 수정하거나 옮기는 작업만인 경우
remove 파일을 삭제하는 작업만 수행한 경우

커밋 메세지 규칙 정의

  • <타입>: <제목> (<이슈번호>) 의 형식으로 제목을 아래 공백줄에 작성
  • 제목은 50자 이내 / 변경사항이 "무엇"인지 명확히 작성 / 끝에 마침표 금지
  • 예) Feat: 로그인 기능 구현 (#5)

공부한것들

Clone this wiki locally