길고도 짧았던 2주 간의 프로젝트
잘 만들어진 사이트를 클로닝하면서 스스로 공부하는 것이 이 프로젝트의 목표!
백엔드 3명, 프론트엔드 3명으로 이뤄진 우리팀의 첫 주제는 비마이펫 라이프라는 애완동물 관련된 사이트
하지만...
사이트 자체가 여기저기서 끌어와서 쓴 요소들이 너무 많았고 로그인 페이지만 3개로 구성되어 있었으며 그 각각의 로그인 페이지를 통해 들어가는 회원가입 사이트도 달랐고 어디서 회원가입을 했느냐에 따라 기능도 조금씩 달랐다...
개발이라는 것을 접한지 얼마되지 않은 우리가 봐도 참 잘 만들어지지 못한 사이트였고 회의 때부터 난관에 봉착!
하지만 우리팀은 왜 이런 주제가 선정되었는지 불만을 토로하기 보단 우리가 더 잘 만들어보자는 마음으로 빠르게 사이트 클로닝에 들어갔다.
사이트가 사용하는 서버 자체가 좋지 않아 백엔드팀은 크롤링에 애를 먹었고 프론트의 경우 잘 만들어진 대기업 사이트를 따라하는 것보다는 쉬웠지만 사이트 자체에 내제된 오류들을 우리들이 더 잘 만들어 나가려고 노력하였다.
그렇게 3일차 저녁 6시쯤
, 갑자기 서버 정지
우리는 멘붕에 빠졌고 재접속은 되지 않았다...
우리가 추측한 서버 정지 이유 :
트래픽이 없던 사이트가 트래픽이 발생하고 크롤링으로 인한 서버 접속에 아마도 해당 사이트 쪽에서 우리가 사용하는 IP를 차단해버린 것
이런 사건이 터지면서 하나 둘 팀원들의 속마음이 새어나오기 시작했다.
그 속마음은 팀원 모두 선정된 주제에 불만이 있었다는 것
결국 급하게 주제를 변경하였고 팀원 중 한 분이 제시했던 롤렉스 사이트를 클로닝하기로 했다.
정말 세세한 부분까지 신경써서 만들어진 이 사이트!
프로젝트 시작 전인 일요일 회의한 일수까지 따지면 우리는 다른 팀에 비해 이미 4일이 뒤쳐져 있는 상태..
아무리 사이트 클로닝이지만 프로젝트 주제 선정의 중요성을 다시 한번 깨달았고 2차 프로젝트의 경우 회의하면서 사이트를 잘 살펴본 후, 문제가 있다고 판단되면 곧바로 바꾸기로 우리 모두 마음먹었다.
백엔드는 프론트엔드를 몰랐고,
프론트엔드는 백엔드를 몰랐다...
시간이 부족한 만큼 우리팀은 모두 정신없이 달렸다.
그래 달리기만 했다. 정말 정신없이
구현하고자 했던 페이지
메인페이지
롤렉스 컬렉션 페이지
시계 설정하기 페이지
시계 골라보기 페이지
Day-date 상세 페이지
시계 상세 페이지
플러스 중요한 로그인, 회원가입 페이지 구현을 위해 없던 로그인과 회원가입 페이지까지 구현하기로 결정했다.
너무 짧은 시간, 너무 많은 것을 담으려고 했던 것이 문제였을까..
정말 대단하게도 다른 팀에 비해 적지 않은 페이지를 구현하기는 했다!
하지만 배우는 것 없이 페이지 구현만 했다는 것이 아쉬운 점이었다.
백엔드분들은 시계 상세 페이지에 중점을 두고 크롤링을 하였고
프론트엔드분들은 시계 설정하기 페이지에 중점을 두고 가장 중요한 시계 상세 페이지는 최대한 뒤로 미루고 쉬운 페이지부터 완성해나가기 시작했다.
결국 시계 상세 페이지는 구현조차 하지 못했고
페이지 양만 욕심낸 탓에 footer도 구현하지 못해 양은 많지만 제대로 모든 페이지가 구현되지는 못 하였다.
의사소통의 중요성 :
물론 팀원들이 정말 좋았고 우리는 많은 얘기를 나눴다.
하지만
돌아보니 백엔드와 프론트엔드 간에 서로 어떤 부분을 중점적으로 생각하는지, 현재 진행상황이 어떻게 되는지에 대해서는 소통이 부족했었던 것 같다.
이것은 우리의 팀워크 문제라기보다 서로의 역할에 대한 이해불충분이 문제였다.
양보다는 질! :
프론트엔드의 함께 했던 나머지 두 분의 팀원 모두 정말 실력자였다!
그럼에도 불구하고 짧은 시간에 많은 것을 담기에는 어려움이 따랐다.
다음 프로젝트는 양보다는 완성도를 높이기 위해서 약간의 마찰이 있을 수 있더라도 더 자주 소통하고 목표 지점을 확실하게 하기 위해 노력해야 한다는 것을 깨달았다.
컴포넌트를 최대한 나눠서 컴포넌트 재활용성 높이기 :
페이지를 기준으로 나누는 것이 아닌, 모든 페이지를 살펴 본 이후 컴포넌트로 나누어 각 컴포넌트를 기준으로 나눠 각각 구현하였고
처음부터 event 기능 구현보다는 보이는 것 자체에만 집중해서 빠르게 만든 후, event 기능 구현
이전에 코딩 공부를 해왔던 분들도 많지만 그렇지 않은 분들도 있기에
4주만에 react의 event를 자유자재로 다루기란 어렵기에 서로의 도움이 필요하다.
비슷한 기능을 구현하고 있는 팀원 간에 서로 의견을 교환하고 도와주며 구현하니 각자의 발전도 눈에 보이고 기능도 금방 구사하게 되었다.
다른 팀들이 구사하는 기능들도 눈여겨 보기! :
다른 사이트지만 비슷한 기능들이 많고, 같은 팀원들끼리만의 토론으로는 답이 나오지 않는 경우가 있기에 프로젝트 중간중간 다른 팀들이 구현하고 있는 페이지를 살펴보면서 필요한 경우 물어보고 도움을 청해야 배우는 것이 배로 늘어난다.
- 끊임없이 프론트엔드와 백엔드가 서로 어떤 페이지를 구현하고 있는지 소통하기
- 페이지양에 욕심내지 말고 완성도에 욕심내기
- 다른 팀의 git을 클론해와 사용하고 있는 기능들 배우고 물어보기
2주 동안 롤렉스팀 정말 수고 많았고 끝까지 달려줘서 감사합니다.
같이 팀으로 일해서 진심으로 즐거웠고 참 많이 웃으면서 프로젝트 진행했네요(:
동기 사랑!, 나라 사랑!