2차 프로젝트가 끝났다. 내가 제안했던 사이트인 스테이폴리오가 많은 투표를 받아 감사하게도 프로젝트를 진행할 수 있게 되었다. 스테이폴리오는 수많은 여행 플랫폼 중 나의 시선을 끄는 매력 포인트가 많았다.
첫번째로 정말 까다로운 조건으로 숙소를 큐레이팅하고 있다는게 한눈에 보였고, 이는 고객의 니즈를 심도있게 고민한다는 의미라고 생각했다.
두번째로 감성적인 UI와 디자인, 다양한 조건 필터링을 구현해보고 싶었고, 더불어 성장 가능성이 높은 플랫폼이라고 판단되었다.
✔️ 결과물 시연 영상
✔️ Github Frontend
✔️ Github Backend
총 11일 : 21.01.10 - 22.01.20
프론트엔드 3명 | 백엔드 2명
Used DevTools
JavaScript(ES6) | React.js | Styled-component
Collabo Tools
Git&Github | Slack | Trello
Libraries
React-router-dom | MUI Slide
Code Formatter
eslint | prettie
이전의 프로젝트에 비해서 많은 양을 배웠다고 생각하진 않지만, 개발자로서 실무에서 사용하는 내용을 학습했다. 다만 아직 쿼리스트링과 라이브리러, Recoil은 완벽하게 소화를 못하고 있다. 지금 다시 봐도 어려운데, 기업협업 이후 따로 정리하며 완전히 내것으로 소화해야겠다. 이해를 못하는 나에게 너무 화가 난다..
협업을 하며 MUI 라이브러리를 사용했는데, 버전의 의존성을 고려하지 않고 만들어서 merge를 하는 과정에서 문제가 발생했다.
분명 같은 repo에서 clone받아 프로젝트를 진행했음에도 리액트의 버전이 달라 충돌이 일어난 것이다. 직접적으로 연동된 팀원과 나의 버전 중 누구를 수정하는지에 대해 회의를 진행했고, 나의 버전을 다운그레이드 하기로 결정되었다. 하지만 엎친 데 덮친격으로 내가 사용했던 MUI Slider 컴포넌트가 리액트 버전 16를 지원하지 않았기에, 순수 CSS를 사용하여 직접 구현하여 문제를 해결했다.
이를 통해 라이브러리는 언제나 신중하게 사용해야하고, 버전의 의존성을 항상 고려해야 한다는 것을 알게 되었다. 또한, 가장 중요한 버전관리와 package-lock.json 파일을 수시로 확인하며 초기세팅과 비교시 문제가 없는지 확인의 필요성을 알게되었다.
이전 프로젝트에서 팀의 성과를 높일 수 있었던 방법은 스탠드업 미팅이었다고 생각한다. 모든 팀이 trello를 활용했지만, 우리팀은 조금 더 효율적이고 체계적으로 운영되었으면 하는 마음으로 이전의 방식과 노하우를 공유했다.
나뿐만 아니라 모든 팀원들도 협업에 대한 중요성과 효율성을 인지하고 있었기에 공유했던 틀을 잘 따라와주셨고, 더 좋은 아이디어로 이전보다 현실적인 체계를 잡을 수 있었다.
매일 오전 10시 스탠드업 미팅 전까지 4가지 항목 작성하기
블로킹 포인트
- 각자 전날까지 진행했던 내용에 대한 전반적인 공유
- 어떠한 문제를 만났고, 그에 대한 자신의 고민 및 해결하기 위한 노력 공유
- 해결책을 찾았다면 팀원들과 공유, 찾지 못했다면 함께 해결하기 위해 공유
어제 작업한 내용
- 디테일하게 자신의 진행상황 작성 및 공유
- 직관적으로 팀원들의 상황을 이해할 수 있으며 궁금증, 소통을 해결할 수 있는 파트
오늘 작업한 내용
- 개인별로 하루의 계획을 공유
- 하나의 파트에서 정체되어 다른 업무에 방해가 되는 사항이 있는지 체크
- 마감시간안에 해결하지 못할것으로 예상되는 업무 -> 팀원들과 협의 후 정리(다른 팀원이 진행 or 과감하게 패스)
- 전체적인 스케줄을 맞추며 마감시간안에 가능여부 체크
기타 공유 사항
- 다른 팀원에게 확인 및 질문사항 정리 후 공유
- 미팅 전 다른 팀원이 작성한 내용 전반적으로 확인
이렇게 체계적인 틀을 미리 잡아놓은 후 보다 가치있는 하루를 보내기 위해 노력했다. 특히, 오전 10시 스탠딩 미팅에서의 다른 팀원들은 집중하지 못하거나 토론 주제가 삼천포로 빠지는 경우가 많았지만, 우리팀은 항상 15분안에 깔끔하게 미팅을 완료했다.
덕분에 우리팀의 스탠딩 미팅이 가장 효율적이고 깔끔하다는 멘토님들의 칭찬과 함께 성공적으로 프로젝트를 마무리 할 수 있었다. 모두가 마음을 쓴 만큼 유연하고 탄탄한 분위기 속에서 원활하게 진행할 수 있어 기업협업에서도 긍정적으로 검토해볼 수 있는 협업 방식이라고 생각한다.
동기들 모두 프로젝트 이후 홀가분한 마음으로 기업협업을 준비했지만, 나는 그렇지 못했다. 협업 링크에서 확인할 수 있듯이 내가 핵심 페이지를 맡았음에도 부족한 실력으로 처음 목표했던만큼 구현하지 못했다. 말을 안했지만 자괴감이 들어 괴로웠고, 지금 후기를 쓰면서도 마음이 좋지 않다.
하지만 이렇게 고민하고 힘들어한다고 달라지는 것은 없다. 내가 부족한 부분은 더 집요하게 학습해서 내것으로 만들면 된다. 강한 부정은 강한 긍정이라는 말이 있듯, 부정적인 마음을 오히려 좋아라고 속으로 외치며 성장의 발판으로 삼아 더 레벨업 할 수 있는 내가 되려고 노력했다.
이번 프로젝트를 통해 어렵고 힘든 일에 직면했을때 어떤 자세와 태도를 통해 어떻게 멘탈케어를 해야할지에 대해 배울 수 있었다. 속으로 외쳐! 오히려 좋아!
모두의 찝찝함을 느낄 수 있는, 애증의 이름 리팩토링.. 끝날때 까지 끝난게 아니다!
중간중간에 코드 리뷰를 받으며 리팩토링을 진행하려 했지만? 시도하지도 못했다. 학습하고 구현하기도 시간이 부족했다. 잠을 줄여 하루에 5시간정도 취침하고 나머지 시간은 코딩에 쏟아부었지만, 너무 마음이 급했던것이 문제인가 쉽지 않았다.
프로젝트 repo를 fork한 상태로 내 git repo에 가져왔으니, 기업협업 이후 취업을 준비하며 조금씩 정리하려고 한다. (그때는 시간이 있길 바라며ㅠㅠ 이력서..)
연이은 프로젝트로 떨어질대로 떨어진 체력과 처참한 멘탈 상태로 모두 예민해지기 쉬운 환경에서 시작한 프로젝트였다. 그럼에도 유쾌하고 부드러운 분위기에서 프로젝트를 수행할 수 있었다.
이번 프로젝트에서 내가 검색 페이지를 맡았다는 이야기를 듣고 누군가는 '주제도 모르고 까불고있네'라고 생각했을지도 모른다. 솔직히 너무 어렵긴했고, 지금도 완벽하게 소화하지 못했다.
하지만 어려웠던 만큼 양분이되는 지식과 노하우를 습득했다. 어려운 기능뿐 아니라 멘탈관리, 팀원간의 소통 등 힘들때 어떻게 대처해야할지 학습하는 시간이었다.
내 코가 석자라 팀원들을 많이 못챙겨준게 아쉽고, 빠르게 페이지를 구현하지 못한 것에 대해서 너무 미안하다. 인턴 기간이 끝난 후 못다한 기능을 작업하고 이후에 더 완성도를 높일 예정이다.