한화시스템 BEYOND SW 캠프 19기 - 11주차 회고

후라이드·2025년 9월 28일

회고록

목록 보기
12/28

✨BEYOND SW 캠프 19기 11주차 회고

드디어 본격적으로 개발을 하기 시작했다…!

근데 정말 어렵다…어려워….

배운 내용을 복습하고 내 것으로 만들기에도 부족한 시간에

바로 프로젝트를 진행하려니 생각보다 매우 어려웠다…

생각보다 개발 시간이 부족해서 팀원분들도 모두 새벽까지도 작업을 했다… 😴

그래도 어느정도 작동하는 모습을 보면 아~~주 살짝은 기분이 좋아지긴 했지만…

생각보다 신경 쓸 것도 많고, 개발 해야할 내용도 많아서 남은 시간을

최선을 다해서 써야 할 것 같다… 🛠️

📕 새롭게 얻은 지식

CQRS 패턴

이번 프로젝트는 CQRS 패턴을 적용하였는데

복잡한 조회는 Mybatis를 사용해서,

나머지 CUD(생성, 수정, 삭제)는 JPA를 통해서 프로젝트를 설계했다.

처음에는 패키지 구조도 복잡하고, 내용을 이해하기도 힘들었었는데,

프로젝트를 작업하면서 어느정도 CQRS의 구조에 대해서 이해할 수 있었다.

CQRS의 특징

  • 명령(Command)과 조회(Query)를 분리하는 아키텍처 패턴
  • CUD(Create, Update, Delete)와 R(Read)을 다른 모델·기술로 구현할 수 있음
  • 도메인 복잡도가 높거나, 조회 성능 요구사항이 큰 시스템에서 주로 활용됨

CQRS의 장점

  1. 관심사 분리 → 비즈니스 로직(CUD)과 조회 로직(SQL 최적화)을 독립적으로 관리 가능

  2. 성능 최적화 용이 → 조회 쿼리를 MyBatis처럼 SQL 중심으로 튜닝 가능,

                                CUD는 JPA로 도메인 중심 구현 가능
  3. 확장성 → 조회 트래픽이 많을 경우 Query 모델을 별도 서버/DB로 분리해 확장 가능

  4. 복잡한 도메인 처리에 유리 → Command 쪽은 DDD(Entity, Aggregate)와 잘 결합됨

  5. 코드 가독성/유지보수성 향상 → "데이터 변경"과 "데이터 조회" 코드가 명확히 나뉨

🏆 좋았던 점

Git 협업

사실 지난 프로젝트 땐 git을 통한 협업을 거의 제대로 못 했었다.

그래서 아쉬웠었는데 이번 프로젝트는 이슈 생성부터, 각 이슈용 브랜치 생성,

PR 리뷰까지 철저하게 하면서 확실하게 협업을 해 볼 수 있었다.

잘 모르는 것들은 팀원분들이 친절하게 설명하고 도와주셔서, 더 쉽게

이해하고 따라갈 수 있었던 것 같다.

📋 아쉬운 점

AI 의존도

시간이 부족하고, 이해도도 낮다 보니 AI에 많이 의존했던 것 같다…

물론 안 썼더라면,,,, 아마 내가 맡은 파트를 끝내지 못했을지도….

그래도 AI한테 질문도 하면서 조금씩이나마 백엔드에 대한 이해도를

높였으니 다음에는 조금 더 나의 지식으로 개발을 할 수 있으면 좋겠다..

📌 앞으로의 목표

프로젝트 마무리!

백엔드 프로젝트를 하면서 확실히 Mybatis와 JPA와 친해질 수 있었다!

얼마 남지 않은 시간 동안 최선을 다해서 프로젝트 개발을 해서

멋진 프로젝트 작품으로 마무리 할 수 있으면 좋겠다~

profile
라이언을 좋아하는 초보 개발자의 보금자리

0개의 댓글