롤링 프로젝트 후기
코드잇에서의 첫 프로젝트, 그 후기.
후기에 앞서,
저는 첫 국비학원을 수료한 이후에 독학으로 공부해왔지만
한 가지 확실하게 알게 된 건, 스스로 공부하는 방법을 제대로 알지 못했었다는 겁니다.
그런 상태로 시간을 보내고 나니, 후회가 많이 되었습니다.
장기적으로 이어지는 개발 공부와 취업 준비로 ‘내가 지금 공부하고 있는 방식이 맞는 것인가’ 라는 의문이 들었습니다.
하지만 이미 지난 시간을 되돌릴 수는 없으니 저는 계속 스스로의 방식에 의구심을 품으며 개발 공부를 했습니다.
지난 24년 12월 중순 어느 날, 저는 부트캠프 모집글을 봅니다.
코드잇 부트캠프에서 모집하는 두 가지,
기본 6개월 과정과 2개월 단기 심화과정 모집글이었습니다.
기존에 프로젝트 경험을 몇 번 했었고, 공부해 온 시간도 있고 하니
처음에는 단기 심화과정을 신청할까도 했습니다만,
스스로 공부하는 방법조차 제대로 확신을 가지고 있지 못한 채로
심화된 내용을 머리에 집어넣어봤자 또 다시 아쉬움을 느낄 것 같아 기본 과정을 신청합니다.
(별개로 학습공간을 제공 받을 수 있어 집에서의 공간 분리를 할 수 있었어요. 😆)
코드잇 부트캠프는 파트를 총 4번에 나누어
팀원들을 섞는 방식으로 커리큘럼이 진행됩니다.
기존에 파트1에서 HTML, CSS, JavaScript 웹 기초에 대한 내용을 공부하는 과정이 있었고
이번 파트2에서 리액트와 함께 기초 프로젝트를 시작하게 되었습니다.
기초 프로젝트는 과정 중 총 3번 진행되는 프로젝트 중 첫 번째 프로젝트인데요!
3/6(목)~3/21(금)까지 총 18일간 진행되었고,
마무리 발표까지 무사히 잘 마칠 수 있었습니다.
후기를 시작하기에 앞서
제가 가고자 하는 방향을 잘 따라와주신 팀원 분들,
코드리뷰로 사소한 부분까지 디테일하게 봐주셨던 멘토님,
프론트엔드 개발에 집중할 수 있게 디자인 및 API 등을 제공해주신
코드잇 운영진분들과 협력사께 감사의 말씀을 드립니다. 🙇♂️
프로젝트 시작부터, 개발, 마무리까지
프로젝트를 시작하면서 팀원들과 얘기를 나눠보니
기존에 프로젝트 경험이 있었던 것은 저 밖에 없어서
제가 팀장을 맡아 이번 프로젝트를 이끌어 보게 되었습니다.
파트2의 팀장님이 따로 계셨지만, 팀장님께서는 육아 휴직 상태로 바쁘셨습니다.
이참에 제가 프로젝트를 리딩해보는 경험을 하면 좋겠다고 생각이 들어 나서게 됐습니다. 하하 😅
프로젝트의 흐름은 아래와 같았습니다.
| 주제 선정 -> 컨벤션 협의 -> 요구사항 분석 및 담당 분배 -> 개발 진행 -> 테스트 -> 버그 수정 -> 발표 |
주제 선정
코드잇에서 제공해주시는 주제들이 4가지 정도 있었습니다.
그 중에서 저희 팀은 온라인 롤링페이퍼 서비스를 선택했습니다.
투표로 진행한 것도 있었지만,
서버 API와 연동이 되면서, 모달, 드롭다운 등의 UI 측면에서도
다른 주제보다 더 많은 것을 경험할 수 있겠다고 생각이 들어서였습니다.
주제가 선정되고 컨벤션을 협의하기 전에
저는 저를 포함해 모든 팀원이 무언가 하나 이상씩은 확실히 얻고 가셨으면 좋겠다는 생각을 했고
각자 이번 프로젝트를 통해 어떤 경험을 해보고 싶은지 얘기를 나눠봤습니다.
각기 다른 목표
여러 얘기가 있었습니다.
리액트를 공부하시고 난 뒤, 처음 프로젝트를 해보는 터라
“리액트 자체를 그냥 많이 사용해 보고 싶다.” 라는 얘기도 있었고,
“프로젝트를 시작하기에 앞서 컨벤션을 정해두는 게 좋다는 얘기가 있던데,
그냥 좋다고 해서가 아니라 합리적인 이유를 통한 협의로 제대로 컨벤션을 정하고 싶다.”는 얘기 등이 있었습니다.
(이 부분은 저도 공감하는 바였습니다. 하핳 😄)
아래와 같은 목표로 정리 해볼 수 있겠습니다.
- 리액트를 최대한 많이 사용해보고 싶다.
- Vite를 사용해보고 싶다.
- 단순 구현이 아닌 문제 해결 능력을 기르고 싶다.
- 협의를 통한 합리적인 컨벤션 수립해보는 경험을 하고 싶다.
- 프로젝트를 수월하게 진행할 수 있도록 다른 팀원들을 돕는 경험을 해보고 싶다.
기술 스택 및 컨벤션 협의
이후 컨벤션을 정하기로 합니다.
제 개인 경험으로 컨벤션을 제대로 협의하지 않으면,
프로젝트 도중에 여러가지 문제가 발생했었기 때문에 최대한 많은 것을 정하려고 했습니다.
(지금 생각해보면, 제 욕심이었다는 생각도 들었지만 필요하다고 생각했습니다. 😅)
총 4일간, 전체 기간의 20%가 되는 기간을 컨벤션을 협의하는 데 사용했습니다.
각 항목마다 팀원 한명 한명에게 의견을 물어보면서 정했습니다.
(팀원 분들께서 이렇게까지 해야하나 생각하셨을수도 있었을 텐데, 다들 불평없이 따라주셔서 너무 감사했어요. 😭)
컨벤션 협의하는데에 4일을 불태운 흔적들 (노션에서 일부 발췌)
- 기술 스택 (React, CSS Module)
- 협업 툴 선정
- 네이밍 컨벤션, 코드 컨벤션, 커밋 컨벤션, 폴더 구조
- 깃 브랜치 전략, PR 규칙, PR 프로세스 정립
- 이슈 템플릿, PR 템플릿
- 팀 규칙, 코어 타임 지정, 일일 스크럼 내용
요구사항 분석 및 담당 분배
사실 요구사항 분석은 특별히 할 것이 많지는 않았습니다.
이미 제공받은 디자인 및 노션에 구현 페이지별로 요구사항이 정리되어 있었기 때문이죠!
하지만 디테일한 부분까지는 아니라서 각자 피그마 및 코드잇 제공 노션을 참고하며
각자의 방식대로 요구사항을 확인했습니다.
그리고 세부적으로 구현할 단위를 나누어 각 담당자를 지정했습니다.
그리고 개발 시작!
그리고 드디어 3/8(토)부터 개발을 시작했습니다.
다른 팀원분들이 개발에만 신경쓰실 수 있도록
프로젝트 초기 설정(패키지 설치, ESLint, Prettier 설정 등) 및
GitHub 레포지토리 생성 및 PR 규칙 설정 등을 제가 도맡아 수행했습니다.
초기 설정이 모두 완료된 후,
팀원 모두 담당하게 된 컴포넌트와 페이지를 각자의 계획과 방식대로 구현을 시작합니다.
구현 단위로 이슈를 생성하고, 개발이 완료되면 PR을 등록하여
다른 팀원 2명에게 승인을 받아야만 main 브랜치에 병합할 수 있도록 했습니다.
이 때, PR의 리뷰어와 담당자 설정이 누락되는 경우가 발생하여
이를 GitHub Actions로 해결하려 고군분투했던 일도 있었는데요!
다른 글로 한번 정리해보겠습니다. 😅
멘토님께서도 작성한 코드를 기반으로 아주 디테일하게 코드리뷰를 해주셔서
‘코드를 작성할 때, 훨씬 더 많은 고민이 필요하구나’라는것도 느꼈습니다. 🙏
테스트, 그리고 버그 잡기
팀원 모두 힘내어 구현을 해주셨고, 드디어 프로젝트를 1차적으로 완성합니다! 👏
디스코드로 화면을 공유하여 Vercel에 배포하는 과정을 팀원들과 함께 보며 배포까지 완료합니다.
하지만 처음 한 번에 모든 기능을 정상적으로 동작시키도록 구현한다는 것은
기적에 가깝다는 것을 알기 때문에 통합테스트를 진행했습니다.
자신이 담당한 페이지의 요구사항 및 정상 동작에 대한 케이스를 정리하도록 요청드렸고,
정리가 완료된 이후, 실제 배포된 페이지를 기준으로 두 명의 팀원이
- 예상한 동작과는 다르거나
- 요구사항과는 맞지 않거나
- 좀 더 개선할 수 있는 방향에 대해서
발견되는 사항을 모두 별도의 리스트를 작성했습니다.
이 리스트를 기준으로 다시 버그를 수정하는 과정을 거치게 됩니다. 이렇게 버그를 수정하면서 한층 더 나은 프로젝트를 만들었다고 생각합니다. 👍
마무리 발표
이런 과정을 거쳐 결국 발표 전날까지 왔습니다. 하하 😅
글로 작성하다 보니 세부적인 것들이 생략되어 모든 과정이 원활히 이뤄졌겠거니 보실 수도 있겠지만,
기존에 예상했던 일정이 연기 되거나, 생각지 못한 문제가 발생하는 등 사건 사고가 종종 있었습니다. 😅
그래도 최선을 다해서 마무리할 수 있도록 발표 자료를 작성합니다.
각 팀원분들에게 내용을 전달받아 새벽까지 발표 자료를 만들었습니다. 😱
팀원분들께서는 혹여나 필요한 도움이 있을까 같이 디스코드에서 기다려주시며 응원을 해주셨고
제출 일정에 늦지 않게 발표 자료까지 제출할 수 있었습니다. 👏👏
(도중에 문제가 생겨서 처음부터 다시 작성하는 일이 있었습니다만, 그래도 잘 마무리 할 수 있었어요! 😂)
이후 몇 시간 잠을 잔 뒤에 발표까지 모두 마칠 수 있었습니다.
팀원 모두 고생하신것을 알기 때문에 많은 내용을 발표자료에 담게 되었는데요.
발표, 프로젝트 시연, Q&A까지 15분 내로 끝내야 해서
좀 더 중요한 부분을 효율적으로 잘 전달하지 못한 것 같아 아쉬운 마음이 있었습니다. 😢
회고
이렇게 장장 18일간의 기초프로젝트가 끝나고 팀원분들과 회고 시간을 가졌습니다.
어떤 점이 잘한 것 같고, 아쉬웠고, 다음에는 어떤 점을 개선해 볼 것인지 말이죠. 🤔
기초프로젝트, 어땠나요?
좋았던 점
- 첫 팀 프로젝트를 통해 협업 방식과 실무 감각을 익힐 수 있었다.
- 팀원들과의 원활한 소통과 긍정적인 분위기 속에서 프로젝트를 잘 마무리할 수 있었다.
- 리액트 학습 내용을 실제로 적용하며 실전 경험을 쌓을 수 있었다.
- 팀원들의 코드와 PR을 통해 자신의 부족한 부분을 인지하고 배우는 계기가 되었다.
- 실력 차이를 통해 서로에게 긍정적인 자극과 배움이 되었다.
아쉬웠던 점
- 프로젝트 초기 세팅과 환경 구성에 시간이 많이 소요되어 개발에 집중할 시간이 부족했다.
- 강의, 개인 과제, 프로젝트 병행으로 전반적으로 시간 관리가 어려웠다.
- 개인 실력 부족으로 프로젝트 퀄리티 향상에 충분히 기여하지 못한 것 같다는 아쉬움이 있었다.
개선할 점
- 공부 방법을 개선해 더 깊이 있게 이해하고 효율적으로 학습할 계획이다.
- 다음 프로젝트에서는 시간 분배를 잘하고, 의견을 더 적극적으로 내며 참여도와 코드 완성도를 높이고자 한다.
- 꾸준히 학습을 유지하며 Next.js 등 새로운 기술을 병행 학습하고, 코드 리뷰를 받을 수 있도록 노력할 예정이다.
- 팀 내 소통과 질문 문화를 더 활발하게 만들 수 있도록 노력하고자 한다.
나는 어땠을까?
좋았던 점
- 프로젝트 전반을 이끌며 리더십과 협업 경험을 쌓았고, 컴포넌트 설계와 팀 커뮤니케이션에 대해 깊이 고민해볼 수 있었다.
아쉬웠던 점
- 개인적으로 목표했던 완성도를 만족하지 못했다.
- 팀원들의 적극적인 참여를 좀 더 이끌어내지 못했다.
- 학습과 병행하지 못한 부분이 아쉬웠다.
개선할 점
- 더 완성도 높은 프로젝트를 위한 프로세스를 고민하여 적용하고 싶다.
- 팀원들의 참여를 이끌어 낼 수 있는 리더십을 더 길러야 겠다.
정리
이렇게 짧지만 많은 경험을 했던 기초프로젝트 후기를 정리해봤습니다.
다른 팀원분들이 개발에만 집중할 수 있도록 서포트하는 것을 목표로 했었는데요..!
다행히 모두 긍정적인 평가를 해주셔서 너무 좋았지만, 개인적인 아쉬움이 있어
100점 중 70점 정도로 스스로 줄 수 있겠다고 생각합니다. 하하 😂
앞으로도 다양한 개발과 관련된 공부, 활동들에 대한 것을 기록으로 남겨 보도록 하겠습니다.
혹시 어떤 프로젝트인지 궁금하시다면, 아래 링크를 참고해주세요.
그럼 여기까지 읽어주셔서 감사합니다. 🙌
Reference
잘못된 내용이 있다면, 댓글이나 메일 등으로 알려주시면 반영 하겠습니다. 😊







