Today I Learned
프로젝트를 마치며
이번 프로젝트는 좀 뜻깊다. 개인적으로 프로젝트를 시작하기 전보다 자신감이 많이 붙은 것 같다. 여전히 어렵지만 그래도 아아, 이렇게 하는 거구나 라는 걸 느낀 것 같다. 때문에 단점이라거나 보완할 부분 또한 많고 그래서 다행이다.
Keep - 현재 만족하고 있는 부분
- 팀장 송용승
- 상태관리 전반에 있어서 만족스러웠다.
React-Query
버전이슈때문에 조금 힘들었던 점이 없잖아 있지만 서버상태와 클라이언트상태를 분리해서 관리하니 헷갈릴 일도 없고 한결 편리했습니다. RTK
와 React-Query
- Custom hook 을 만들어서 사용한 점이 뿌듯했습니다. 사실 지금은 그냥 함수를 파일로 따로 만드는 것과의 차이를 잘 모르겠는데, custom hook 이 가져야하는 특징을 더 공부해서 잘 사용할 수 있게 되면 좋을 것 같습니다.
- 컴포넌트 분리에 조금 자신이 생겼습니다. 여전히 헷갈리는 부분은 있지만 컴포넌트 분리를 생각했을 때 오래 고민하지 않아도 어떻게 분리할지 보이는 것 같습니다.
- 팀 Notion에 개발 상황을 적고 앞으로 해야할 일들을 리스트로 만들어두니 일정 관리가 한결 수월해졌습니다.
- 김건우
- 한 단계 진행될 때 마다 팀원 모두에게 공유하다 보니, 작업물 충돌도 많이 발생하지 않았고, 흐름 파악하는데 도움이 많이 됐습니다.
- 팀원 중 한 명의 작업에 문제가 생기면 팀원 모두가 한 마음 한 뜻으로 고민해주셔서 빠른 문제 해결이 가능했습니다.
- 어려운 부분을 맞이 했을 때, ‘이건 내가 모르는 부분이니까 못해.’ 가 아니라, ‘모르지만 도전해보고 싶다.’ 라는 마음을 가질 수 있었습니다.
- 다 같이 하니까 할 수 있다 라는 분위기가 조성되어서 성공적으로 제출과 발표까지 마칠 수 있었습니다.
- 이다원
- 기간 내에 프로젝트를 완료하여 제출한 것은 성취감이 큽니다.
- 새로운 API를 활용해보면서 기술적으로 성장할 수 있는 소중한 기회였습니다.
- 파이어베이스에 대한 이해가 높아져서 추후 프로젝트에서 빠르게 데이터베이스를 구축하는 데 도움이 될 것 같습니다.
- 팀원들과 함께 협력하여 프로젝트를 진행하면서 즐거웠고, 팀워크의 중요성을 다시 한번 깨달았습니다.
- 처음에는 낯선 여러 라이브러리에 대한 이해가 부족했지만, 지금은 다가가기가 조금 쉬워졌습니다.
- 이동탁
- 웹 크롤링을 진행하면서 서버에 대한 이해와 서버와 클라이언트간의 통신이 어떻게 이루어지는지, 클라이언트에서 서버에 요청을 보내면 그 요청을 어떻게 처리하는지 배포할때 인프라적인 부분, 보안적인 부분에 대한 이해도가 상당하게 향상되었다.
- 카카오 api를 이용하면서 오픈 api에 대한 이해도와 api문서를 통해 빠르게 오픈 api를 이용할 수 있는지에 대한 경험을 가지게 되었다.
- 만약 서버에 트레픽이 몰릴때 어떤 방법으로 트레픽을 분산하는지에 대해 알게 되었다.
- 팀원분들과 소통하면서 안되는 부분 불편한 부분 다른 팀원이 쓴 코드를 분석할 때 이해가 안되는 부분을 이야기 하면서 다양한 케이스들을 접하게 되었다.
- 심재영
- 빠듯한 기한 내에 과제를 제출한 게 다행이라 생각합니다.
Problem - 불편하게 느끼는 부분
- 팀장 송용승
- git 관리가 아직 많이 미숙합니다. 한 브랜치에서 기능 개발이 끝나면 레포에 푸시하고 다른 브랜치로 옮기거나 생성해서 다른 기능 개발을 진행해야 하는데 한참 개발하다가 정신차리고 보면 여전히 같은 브랜치에서 작업중일 때가 많습니다. 전체적으로 개념이 부족한 것 같습니다.
- 코드리뷰를 많이 하지 못한 점이 아쉽습니다. 10조의 예성님 발표 내용 중 '팀원이 모두 코드를 이해해야 프로젝트가 끝났다고 생각한다' 같은 내용이 있었는데 인상깊었습니다. 리뷰 주기를 짧게 잡아서 다른 팀원들이 코드를 이해할 수 있도록 했다면 다른 팀원들의 프로젝트 기여가 더 컸을 것 같아서 많이 아쉽고 미안한 부분입니다
- 코드컨벤션이 제대로 적용되지 않았습니다. 다른 팀원들에게 더 강조를 했어야 했는데 팀장으로서 부족했던 부분입니다.
- 일정 관리가 한결 수월해졌다고 했지만 여전히 다소 주먹구구식으로 돌아간 느낌입니다. 간트차트를 작성하든 어쩌든 팀원 전체가 공유할 수 있는 타임라인과 개발 일정이 절실했습니다.
- 반응형 UI가 필수인 시대이고, 이번 프로젝트 기획도 사실은 데스크탑보다 모바일 웹으로 사용할 일이 많을 것 같은 느낌인데 반응형 UI를 적용하지 못했습니다.
- 김건우
- 작업 진행 중 모르는 부분이 생겼을 때 적당히 고민해 본 후 팀원들과 공유하며 해결 할 수도 있었는데, 시간이 촉박하다 보니 혼자서 해결하려고만 했던 것이 아쉽습니다.
- 팀원 분이 진행 중이신 작업 중, 모르거나 알고 싶은 부분이 있었는데도 적극적으로 여쭤보지 않았던 점이 아쉽습니다.
- 제가 하고 있는 작업이 똑바로 가고 있는 지 중간 중간 공유하며 점검하지 못했던 점이 아쉽습니다.
- 이다원
- 프로젝트의 마무리 단계에서는 문서화와 주석 작성에 충실하면 좋을 것 같습니다. 추후 유지보수를 고려하여 코드에 대한 명확한 설명과 주석을 추가하면 다른 팀원이나 다른 개발자들이 코드를 이해하고 수정하기 쉬울 것 같습니다.
- 이동탁
- 서버의 성능이 좋지 않아서 서버가 터지는 문제
- 역할 분담이 제대로 이루어 지지 않은 것
- 백엔드 서버를 구현하다 보니 문제를 해결하는데 시간이 오래걸렸다.
- 심재영
- 다른 것보다 제가 이해를 똑바로 못해서... 사실 최종 코드라도 보고 어떻게든 이해를 해야 할 거 같습니다.
Try - Problem에 대한 해결책, 당장 실행 가능한 것
- 팀장 송용승
- git 에 대해 공부를 더 하고 프로젝트 시작부터 관리를 확실하게 해서 git 문제로 시간이 낭비되는 일을 줄여야겠습니다. 모든 팀원이 git에 대해 높은 이해도를 가질 순 없겠지만, 문제가 생겼을 때 도움을 줄 수는 있어야 하기 때문입니다.
- 코드리뷰는 일정관리와 밀접한 관계가 있다고 느꼈습니다. 결국 프로젝트가 어떤 통과점을 지날 때 코드리뷰를 진행하게 될텐데, 마일스톤을 밀도있게 설정해두면 매 통과점마다 코드 리뷰를 통해 팀 전체의 코드베이스 이해도가 높아질 것이라고 생각합니다.
- 코드컨벤션에 대해 일단 나부터 제대로 알고 매번 사용할 수 있도록 문서화도 해둬야 할 것 같습니다. 이 또한 코드리뷰를 자주 하면 프로젝트가 너무 멀리 가버리기 전에 수정할 수 있으니 일정관리가 정말 가장 시급한 부분이라고 생각합니다.
- 다른 스타일링은 몰라도 반응형 스타일링은 정말 mock UI 단계에서부터 미리 적용해놔야 할 것 같습니다.
- 김건우
- 다음 팀 프로젝트 진행 시, 내가 맡은 역할, 기능을 빠르게 파악하고 팀원과 공유를 통해 제대로 가고 있는지 점검 해보는 것이 좋을 것 같습니다.
- 모르는 부분이 생기면 적당히 고민 한 후, 튜터님과 팀원들과 공유를 통해 다양한 의견을 받아 여러 가지 솔루션을 학습하는 것이 좋을 것 같습니다.
- 기능 한 챕터가 완성되면, 코드 리뷰를 부탁 드리고 반드시 그 부분을 이해하고 넘어가는 것이 좋을 것 같습니다.
- 이다원
- 앞으로도 프로젝트를 진행할 때 마감시간을 잘 지키는 습관을 유지해야 합니다.
- 추후 프로젝트 초기에 목표와 일정을 명확하게 설정하고 진행하는 것이 중요합니다. 그렇게 하면 팀원들 간의 이해도가 높아지고 작업이 원활해질 것입니다.
- 파이어베이스 등 외부 서비스의 한계와 문제점도 파악하여 이에 대한 대비책을 갖추는 것이 중요합니다.
- 다음 프로젝트에서도 팀원 간의 원활한 소통과 협업을 위해 더욱 노력할 필요가 있습니다.
- 이동탁
- 돈내고 좋은 성능의 서버를 임대하면 된다.
- 처음 기획할 때 어떤 기능을 구현할지 확실하게 정하고 각자 하고 싶은 기능, 할 수 있는 기능을 의논하고 역할 분담을 확실하게 정한다.
- 백엔드로 눈을 돌리기 보다 지금 하고 있는 프론트 앤드를 더 깊게 공부한다.
- 심재영
- 기초라도 다지면서 다시끔 곱씹어보던가 하면서 해야할 거 같습니다...그래야 제가 어느 정도 흡수가 가능할 거 같다 봅니다.