Projects/[Final] Shopping Mall Project

[파이널 프로젝트 발표] 피드백 정리

montmer27 2026. 5. 16. 21:59

조별 발표 피드백 및 인사이트 정리

전체 목표

  • 월·화 취업 준비 세션 대비
    • 기존 프로젝트 개선 방향 정리
    • 공부 습관 개선
    • 추가 학습 주제 선정
    • 발표/포트폴리오 개선 포인트 확보

2조 - 기가찰 (중고 물품 역경매 시스템)

무엇을 했는가

  • 중고 물품 역경매 시스템
  • 최저가 자동 입찰 기능
  • 알림 서버 분리(MSA)
  • 실시간 채팅 구현
  • Elasticsearch 기반 검색

인상 깊었던 점

아키텍처/기술

  • OAuth 적용
  • 알림 서버를 별도 MSA로 구성
  • 경매 서버 → 알림 서버 구독 → SSE 전달 구조
  • Elasticsearch vs PostgreSQL 성능 비교
  • EventBridge + Lambda 기반 이벤트 전달
  • SQS 기반 지연 처리

발표/시각화

  • 플로우 차트 및 도식화 퀄리티 우수
  • 실시간 채팅 시각화가 직관적

의문점

  • AMP란 무엇인가? Amazon Managed Prometheus
  • 플로우 차트가 정확히 어떤 흐름인가?
  • 가상 리뷰 생성 기능의 목적?
  • 로그를 JSON으로 저장한 이유?
  • SQS를 이용한 경매 시작/종료 지연 처리 방식

튜터 피드백

장점

  • 아웃박스 워커 중복 실행 방지
  • 개인정보 보호 관점이 뛰어남
    • LLM 학습 시 개인정보 노출 위험 고려
    • Tool Context 활용
  • 데이터 흐름 중심으로 채팅/알림 구조 설계
  • 기술 스택 활용 폭이 넓음

보완점

  • Elasticsearch 색인 동기화 문제
    • 상태값 변경 시 검색엔진 반영 누락 가능
  • Redis Watchdog 사용 근거 부족
    • 왜 20초인지 설명 부족

내가 느낀 점

  • 특정 팀원이 기술적으로 프로젝트를 강하게 리드한 느낌
  • “기술 도입”보다 “운영 중 문제 대응” 설명이 중요함

우리 조 피드백

질문

Sorted 정렬을 넣은 이유?

  • 분산 락 획득 순서를 일관화
  • 충돌 최소화 목적

튜터 피드백

장점

  • 기능 규모가 큼
  • 주문/결제/재고/환불 중심으로 성능 개선 흐름이 명확
  • Virtual Thread 실패 분석이 좋았음
    • 무조건 빠른 기술이 아니라는 점을 잘 설명
    • DB 병목 원인 분석이 좋았음
  • STOMP 사용자 세션 유실 디버깅 좋음
  • 시맨틱 청킹 적용 좋음

추가 피드백

  • 본인 담당 외 영역도 모두 이해해야 함
  • 다른 팀 코드까지 직접 열어보고 구현해봐야 진짜 내 것이 됨
  • RRF에도 단점 존재

3조 - 드랍샵 (한정판 드롭 커머스)

무엇을 했는가

  • 드롭 방식 이커머스
  • 특정 시간/수량 판매
  • 대기열 시스템 구축

인상 깊었던 점

기술적

  • Kafka + Redis 기반 트래픽 제어
  • Redis Lua Script 동시성 제어
  • 3-Layer 재고 관리 전략
  • 커밋 이후 메시지 발행 보장
  • 보상 트랜잭션 설계
  • 의미 기반 AI 추천
  • N+1 문제까지 설명

발표 구성

  • 핵심 과업을 먼저 제시
  • 문제별 적용 기술을 체계적으로 정리
  • 테스트 조건 설명이 명확
  • 회고와 최종 요약이 좋음

의문점

  • Pinecone 사용 이유가 명확하지 않았음
  • Kafka 도입 이유도 마찬가지
  • 과판매 리스크 정의
  • ShedLock 필요성
  • 24회에 달하는 Health Check 빈도

튜터 피드백

보완점

  • 아키텍처 이미지 가독성 부족
  • GHCR 위치 문제
  • Kafka 운영 계획 설명 부족
  • Pinecone 사용 이유 부족
  • AI 응답 검증 문제
  • findAll() 위험성
  • Embedding Batch 로직 문제
  • GitHub Actions 실패 상태 방치

내가 느낀 점

  • GitHub Actions 실패 상태 방치하면 안 됨
  • 외부 서비스 사용에는 반드시 “왜?”가 필요함

4조 - Potential (원데이 클래스 예약 플랫폼)

무엇을 했는가

  • 원데이 클래스 예약 플랫폼
  • 좌석/예약/결제 정합성 관리

인상 깊었던 점

기술

  • Redis ZSET + SSE 대기열
  • Redis Delay Queue 자동 만료
  • @Async 기반 LLM 처리
  • 부분 환불 구현
  • ADOT Sidecar
  • Dev/Prod 아키텍처 분리

발표

  • 시장 문제 분석부터 시작
  • Jira 기반 업무 추적
  • 템플릿 가독성이 매우 좋음

의문점

  • OpenAI + Ollama 혼용 이유
  • 락을 세분화한 이유
  • ZXING 사용 이유
  • 운영 환경 모니터링 사례
  • Redis-DB 정합성 전략

튜터 피드백

장점

  • 운영 관점 고민이 많음
  • 인프라/모니터링 구성 우수
  • 모니터링 중심 설명이 좋음
  • 비용 및 환경 분리 고민

핵심 메시지

  • “기능 구현”보다 “문제를 얼마나 정확히 해결했는가”가 중요

내가 느낀 점

  • Jira 써봐야겠다
  • GPT 생성 자료는 가독성 관리 필요

6조 - 웹소설 플랫폼

무엇을 했는가

  • 웹소설 플랫폼
  • 독서 습관 형성 서비스
  • 멘토/멘티 구조

인상 깊었던 점

기술

  • Redis Sentinel
  • 카오스 엔지니어링
  • 캐시 역직렬화 병목 분석
  • V1 → V2 구조 개선
  • SPOF 대응 설계
  • 외부 의존성 방어 전략
  • 매우 상세한 부하 테스트

도메인

  • 사용자 중심 문제의식
  • 단순 CRUD가 아닌 서비스 철학 존재

의문점

  • 국립도서관 API 도입 이유
  • Jenkins 사용 이유
  • 단계별 회원가입 테스트 방식
  • Sentinel 마스터 선출 의미
  • 성인 인증 구현 방식

튜터 피드백

장점

  • 기술적 의사결정 구조가 명확
  • 문제 정의 자체를 잘함
  • 캐시 병목 원인 분석이 뛰어남
  • 트랜잭션/분산락 비교 흐름 좋음
  • 카오스 엔지니어링 검증 설득력 높음
  • SLO 기반 사고 필요성 강조

보완점

  • 목표 사용자 수/RPS/SLO 기준 부족

내가 느낀 점

  • 프로세스 테이블 먼저 만드는 습관 필요
  • 캐싱도 역직렬화 비용 고려해야 함
  • 외부 의존성 대응 전략 중요
  • 비즈니스 언어로 설명하는 능력이 중요

5조 - AI 음악 스트리밍 플랫폼

무엇을 했는가

  • AI 기반 음악 스트리밍
  • 개인화 추천
  • 실시간 인기 차트
  • 이중 알림 파이프라인

인상 깊었던 점

발표/구성

  • 설계 목표치를 숫자로 제시
  • 가독성 매우 뛰어남
  • 성능 개선 흐름 시각화 우수
  • 개선 과정을 단계별로 보여줌
  • 학습 원칙 정리(Measurable, Executable)

기술

  • 탈퇴 후 개인정보 익명화
  • RabbitMQ 기반 대량 알림
  • Transactional 분리
  • 구조적 비효율(N+1) 먼저 해결

의문점

  • 결제 도메인 분리 이유
  • TOCTOU 개념
  • RabbitMQ 선택 이유
  • PersistService 분리 효과

튜터 피드백

장점

  • 일관된 기술 원칙 존재
  • HikariCP 병목 발견 좋음

보완점

  • 실제 노력 대비 PPT 반영 부족

내가 느낀 점

  • 단일 장애 지점(SPOF) 고려 중요
  • 쉬운 문제를 지나치게 복잡하게 풀지 말 것
  • 잘한 부분을 PPT에 제대로 녹여내야 함

전체 발표를 보며 얻은 핵심 인사이트

1. “기술 사용”보다 “문제 해결”이 중요

  • 무엇을 만들었는가보다:
    • 왜 필요한가?
    • 어떤 문제가 있었는가?
    • 왜 이 기술을 선택했는가?
    • 어떤 트레이드오프가 있는가?
      가 더 중요

2. 운영 관점이 강력한 차별점

특히 좋은 평가를 받은 요소:

  • 모니터링
  • 장애 대응
  • 외부 의존성 방어
  • 카오스 엔지니어링
  • 개인정보 보호
  • 비용 고려
  • SLO

3. 성능 개선은 “수치 + 기준”이 중요

좋은 발표 특징:

  • 목표치 존재
  • Before/After 존재
  • 테스트 조건 명확
  • 왜 개선됐는지 설명 가능

4. PPT는 기술력만큼 중요

좋은 발표 공통점:

  • 문제 → 원인 → 해결 흐름 명확
  • 숫자 중심
  • 가독성 좋음
  • 시각화 강함
  • 마지막 요약 존재

앞으로 개선하고 싶은 점 (내 액션 아이템)

프로젝트 개선

  • SLO 정의
  • 프로세스 테이블 작성
  • 외부 의존성 대응 전략 강화
  • 모니터링 중심 스토리 구성
  • 비즈니스 관점 설명 추가

발표/PPT 개선

  • 목표 수치 먼저 제시
  • 개선 과정을 단계별로 시각화
  • 핵심 문제를 먼저 선언
  • 가독성 높은 차트 사용
  • 마지막에 “핵심 개선 요약” 제공

학습 방향

  • 인덱스 다시 공부
  • Redis Sentinel
  • ShedLock
  • Kafka 운영 전략
  • 벡터 DB/Pinecone
  • SLO/SLI/SLA
  • 카오스 엔지니어링
  • 모니터링/ADOT/Jira

가장 크게 느낀 점

개발자는 단순히 기능을 만드는 사람이 아니라,
비즈니스 문제를 기술로 해결하는 사람이다.