2026-01-08 프로젝트 회고

Ckd gus·2026년 2월 3일

Project

목록 보기
3/6

2025-12-22부터 2026-01-07까지 멋쟁이사자 기초 팀 프로젝트를 마무리했다.
팀 프로젝트에 본격적으로 들어가기 전, 실무에 가까운 협업 경험을 해볼 수 있었던 첫 프로젝트였다.

프로젝트 개요

5명의 팀원이 함께 작업했고,
애자일 방식으로 여러 스프린트를 나누어 진행한 뒤 Git Flow 기반 merge 전략으로 협업했다.

내가 맡은 역할

이번 프로젝트에서 나는 다음 영역을 담당했다.

  • 인증 / 인가 (Spring Security)
  • 좋아요 기능
  • 프론트엔드 일부 구현 및 수정

가장 어려웠던 부분 – 인증 / 인가

가장 난이도가 높았던 부분은 단연 Spring Security를 활용한 인증·인가 구현이었다.
특히 세션 기반 인증 흐름과 보안 설정을 이해하고 적용하는 과정이 쉽지 않았다.

// SecurityContextRepository 연결 -> Spring Security가 자동으로 세션 관리
http.securityContext(context -> context
        .securityContextRepository(securityContextRepository())
);

인증 / 인가 구현에서 느낀 점

SecurityContextRepository를 통한 세션 관리,
requestMatchers를 이용한 API 엔드포인트 접근 제어 등은
문서만 보고 바로 이해하기에는 꽤 까다로운 부분이었다.

여러 번 테스트를 진행하고, 에러를 직접 겪어보면서
점점 Spring Security의 전체 구조가 눈에 들어오기 시작했다.
특히 인증 정보가 어떤 흐름으로 저장되고,
요청마다 어떻게 검증되는지를 이해하는 데 많은 시간이 필요했다.


좋아요 기능과 N+1 문제

좋아요 기능은 JPA를 사용해 구현했는데,
좋아요 목록을 조회하는 과정에서 N+1 문제가 발생했다.

이를 해결하기 위해 @Query 어노테이션을 사용해
직접 JPQL(SQL)을 작성하여 조회 쿼리를 최적화했다.

이 과정을 통해 ORM의 편리함뿐만 아니라,
필요할 때는 쿼리를 직접 제어할 수 있는 능력 또한
매우 중요하다는 것을 느꼈다.


프론트엔드 작업

개인적으로는 백엔드 개발자를 목표로 하고 있어서
프론트엔드 작업을 적극적으로 하고 싶지는 않았다.
하지만 팀 내에서도 부담을 느끼는 영역이었고,
자연스럽게 내가 맡아 진행하게 되었다.

  • Cursor를 활용해 백엔드 API에 맞춰 프론트 코드 구현 및 수정
  • UI/UX는 팀원분이 Stitch로 만들어준 디자인을 기반으로 작업

프론트엔드를 깊게 파고들지는 않았지만,
백엔드와 프론트엔드가 어떻게 맞물려 동작하는지 이해하는 데에는
꽤 도움이 되는 경험이었다.


느낀 점

처음 해보는 팀 프로젝트라 시작 전에는 걱정도 많았고 긴장도 됐다.
하지만 팀원분들이 모두 좋은 분들이라,
의견 충돌이 있더라도 타협점을 찾아가며 문제를 해결하는 과정이 재미있었다.

이번 프로젝트를 통해 단순히 좋은 코드를 작성하는 것뿐만 아니라,

  • 커뮤니케이션 능력
  • 협업 방식
  • 기획의 중요성

이 얼마나 중요한지도 크게 느낄 수 있었다.

다음 프로젝트에서는
이번에 아쉬웠던 부분들을 보완해서
더 완성도 높은 결과를 만들어보고 싶다.

profile
백엔드 공부중입니다.

0개의 댓글