드디어 데브코스의 하이라이트!! 팀 프로젝트를 진행했다. 기획부터 디자인, 개발까지 모두 진행해야했고 개발 기간은 17일이였다.
프로젝트의 주제는 SNS 서비스였다. 주어진 시간 내에 프로젝트를 수행하는 과정도 중요하기 때문에 프로젝트의 구체적인 요구사항들은 시작일 전에 알려주지 않으셨다. SNS 서비스라는 키워드를 생각하며 팀원들과 프로젝트를 시작하기 전에 아이디어 회의와 기존 SNS 서비스들을 조사하고 팀원들과 공유했다.
조사를 하면서 UI와 SNS 기능들을 정리했고 아이디어 회의를 진행했다.
회의를 하던 중 데브코스와 같은 IT 행사들을 몰라서 참여하지 못했던 불편함과 블로그를 써도 공유할 곳이 마땅치 않은 불편함이 떠올랐다.
그래서 우리는 각종 IT 이벤트들과 본인의 블로그 글을 공유하여 피드백을 받을 수 있는 서비스 DevIn(Development + Information)을 구현하게 되었다.
프로젝트 시작날이 되었고 필수 요구사항들이 주어졌다.
우선 요구사항에 맞게 page와 router를 구성하고 간단한 와이어프레임을 그리고 팀원들과 생각을 맞추는 작업을 했다.
그 다음엔 기획서를 작성했다. 기획서에는 우리 서비스가 왜 필요한지 설득하는 내용이여야한다는 멘토님의 조언으로 기획의도와 유저스토리를 기획서에 녹였고 와이어프레임과 구현할 기능 요구사항을 정리했다.
👉 DevIn 기획서
본격적으로 개발에 들어가기 전에 팀 규칙을 정했다.
팀 규칙은 기술 스택 정의와 Code Convention, Git 규칙 등을 정리했다.
👉 DevIn Team Convention
역할은 페이지에 따라 4가지로 나눴다.
나는 여기서 search 페이지를 맡았고 4일차부터 본격적으로 개발에 들어갔다.
내가 구현한 기능은 다음과 같다.
1. 사용자 목록 불러오기 (10명씩)
2. 사용자, 게시물 검색 기능
3. 사용자 프로필
4. 팔로우, 팔로워 기능
프로젝트를 진행하면서 생겼던 문제와 해결방법은 Notion에 정리했다.
👉 프로젝트 문제와 해결방법
👉 DevIn 보러가기
👉 DevIn 깃허브
React를 써서 처음으로 만들어 본 프로젝트다 보니 부족한 점도 많았고 깨달은 것도 많았다. 개인적으로 개발이 제일 재미없을 때는 문제가 생겨서 막히고 그 문제가 며칠이 지나도 해결되지 못할 때인데 팀원들 덕분에 문제가 금방 해결되고 기능이 원하는 대로 구현돼서 너무 재미있는 프로젝트였다.(물론 막판엔 밤새 코딩해서 힘들긴했지만...)
추가로 프로젝트의 API를 구축해주신 개발자 선협님이 인상적인 프로젝트가 있으시냐는 질문에 몇 가지를 말씀해주셨는데 우리 프로젝트도 말씀해 주셔서 너무 기분 좋았다ㅠ API 요구사항을 충족해서 구현하려고 많이 노력했는데 그 부분을 좋게 봐주셨고 인상깊으셨다고 한다! 부족한 코드지만 데브 코스가 끝난 후 다시 코드를 보면서 내가 더 많이 성장했다고 느낄 수 있었으면 좋겠다.