
고급 프로젝트을 앞두고, 그 전 진행했던 코드잇 중급 프로젝트를 정리해보려 한다..! 👀
초급 프로젝트에서는 기본기를 다지고 협업을 경험해보았다면, 이번에는 새로운 기술들을 도입하고 조금 더 깊은 개발 경험을 쌓을 수 있었다.
배우는 게 정말 많았고, 재밌게 몰입할 수 있었던 프로젝트였다!👍
모뉴(MoNew)
모뉴는 다양한 뉴스 출처를 통합하여 관심사 기반으로 뉴스를 저장하는 뉴스 통합 관리 플랫폼입니다.
관심 있는 주제의 기사가 등록되면 실시간 알림을 받고, 댓글과 좋아요를 통해 다른 사용자와 의견을 나눌 수 있는 소셜 기능도 함께 제공됩니다.
⚙️ Backend Stack
📦 Framework
├── Spring Boot 3.x # 메인 애플리케이션 프레임워크
├── Spring Data JPA # ORM 및 데이터 접근
├── Spring Batch # 대용량 배치 처리
└── Gradle # 빌드 및 의존성 관리 도구
🗄️ Database
├── H2 Database # 개발/테스트용 In-memory DB
├── PostgreSQL # 운영 환경 RDBMS
└── MongoDB # 문서 지향 NoSQL DB
📚 Documentation
├── Swagger/OpenAPI 3.0 # API 문서 자동화
└── Notion # 프로젝트 문서 및 협업 기록
└── Jira # 일정 및 이슈 관리
🔧 Development Tools
├── IntelliJ IDEA # 통합 개발 환경(IDE)
├── Git & GitHub # 버전 관리 및 협업
├── Discord # 팀 커뮤니케이션
└── Postman # API 테스트 도구
🚀 Deployment & Monitoring
├── AWS # 클라우드 인프라
├── Docker # 컨테이너 기반 배포
├── Grafana # 모니터링 시각화
└── Prometheus # 메트릭 수집 및 모니터링
N+1 → 2로 최적화@Where 필터링의 한계@Where로 is_deleted=false를 필터링 → 모든 조회에 일괄 적용되어 유연성 부족@Where 제거 후 QueryDSL, JPA 메서드 기반으로 조건을 명시적으로 관리Article)를 반복 수정하면서 StaleObjectStateException 발생task-definition.json 인식 불가deploy Job에서 파일을 찾지 못함deploy Job에도 checkout 단계 추가CURRENT_TIMESTAMP 타입 불일치Instant 필드에 CURRENT_TIMESTAMP를 매핑하면서 H2에서 타입 오류 발생 Spring Boot, JPA, QueryDSL,Spring Batch, PostgreSQL, Docker, AWS 등 다양한 기술 스택 활용이번 프로젝트는 여러모로 새롭게 경험해보는 게 많아서 재미있었다.😊
특히 테스트 주도 개발(TDD), CI/CD 자동화, 무중단 배포 같은 실무 기술들을 직접 경험해볼 수 있었는데, 이론으로만 접했을 때는 잘 와닿지 않던 개념들이 실제로 구현해보니 훨씬 이해가 잘됐다.💡 (TDD는 정말 쉽지 않은 녀석이었다...🥹)
새로운 툴도 다양하게 활용해봤다. 멘토님 추천으로 처음 도입한 Jira는 작업 흐름을 한눈에 파악할 수 있어서 협업에 유용했고, AI 코드 리뷰 툴인 CodeRabbit은 PR 요약, 수정 제안, 다이어그램 생성까지 자동으로 해줘서 코드 리뷰가 한결 편해졌다. 덕분에 코드 품질도 더 좋아졌다. (코드래빗 is God🧎♀️)
무엇보다도 기억에 남는 건 팀원들과의 협업이었다.🤝
이슈가 생겼을 때 다같이 고민하고 해결해 나가는 과정이 인상 깊었고, 새벽이나 주말에도 적극적으로 참여하는 팀원들을 보며 자극도 많이 받았다.🔥
서로 새로운 기술이나 지식을 적극적으로 공유하는 분위기 속에서 배우는 것도 많았고, 팀 분위기가 좋아서 프로젝트 기간 내내 즐겁게 개발할 수 있었다. 🙌 (1조 할머니 보쌈팀 최고...👍)
아쉬운 점이 있다면, 팀원들의 모든 코드 리뷰를 꼼꼼히 해보며 코드들을 전부 파악하고 싶었는데 그러지는 못한 것 같아 조금 아쉽다.
이제 고급 프로젝트를 앞두고 있는데, 중급 프로젝트의 경험을 바탕으로 더욱 수월하게 진행할 수 있을 것 같아 기대가 된다. 정말 많이 배우고 성장할 수 있었던 프로젝트였다!☺️