토이 프로젝트 일지 9: 음악 스트리밍 마이크로 서비스 만들기
그림 1. 이벤트 스토밍 설계도 그림 2. 프론트엔드 페이지들 1. 시작 계기 플랫폼 비즈니스 교육에서 수행되는 1차 팀 경진대회에서 조장을 맡아서 구현하게 된 서비스다. 이 경진대회에서 1등으로 대상을 받게 되었다. 2. 프로젝트 개요 가. 프로젝트 소개 1. 프로젝트 유형: 팀 토이 프로젝트(총 8명) 2. 구현 서비스: 음악 스트리밍 서비스 3. 개발 환경: VS Code, Msaez 4. 활용기술 프론트앤드: React, MUI 백엔드: Spring-Boot, JPA, MySQL 구조설계: MSA(E vent Driven Architecture) , CQRS, SAGA, Kafka, JWT 빌드 및 배포: EKS 협업: Slack, Trello, GitWiki 5. 개발 기간: 2024.01.16 ~ 2024.01.30 6. 담당 역할: 팀장(일정 관리, 작업 분배, 코드 평가 및 통합 작업, 프론트엔드, PPT 작성, 발표) 3. 프로젝트 구현 가. 팀 협업 및 역할 분담 그림 3. 팀 협업의 핵심요소 이 팀 프로젝트에서 제일 고민을 많이 했던 부분은 팀장을 포함해서 총 8명이나 되는 팀을 도대체 어떻게 해야 잘 운영할 수 있는지에 대한 문제였다. 거기에다 팀원들은 서로 시간이 맞지 않아서 오프라인으로 만나기도 힘들었기에 이 문제는 더욱 풀기 힘든 문제였었다. 하루 종일 이에 대해서 고민을 해본 결과, '요즘 우아한 개발'이라는 책을 참조해서 팀 협업을 위해서는 위의 4가지의 핵심 요소를 기반으로 설계해야 한다는 결론이 이르렀다. 그림 4. Trello로 활용한 '명확한 업무 분담 및 추적' 이렇게 팀원이 많을수록 개개인의 책임이 옅어져서 참여도가 떨어지게 될 것으로 생각해서 개개인에게 명확하게 업무를 분담시키고, 개개인의 업무를 철저하게 관리하는 것이 중요하다고 생각했다. 이를 위해서 에자일의 ...