

| 구분 | 내용 |
|---|---|
| 개요 | 함께 소비를 관리하는 SNS형 소비 관리 웹앱 서비스 |
| • 개인의 소비 기록을 기반으로 예산 관리와 소비 습관 개선을 지원하며, 소비 피드·랭킹·배지 시스템을 | |
| 통해 사용자 간 소통과 동기 부여를 강화한 가계부 서비스 | |
| 전체 기술 스택 | Backend: JAVA, SpringBoot, JPA, QueryDSL, SpringSecurity, JWT, OAuth2.0, SendGrid |
| DataBase: MySQL, Redis | |
| DevOps: Docker, AWS(EC2, BastionHost, RDS, S3), Nginx, GitHub Actions | |
| 참여 인원 | 10명(PM 1명, 디자이너 1명, 백엔드 4명, 웹 프론트엔드 4명) |
| 핵심 기여 | 1. AWS·Docker 기반 CI/CD 및 배포 환경 구축: VPC, Subnet, EC2, RDS 환경에서 Docker Compose로 서버 운영, Github Actions를 통해 배포 자동화 |
(user_id, budget_id, created_month) 조합에 DB 유니크 제약 추가하여 중복 저장 차단
→ 루틴 등록 시 대상 범위에 PESSIMISTIC_WRITE 비관적 락을 적용하여 레이스 컨디션 제거
→ 충돌 상황에서도 DB 제약이 최종 방어선 역할을 수행하도록 이중 안전장치 구성
→ QA 환경에서 중복 루틴 생성 문제를 안정적으로 방지2. Bastion Host 기반 DB 접근 제어 • RDS를 프라이빗 서브넷에 배치하면서 운영 DB에 대한 직접 접근이 불가능한 문제 발생 → 퍼블릭 서브넷에 Bastion Host를 구성하고 SSH 터널링/포트 포워딩 방식으로 접근 경로 설계 → 인증된 사용자만 Bastion Host를 통해 DB에 접근하도록 보안 구조 강화 → 외부 노출 없이 안전한 DB 접근 환경을 구축하여 보안성과 운영 안정성 확보 | | GitHub 링크 | https://github.com/Money-Touch/BE | | 배포 링크 | https://dont-touch.netlify.app (서버 비용으로 인해 현재 서비스 중단) | | 자료 | 발표 자료: https://annual-sapphire-kc9cngz598.edgeone.app/돈터치_랜딩페이지 (1).pdf
QA: https://docs.google.com/spreadsheets/d/1EIGd7Y-b16xDUS9dOjed-LWbESZ5LyoXLX-KUfLMZ2w/edit?gid=0#gid=0
스프린트: https://drive.google.com/file/d/1Ph1dHQ02akvG2L7J4XqSfqWI40N7i8Jb/view?usp=sharing |