Search

관광지 기반 스냅사진 작가 매칭 플랫폼, SnapSpot

사용 스택
Spring
AWS
Docker
K8s
개발 기간
2023/05/16 → 2023/10/16
역할
PM
기획
백엔드 개발
📙 관련 포스트

Github Link

snapspot-api
Snap-Spot

담당 역할

CI/CD 파이프라인 구축 및 개발 단계 자동화: Docker, K8s를 사용하여 서버 배포를 자동화하는 CI/CD 파이프라인을 구축하였습니다. Github Action을 활용하여 Git Flow에서 각 feature 브랜치의 테스트 코드 통과 여부 확인을 자동화하였습니다. 또한 서버 운영 시 발생하는 로그를 AWS Cloud Watch에서 확인할 수 있도록 작업하였습니다.
모니터링: 운영 서버가 정상적으로 운영되는지 지속적으로 확인할 수 있도록 Prometheus, Grafana를 활용하여 프로비저닝 및 모니터링을 담당하는 구축하였습니다.
역할-서버
1.
Spring Security, JWT, Spring reactive를 활용하여 JWT 기반 Authorization/Authentication을 개발하였고, 사용자의 역할별로 권한을 부여하였습니다. Kakao OAuth 회원가입/로그인 기능을 개발하였습니다.
2.
8개의 테이블이 애그리거트로 묶여 있는 사진작가 데이터 변경 API의 소요시간을 18초에서 1초로 개선하였습니다.
3.
사진작가 예약 프로세스에 관련된 API를 설계 및 개발하였습니다.
4.
JavaMailSender를 활용해 최종 사진 전달 기능을 개발하였습니다.
5.
스키마 설계 시 정규화를 진행하였고, 도메인 독립성을 고려하여 멀티 모듈로 스프링 프로젝트 구조를 설계 및 세팅하였습니다.
6.
Go, Lambda, S3, presigned url을 활용하여 서버 부담을 최소화한 사진 업로드 기능을 구현하였습니다.
7.
Kubeadm으로 EC2 쿠버네티스 환경을 구축하여 배포하였습니다.
역할-기획: 관광지를 기반으로 스냅 사진 작가와 다수의 잠재 고객을 매칭하고, 촬영 과정 전반을 관리하는 웹서비스를 기획하였고, 아이디에이션 후 IA 및 기획안을 작성해 관광데이터 공모전의 예선을 통과하였습니다.
역할-팀장: 기획, 디자인, 개발 프로세스 전반을 관리하고 일정을 조율하였습니다. 파트 간 소통을 원활히 하기 위해 노력하였고, 소통을 위한 문서화 작업을 통해 서로 전하고자 하는 바를 명확하게 하였습니다. 상호 파트 간 미흡한 이해를 보완하기 위해 각 파트 소통의 중간 다리 역할을 하였습니다.

관련 기술블로그