(최종 회고는 아래쪽에 있습니다)
각자 내용을 기록하고 함께 모여서 적은 내용을 바탕으로 의견을 공유하는 시간을 가졌습니다.
1. 23.01.12(목) - 중간 회고

keep은 현재 잘 하고 있어서 계속 이어갔으면 하는 부분을,
problem은 개선이 필요하다고 느껴지는 부분을,
try는 problem에 대한 해결책, 지금 당장 시도하면 좋을 것들을 써주시면 됩니다!
회고 너무 어렵게 생각하지 말고 가벼운 마음으로 한자, 한자 적어볼까요☺️☺️
✨아래 템플릿 생성 버튼 누르셔서 각자 이름, 회고 내용을 작성해주시면 됩니다.
작성자: 아무개
작성자: 우대현
KEEP
- 팀원들간의 지속적인 의사소통을 통해 직면한 문제를 길게 가져가지 않아서 좋았다.
- 프로젝트를 진행하면서 알게 된 새로운 지식들을 공유하고 이를 직접 활용해 나가는것이 좋았다.(ex Error Boundary, HOC, Suspense)
- 팀 내에서 결정된 사항은 사소한 부분이라도 모두 기록으로 남겨두어 놓치는 부분이 없게 만드는 것이 좋았다.
작성자: 조예지
KEEP
- 프로젝트할 때 회고를 해본 경험이 별로 없어서 그런지 이번 프로젝트에서 회고를 도입한 점이 굉장히 마음에 들었다.
- 칭찬합니다👍👍
- 대현님의 문서정리
- 재관님의 소통 능력(회의 주도, 슬랙 공유 등)
- 지영님의 디자인, 피그마 활용 능력
- 민형님의 깃헙 활용 능력(덕분에 개발 생산성이 높아졌습니다)
작성자: 안재관
작성자: 유지영
KEEP
- 서로 모르는 부분이 있을 때 적극적으로 도움을 요청할 수 있었던 것이 좋았다. 혼자서 해결될 수 있는 부분도 있지만 다른 사람이 더 간단하게 해결할 수 있는 부분도 존재하기에 적극적인 소통 부분은 이어가고 싶다.
- 팀회고나 개인회고를 진행하는 점이 좋다. 시간이 지나면 과정이나 감정을 잊기 마련인데 그런 것들을 기록할 수 있어서 좋았다.
작성자: 박민형
KEEP
- 현재처럼 하루에 두번씩 스크럼 하는 것이 좋은 것 같습니다. 스크럼을 통해 각자 해야할 일과 어려웠던 점들을 공유하는게 많은 도움이 됩니다.
- 모르는 것이 있다면 디스코드를 통해 즉각적으로 Q&A 하는 방식을 유지했으면 좋겠습니다. 혼자서 오랜 시간 생각하기보다는 질문을 함으로써 더 빠르게 해결 될 확률이 높다고 봅니다.
2. 23.01.26(목) - 최종 회고

Liked는 프로젝트를 진행하며 좋았던 점,
Lacked는 아쉬웠던 점, 부족했던 점,
Learned는 스스로 그리고 팀원 등으로부터 배운 점,
Longed for 프로젝트 진행 전 목표 그리고 앞으로 바라는 점
그 동안 열심히 달려온 프로젝트를 마지막으로 잘 정리하는 시간을 가져봅시다 😽😽
모두 고생 많으셨습니다👏👏👏
✨아래 템플릿 생성 버튼 누르셔서 각자 이름, 회고 내용을 작성해주시면 됩니다.
작성자: 아무개
작성자: 조예지
LIKED
- 프로젝트 초기 회의를 통해 프로젝트 컨셉 및 주제, 역할 분담을 한 부분이 좋았습니다. 서로의 이야기에 경청하고 의견을 존중하는 분위기라 함께 협업할 때 즐거웠습니다.
- 디자인 같은 부분은 서로 챙기지 못할 수도 있었는데 지영님 그리고 대현님이 많이 힘 써주셔서 서비스 완성도가 높아보였습니다👍
- 기술 스택 → 욕심 부리지 않고 각자 학습하고 싶은 것 그리고 기능을 구현하기에 충분한지 등을 따져 적절하게 기술 선택을 잘 한 것 같습니다.
- 중간 중간 회고를 진행했던 점이 잘하고 있는 부분, 부족한 부분을 파악할 수 있어서 매우 좋았습니다.
작성자: 우대현
LIKED
- 첫 프로젝트였던 만큼 기대도 있지만 걱정도 많았던 것이 사실이다. 하지만 팀 단위로 작업을 진행한다는 사실 자체로 굉장히 좋았다. 기존에는 대부분의 시간이 혼자 공부하고 혼자 코드를 작성해보는 것이 전부였다. 하지만 좋은 동료들을 만나 팀프로젝트를 진행하면서 같은 목표를 향해 나아가는 팀원들이 있다는 사실이 좋았고 열심히 하는 팀원들을 보며 많은 긍정적인 자극을 받아 나 스스로도 더욱 열심히 하게되는 환경이 좋았다.
- 기획부터 시작하여 완성까지 일련의 과정을 경험한 것이 좋았다. 특히 기획 단계에서 팀 목표와 개인 목표를 설정하고, 협업 툴, 기술 스택, 기능별 역할 분담, 그리고 와이어 프레임 제작과 대략적인 유저 스토리 작성을 통해 개인적으로 작업을 진행할 때 어떤 방향으로 만들어야 하는지 미리 생각하며 프로젝트에 참여할 수 있었다. 이를 통해 프로젝트를 참여하면서
기준점
을 삼을 수 있었고 개인적으로 큰 혼란없이 작업을 진행할 수 있어 매우 좋았다.
- 리액트가 더 익숙해 진 것 같다. 프로젝트가 처음이기 때문에 그간 공부를 하며 만들어본 과제나 강의를 통해 만든 것들을 제외하고 무언가를 직접 스스로 생각하여 구현해 본 경험은 처음이었고, 당연히 리액트로 기능들을 구현해 본 것도 처음이었다. 그래서 초반에는 어떤 훅을 사용해야 할 지(?) 한 번은 고민해야 했고, 훅을 사용하기 전에는 각 훅의 특성들을 한 번씩은 다시 확인해보며 사용했었다. 하지만 프로젝트가 끝나갈 무렵에는 자연스럽게 어떤 훅을 사용하여 어떤 방식으로 구현하면 좋을지에 대한 생각까지 자연스럽게 이어졌던 것 같다.
- 기술 스택을 크게 넓히지 않고 그 동안 학습한 내용들을 토대로 프로젝트를 진행할 수 있어서 좋았다. 그 동안 공부한 내용들을 다시 한 번 확인해 볼 수 있는 시간을 보낼 수 있었고 부족한 부분들이 무엇인지 확인해 보는 시간을 갖게 되어 좋았다.
- 프로젝트를 진행하면서 공유된 모든 내용들이 기록될 수 있어서 좋았다. 짧은 기간임에도 불구하고 몇 일만 지나도 그 전에 팀원들과 나눈 이야기들이 기억이 나지 않는 경우가 대부분이었고 이때 회의록과 개인회고를 살펴보면 그간의 일들을 다시 상기하고 사소한 부분까지 잊지 않고 프로젝트에 참여할 수 있었다. 기록의 중요성을 다시 한 번 느끼면서 바쁜 와중에도 이를 끝까지 유지하면서 기록으로 남겨둔 것들이 좋았다.
LACKED
- 개인적으로 아쉬웠던 부분
- 조금은 소극적인 자세를 보였던 것 같아 아쉬움이 있다. 초반 팀프로젝트를 진행하면서 개인적으로 든 생각이나 의견들을 팀원들에게 자유롭게 공유하지는 못했다. 그 이유를 생각해보면 개발과 관련하여 스스로 부족한 점이 너무 많다는 생각이 지배적이었던 것 같다. 돌이켜보면 내 생각을 공유하고 내 생각이 괜찮은 방법인지 혹은 더 좋은 방법은 없는지에 대해 팀원들과 이야기를 나눌 수 있는 창구이고 이를 통해 스스로도 많이 성장할 수 있는 기회였다는 생각에 아쉬움이 남는다.
- 아직도 코드를 제대로 이해하지 못하는 부분들이 많다는 생각이 들었다. 좋은 팀원을 만나 React.query, Error boundary, Suspense와 같은 새로운 기능들을 알게 되었고 또 볼 수 있었다. 그럼에도 불구하고 코드와 기능들을 온전히 이해하는데 많은 시간이 걸렸고 온전히 이해하지 못한 부분도 많이 있어 프로젝트에 활용하지 못한 점이 너무 아쉽다…개인적인 공부가 많이 필요할 것 같다.
- 내가 담당한 기능 구현에 초점이 맞춰져 전체적인 부분을 놓쳤다. 원래 검색창의 경우에는 헤더에 위치하도록 계획했으나 검색을 하면 리스트가 나온다는 생각에 사로잡혀 기능 구현을 하였고 그 결과 검색창만 별도로 움직여 활용할 수 없게 되었다. 다행히 우리 사이트에서 내가 구현한 기능들을 활용하는데 문제 없이 흘러갔지만, 처음 기획한 부분과 다르게 구현을 한것이 많이 아쉬움이 남는다. 내가 담당한 부분을 문제 없이 잘 만들어 내는것도 중요하겠지만 우리가 기획한 서비스 자체에 대한 생각도 항상 갖춰야 할 필요가 있겠다.
- 팀적으로 아쉬웠던 부분
- 팀 프로젝트를 진행하면서 후반부로 갈수록 정말 많은 의견들을 서로 공유하고 좋은 분위기가 이어졌지만 초반에는 대화가 조금 부족했다는 생각이 들었다. 각자 담당한 부분을 각자 구현하고 기능들을 이어붙이는 과정까지도 대화보다는 팀원들 각자가 알아서 눈치껏(?) 작업들을 했던 것 같다. 특히 마지막에 항상 같이 대화하고 즐거운 분위기로 작업을 했던 상황들을 떠올려보면 처음부터 이런 분위기가 이어졌더라면 지금 보다 더 더욱 즐겁게 프로젝트가 진행되지 않았을까 하는 생각이 들었다.
LEARNED
- 문서화를 할 수 있는 협업 도구 활용: Notion, Slack과 같은 협업 도구들을 활용하는 방법을 배웠다. 특히 Notion에 대해서 많이 알 수 있게 된것 같다. 실시간으로 내용을 공유할 수 있다는 점 또 간단한 단축키를 활용하여 일목요연하게 내용들을 정리할 수 있다는 점이 인상적이었다.
- Github 활용: 그 동안에는 단순히 개인적으로 공부를 하며 repo를 만들고 commit과 push만 했었다면 PR, commit, branch 관리와 같은 convention 들을 설정하고, 직접 경험하고, 코드 충돌과 같은 문제들을 해결하고 또 코드 리뷰를 진행하면서 얼마나 유용한지 알게 되었다. (아직도 조금은 무서운 부분이 있긴 하지만…그래도 많이 나아진듯 싶다 ㅎ)
- 타입스크립트: 타입스크립트에 대해 전혀 공부가 되어 있지 않은 상태로 프로젝트에 참여했다. 당연히 별도로 공부를 할 계획을 가지고는 있었지만 막연한 것은 사실이었다. 하지만 프로젝트를 진행하면서 직접 부딪혀보며, 검색과 다른 사람들의 코드들을 참고하여 억지로 타입스크립트를 적용해 보았고, 이론적으로 이해하고 사용한 것은 아니지만 어렴풋하게 타입스크립트가 무엇인지는 알 수 있게 된 것 같다. 특히 타입을 지정하지 않음으로 발생하는 오류와 그 오류를 찾는데 걸리는 모든 시간을 단축할 수 있다는 명확한 장점을 알게 되었고, 내가 직접 코드를 작성하는데도 데이터 타입이 헷갈려 생길 수 있는 문제들을 미연의 방지할 수 있었다. 앞으로 기존의 계획대로 타입스크립트 공부를 하게 된다면 조금 더 이해도가 좋은 공부를 이어나갈 수 있을 것 같다.
- 새로운 내용들을 정말 많이 알게 되었다. 위에서도 언급했지만 ErrorBoundary, Suspense, ReactQuery 또 axios를 useAxios나 useMutation처럼 커스텀 훅으로 만들어 활용하고 Global css를 활용하여 전체적으로 스타일들을 적용하는 등 혼자였다면 언제 들어볼 지 알 수 없는 내용들을 알 수 있었고 앞으로 공부를 하면서도 열심히 하는것도 중요하지만 시야를 넓게 가져가는 것도 중요하다 라는 점을 배울 수 있었다.
- formatter: prettier과 ESLint를 사용하면서도 어떤 것이 좋은지 느끼지 못했다면 이번 프로젝트를 진행하면서 도움이 많이 되는것을 피부로 느꼈다. 코드가 길어지면 길어질수록 생각하지 못한 오타와 같은 문제들이 계속 생기는데 ESLint를 통해 자연스레 문법오류를 확인할 수 있었고 어지럽게 작성한 코드들이 아름답게 정리되고 또 모든 팀원들의 코드가 통일성을 유지할 수 있는 점들이 굉장히 좋았던 것 같다. command+s를 누름과 동시에 코드가 정렬되는 재미도 있는 듯? ㅎ
- ‘하면 된다’ 를 좀 많이 배운 것 같다. 프로젝트를 진행하면서 베스트 댓글, 최신순/공감순, 세부 검색 기능, 포스트 생성 경과시간 노출과 같은 기능들을 추가하자고 이야기가 되었고 검색기능과 관련된 부분들이기 때문에 구현을 해야했다. 난이도를 떠나서 내심 말은 못했지만 추가되는 기능들에 대한 이야기가 나올 때 ‘내가 할 수 있나?’라는 생각을 많이 했었다. 하지만 막상 해당 기능을 추가할 때 차분하게 생각해보고 검색을 통해 도움되는 내용들을 참고하여 구현을 해냈던 것 같다. 그리고 아직 많이 부족하지만 그 동안의 공부가 헛되지 않았구나(?)🥹 차분하게 알아보고 적용해보면 할 수 있구나(?) 하는 느낌을 많이 받았지 않았나 싶다!
LONGED FOR
- 내가 프로젝트를 진행하면서 정한 목표는 단 한 가지였다. 팀원들에게도 이야기한 내용이지만 ‘내가 담당한 역할 만큼은 충실하게 해내자’가 유일한 목표였다. 처음 진행한 프로젝트이고 모든 팀원들에게도 중요한 프로젝트 경험일 것이 분명하기에 나로 인해 피해를 보는 상황만은 피하고 싶었고, 또 지금까지 내가 얼마나 성장(?)했는지에 대한 스스로 평가를 해보고 싶었기 때문이다. 결과적으로 절반정도는 성공한 것 같다. 우선 팀원들에게 더 큰 도움이 되지는 못했지만 내가 맡은 역할 만큼은 성실하게 해 낸 것 같고, 반대로 나에 대한 스스로의 평가는 제대로 하지 못한것 같다.
- 나에 대한 평가는 정확하게 하지 못한 것 같지만 한 가지 확실한 것은 프로젝트를 통해서 내가 앞으로 공부해야 할 부분들이 어떤 부분들인지 다시 확인할 수 있었다. 그 동안 열심히 기초를 닦았다고 생각했지만 closure나 비동기처리 관련 이해도가 아직 부족하다는 것을 느꼈고, 리액트의 훅 관련 문법들, 그리고 커스텀 훅의 활용 등 아직도 헷갈리고 있다는 것도 알 수 있었다. 또 타입스크립트를 수박 겉 핥기 식으로 사용했기에 공부가 필요하다. 즉, 전체적으로 아직도 깊이 있는 공부가 제대로 이뤄지지 않았다는 생각이 들었고, 지식의 범위를 넓히는 것도 중요하지만 깊이 있는 공부를 이어나가야 겠다.
- 결론.. 공부할게 너무 많다..하..행복하다..🥲
작성자: 박민형
LIKED
- 기존에 개인 프로젝트를 진행할 때는 기능 구현에만 초점을 맞추었습니다. 기획 등과 같이 선제적으로 설정할 단계를 생략하니 프로젝트를 진행함에 있어서도 비효율적이었고 결과물의 완성도 또한 점검할 자원이 없어 어려움이 있었습니다.
기획(디자인 및 사용 될 파일 설정)
,역할 분담
,협업 툴
등을 적극적으로 사용해서 프로젝트를 마무리 했던 것에 있어 각 단계들의 구체적인 할 일들과 그 일들을 어떻게 처리하는지 알 수 있어서 좋았습니다. 더불어 위에서 말씀드린 부족했던 점을 보완함으로써 개발 전에 설정해야하는 단계들이 개발 전, 개발 중, 개발 후 유지보수에도 주요한 영향을 줄 수 있다는 것을 알 수 있었습니다.
- 모르는 것이 있다면 디스코드를 통해 즉각적으로 물어보는 문화가 좋았습니다. 어려운 부분에 있어 혼자 충분히 고민하는 것도 중요하지만 여러 가지 상황(개발시간, 주요도)에 따라 즉각적으로 물어봄으로써 물어 본 사람은 문제를 해결함과 더불어 팀원들 또한 해당 문제가 있다는 것을 인식 할 수 있어서 팀프로젝트 진행에 있어 효율적이라고 합니다.
LACKED
개인
- 기능 구현에 집중하다 보니 팀원들의 문제를 해결하는데 많은 시간을 할애하지 못한 점이 아쉽습니다. LIKED에서 말씀 드린 것 처럼 문제를 공유하는데 있어 적극적으로 참가해 새로운 지식이나 팀원 들 각자의 문제 상황을 어느정도 인지하고 있어야 하는데 그 부분이 부족했던 것 같습니다.
- auth 관련 작업을 하다보니 유효한 token과 관련해 고민을 하지 않을 수 없었습니다. 현재 localStorage에 임의로 token 값을 바꾸고 새로고침을 해도 로그인이 되는 문제가 있습니다. 유효한 token 관련해서 보완하는 작업을 해야 할 것 같습니다.
- 이번에 react-query 라이브러리를 도입하며 라이브러리를 도입할 때는 여러 상황을 고려해야겠다는 것을 알게됬습니다. react-query를 처음 도입할 때 중복된 API 요청을 방지함으로 인한 성능 향상이 첫번째 이유였고 그 외에는 고려를 하지 않았던 것 같습니다. 다른 상황을 고려하지 않다보니 팀원들과 react-query가 적용된 후 기능을 하나씩 점검함에 있어 문제점이 많았습니다. react-query에 대해서 다시 한번 곰곰히 생각해봤고
캐시
라는 용어와 우리 웹 사이트의 실시간 특성이 잘 어울리지 않는 다는 것을 알 수 있었습니다. 문제점을 찾아 해결했지만 다음 부터는 웹 사이트의 특성과 같은 요소들을 미리 고려해보고 도입을 하거나 도입 후에 되돌릴 수 없다면 최대한 부합하지 않는 요소들을 보완하기 위해 라이브러리에 대해 깊이 공부해야겠다는 생각을 했습니다.
- 리팩토링(클린코드)을 하지 못했던 것
팀
- 각자가 사용하는 API 소스 코드를 하나의 파일에 정리되지 못한 부분이 아쉽습니다. 다음 프로젝트 진행시에는 이 부분을 설계 단계에서 팀원들과 이야기를 나누어봐도 괜찮을 것 같다고 생각합니다.
- 어려웠던 문제나 그 문제를 어떻게 해결 했는지를 특정 문서를 통해 관리하지 못한 부분이 아쉽습니다. 각 팀원들이 현재 겪고 있는 어려움을 이해하고 도와줄 수 있다고 생각하고 더 나아가 회사 이력서나 면접시에 트러블 슈팅 경험의 질문에 있어 좋은 답변을 할 수도 있을 것 같습니다.
- 기능은 정상적으로 동작하지만 예외 사항들(이메일 입력시에 가장 뒤에 .com.com이 허용되는 경우)을 특정 문서를 통해 관리하지 못한 부분이 아쉽습니다. 팀원 들이 어떤 예외사항에 어려움을 겪고 있고 작은 프로젝트이지만 테스트 진행시에 효율적인 자원이 될 것 같습니다.
LEARNED
- GitHub, Slack, Notion, 피그마 등을 통해 협업하는 것을 말로만 들었는데 실제로 사용함으로써 프로젝트를 더 효율적으로 진행할 수 있다는 것을 알 수 있었습니다.
- GitHub 이슈, PR, Project의 개념은 알고 있었지만 사용한 경험이 부족했었는데 이번 프로젝트를 통해 많이 경험함으로써 사용에 익숙해졌고 왜 사용해야하냐는 질문을 직접 사용함으로써 그 답(특정 팀원의 작업 check, 팀원들의 작업 진행 여부 check, PR 소스 코드리뷰)을 찾을 수 있었습니다.
- PR, 이슈 탬플릿 등을 한번도 설정해보지 않았는데 방법을 배워 설정함으로써 탬플릿이 저를 포함한 팀원들의 중복 작업 방지 및 각자 다른 메시지의 형식 및 내용에서 오는 혼란을 제거할 수 있었습니다.
- GitHub를 통해 제대로 된 프로젝트를 해본적이 없어 브랜치 전략을 어떻게 세우는지 몰랐습니다. 프로젝트를 진행하며 사용했던 브랜치 전략외 여러가지 전략이 있겠지만 그 중 하나를 2주간 사용했다는 것이 저에게는 중요하다고 느낍니다.
- Slack을 통해 작업 진행 여부나 팀원들 사이에서 나누고 싶은 정보들을 공유하는 방법이 있다는 사실을 알 수 있었습니다. 더불어 GitHub와 연동을 할 수 있다는 사실을 알고는 있었지만 직접 연동해보면 팀 repository와 연결함으로써 팀원의 Git 작업 상태를 효율적으로 확인할 수 있었습니다.
- Notion을 통해 팀프로젝트를 진행함에 있어 필요한 문서를 간결하게 관리할 수 있다는 점과 피그마를 통해 웹사이트의 프로토타입 및 디자인과 관련된 작업을 수월하게 할 수 있다는 사실을 알 수 있었습니다.
GitHub
Slack, Notion, 피그마
- 프리티어, 이에스린트를 미리 설정하면 여러가지 이점이 있다는 사실을 알 수 있었습니다. 팀원들과의 코드 충돌을 미리 예방 할 수 있다는 점과 규칙이 있기 때문에 코드를 작성할 때마다 규칙과 관련해 생각하지 않아도 된다는 이점이 있었습니다.
- React 프로젝트 구조 설정에 있어 지금 까지는 파일 유형별로 그룹화 했었습니다. 처음으로 기능별로 그룹화 하는 방법을 사용해봤는데 작은 프로젝트에서는 파일 유형별로 나누는 것보다 더 효율적이라는 점을 알 수 있었습니다.
LONGED FOR
- 팀원들과 의사소통에 있어 아쉬웠던 점이 많았다고 언급했었는데 다음 프로젝트를 진행할 때는 기능 구현도 중요하지만 팀원이 문제를 제기하면 잠시 멈추고 그 문제를 먼저 해결하도록 해야할 것 같습니다.
- 코드 충돌에 대한 두려움이 있었는데 막상 충돌이 났을 때 소스코드만 잘 이해하고 있다면 문제 없었다는 사실을 이번 프로젝트에서 알 수 있었습니다. 다음 프로젝트를 진행할 때는 코드 충돌은 당연히 발생한다는 점을 받아들이고 코드 충돌을 피하기 위해서 소스코드를 작성하는 것에 있어 망설이지 말고 작성한 후에 코드충돌을 제거하도록 해야할 것 같습니다.
- TS를 사용함에 있어서 TS의 이점을 이용하기 위해서 사용하기 보다는 TS에 끌려 다녔다는 느낌이 없지 않아 있습니다. TS와 관련해서 1기 프롱이님이 설명을 해주셨는데 나는 1000분에 1정도만 알고있다는 표현이 맞는 것 같습니다. 다음프로젝트가 최종프로젝트가 될 것 같은데 그 전까지는 TS에 대한 실력이 늘 확률이 적을 것 같지만 진행한 프로젝트를 다시 복기 하면서 보완해야 하겠습니다.
작성자: 안재관
LIKED
- TypeScript: 웹 개발을 하면서 처음으로 정적 타이핑을 사용해봤다. 동적 타이핑을 사용할 때와 다르게 함수간 인자 전달과 같은 부분에서 정확하게 어떤 정보가 넘어오고 return 되어야 하는지 좀 더 명확하게 파악하고 구현했다. 덕분에 이전에는 두루뭉술 하게 사용했던 부분들을 좀 더 명확하게 알고 사용하게 되었고 useState와 같이 평소에는 대충 사용했던 기능들에 대해서 작동원리도 생각해 보게된 좋은 기회였다.
- axios: 바닐라 JS로 fetch만 하다가 axios라는 fetch 라이브러리를 처음 사용해봤다. 아직 fetch만 사용할 때와 큰 편리성을 느끼진 못하였지만 사용할 줄 알게된 라이브러리가 1개 더 늘었으니 만족한다.
- react-query: axios와 연계하여 사용하였다. axios만 사용할 때는 cache라든가, 데이터 값의 변화에 따라서 refetch처리를 하는것에 불편함이 있었는데 react-query를 사용하면서 해당 기능들을 지원 받아서 편리하게 사용 했었다.
- git: 처음으로 git을 활용해서 무언가를 해 본 느낌이 든다. 이전에는 단순하게 강의의 내용물을 올리거나 과제를 올리는 단순한 작업만 했었는데 이번에는 git을 좀 더 잘 활용해서 협업을 했다는 생각이 들어서 이전보다 git 활용도가 조금은 올라가지 않았나 하는 생각이 든다. 작업 때마다 branch를 생성해 본것도 처음이었고 merge의 방법에도 여러가지가 있고 다른 사람들의 pr을 local에서 확인하는 방법도 배웠다. 중간에 fetch, pull 과 관련하여 실수를 하고 그것을 해결하지 못해서 결국 다시 clone을 받은 것만 제외하면 큰 실수 없이 잘 활용했던 것같다.
- 3번째로 배포를 진행해본 것 같다. 이번에는 https→http로 API 통신 요청이 있었어서 netlify의 rediraction 설정을 해줬어야 했다. 다른 팀원분들에게 자료의 링크를 받아서 해결했지만 어쨌든 해결했으니 나름 뿌듯했었다. (물론 나중에 https → https로 api 통신요청이 바뀌면서 해당 작업은 딱히 의미가 없어지긴 했지만..)
- 팀원들 간에 소통이 자유롭게 이루어진것 같아서 좋았다. 팀원들 모두가 열심히 하느라 잠도 안자더라. 그렇게 열심히 하는 분위기가 형성되니 다들 더 노력해주었던 것 같고 문제를 해결하기 위해서 소통도 활발하고 자유롭게 이루어졌다고 생각한다.
- 그날 그날 개인 회고를 남겨두는 것이 나의 발전에 큰 도움이 되는것 같다. 물론 제대로 진행 했다고 보기는 어렵지만 배운 내용들을 남겨두고 나중에 다시 보는것이 복습의 효과도 있고 좋았던것 같다.
LACKED
- TypeScript: 미숙하게 사용했다. 함수에 인자를 받을 때 type을 정의 한다던가 interface 몇개를 정의해서 변수들의 자료형을 정하는 정도로 매우 미흡하게 사용했다. 그리고 TS로 인해서 발생하는 에러들을 해결하기 위해서 억지로 맞춰끼운 코드들이 상당수 존재한다. 그래도 TS를 직접 활용해 본 것이 처음이었고 웹 개발을 하면서 처음으로 정적타이핑을 사용해 본 경험이었기 때문에 이를 발판으로 앞으로 TS에 대한 숙련도를 더 올려나갈 계획이다.
- axios & react-query: TS와 마찬가지로 아직 숙련도가 부족하다. 캐싱이나 리패칭을 위해서 사용했는데 제대로 사용하지 못해서 엉뚱하게 리패칭이 이루어지거나 캐싱이 필요 없는 부분에서 캐싱이 이루어져서 오히려 문제를 일으켰던 경험이있다.
- Hooks: 이전에 강의를 통해서 많은 custom-hooks들을 만들어 놨다. 하지만 이번 프로젝트에서 활용한건 사실상 없다. 도움되는 hooks들이 많았는데 활용해봤으면 하는 아쉬움이 남는다. hooks를 직접 만들어 봤어도 도움이 많이 됐을 것 같다.
- editor: 에디터를 직접 구현하려다가 이건 좀 아니다 싶어서(너무 오래 걸림) 라이브러리를 적용하려 했다. 물론 팀원들과 상의된 내용이 아니었기 때문에 우선 적용해서 결과물을 보여주고 괜찮으면 package.json 파일에도 적용시키려했다. 그래서
toast UI Editor
와 몇 가지WYSIWYG
에디터를 찾아봤다. 이 때can’t not find module
과 같은 에러도 봤고 해야할 다른 일들도 있었다 보니 우선순위에서 미뤄 놨었다가 시간이 지나면서 점차 잊어버렸던것 같다(issue로 남겨놨어야 했는데 에디터를 달아야 할지 확신이 없어서 안 남겨놨었던것 같다)
- 계획단계가 미흡했다는 생각이 든다. 물론 많은 부분을 준비했었고 이야기도 많이 나눴다. 하지만 구현을 하다 보니 미처 이야기를 나누지 못했던 부분들이 쏟아져나왔다. 공통 컴포넌트&hooks&스타일 구현과 반영이 주된 내용이었다. 이 외에도 data flow나 컴포넌트 구성에 대해서 좀 더 자세한 이야기를 나누었더라면 불필요한 fetch를 줄이고 이후에 많은 시간을 소요했던
컴포넌트의 스타일 적용
과 같은 부분에 쓰였던 시간을 아낄 수 있었을 것 같다.
- 개인적인 아쉬움은 집중력이 부족했던 것 같다. 프로젝트가 끝날 때 쯔음 프로젝트 전체 코드를 여러 번 되돌아봤다. 그러고 든 생각은 내가 쏟은
시간에 비해서 내가 반영한 결과물이 정말 적다
라는 생각이었다.(첫날에 단순히 axios 사용법을 익히느라 반나절 이상 날렸다든가..) 딱히 놀거나 참여를 안한것은 아니었는데 이렇게 느껴진다는 것은 중간중간 집중력이 흐려져서 잡생각을 한다거나 하면서흘려보낸 시간들이 적지 않았을것
같다는 생각이든다. 막연하게오늘 밤 샐꺼니까~
하는 생각이 전제에 깔려있어서 오히려 집중을 못하고 비효율 적으로 하지 않았나 생각된다. 다음엔 포모도로를 사용하든가 해서 시간 관리를 좀 더 철저히 해야겠다.
- 간단한 기능 구현만 한것 같은 느낌이 든다. contextAPI 라든가 react-qeury의 적용 이라든가, errorBoundary, suspense, 공통 사용 hooks 구현 등등 사용해 본적 없는 기술들을 다뤄볼 기회가 많았는데 이름만 들어보거나 이름조차 못들어본 것들 이어서 욕심 부렸다가 팀에게 폐가 될까봐 과감하게 내가 하겠다고 나서지 못했었다. 근데 지금 보니까 결국은 다 할 수 있는 내용들이었다. 다음에 프로젝트를 할 때는 좀 더
과감하게 여러가지 시도
를 해 보아도 될거같다.
- 일정 관리가 과연 제대로 된 것일까 하는 아쉬움이 남는다. 애초 계획이었던 19일 완성은
얼추 지켜진 것처럼
보였다. 그러나 마감일인 20일에 발표 자료를 만들려고 하다 보니 잔 버그나 고쳐야 할 점들이 계속 눈에 띄었다. 결국 마감 시간 약 2시간 전부터 시연 영상을 포함한 발표 자료를 만들기 시작했다. 그러다 보니 발표영상의 퀄리티가 썩 좋다고 말하긴 힘들었다. 다들 개고생해서 만든건데 발표 자료에서 그러한 점들을 제대로 담아내지 못한 것 같아서 미안하고 아쉬웠다.
LEARNED
- TypeScript는 내 생각보다 더 많은것을 배워야 하더라. 단순하게 타입만 몇 번 써주면 되는줄 알았는데 받아오는 값에 대한 타입을 확정해 주면서 좀 더 체계적인 개발을 할 수 있게 도와주는 것 같다. 앞으로 계속 써보자.
- Hooks에 대한 개념이 조금 더 생긴 것 같다. 이전에는 useState만 모호하게 가져다 썻는데 더 많은 hooks들에 대해서 알게 되었고 custom hooks의 경우
클로저
개념을 활용할 수 있다는걸 알게되었다.
- layout, global style 적용에 대해서 배웠다. layout을 적용하려면 route를 어떻게 적용해야 하는지, 전체 프로젝트에 균일한 css를 적용하려면 어떻게 해야하는지 대략적으로 알 수 있었다.
- 같은 기능을 이루는 파일들 끼리 묶는 폴더 구조가 좋은 것 같다. 문제가 생겼을 때 폴더를 여기저기 뒤질 필요 없이 해당 폴더 내에서만 문제를 찾을 수 있어서 편리했었다고 생각된다.
LONGED FOR
프로젝트 완성을 하자
가 목표였다. 퀄리티를 떠나서 제대로 작동되는완성품
이 나오기는 할까 라는 걱정이 많았다. 우려와 다르게 다름 괜찮은 결과물을 만들어 냈고 다른 분들에게 괜찮다는 소리도 몇 번 들었으니 나름 성공한 것 같다. 이제 모바일 버전(무한 스크롤을 곁들인)과 다크모드를 추가하고 코드 리팩토링 까지 해서 더 잘 다듬어진 결과물로 만들면 될 것 같다. 메시지 기능도 있긴 한데, 퀄리티가 너무 떨어져서 이걸 지금 붙이는게 맞는지 모르겠다.
- 처음 사용해본 기술, 알게된 용어들이 많다. 이러한 것들에 대해서 공부해보고 숙련도를 더 올려보자. 특히 내가 구현한 것이 아닌 contextAPI, react-qeury, errorBoundary, suspense 같은 부분들은 따로 직접 구현해보고 적용해보자.
- 구현을 하다보면 에러가 많이 난다. 프로젝트를 진행하면서 주먹구구식으로 틀어 막은 에러들이 많다. 그 때 당시에는 시간의 제약이 있어서 그렇게 했다고 하지만 이제는 이렇게 저렇게 해보면서 억지로 틀어막는게 아니라
문제의 원인에 대해서 생각
해보고 어떻게 해결 해야 할지 더 차분하게 생각하면서 우리가 사용했던 기술들의동작원리
등에 대해서 더 깊게 생각해 볼 때가 된것같다. 이러한 과정들을 잘 거친다면 추후에 면접 때 많이 도움이 될거라고 생각한다.
- 단순히 기능 구현을 떠나서 작동원리등 디테일하고 세부적인 내용들을 고민할 때가 되었다.
작성자: 유지영
LIKED
- 이전에는 리액트로 혼자서 코드를 짜 본 적이 없었는데 프로젝트를 진행하면서 리액트라는 라이브러리에 많이 익숙해진 것 같아서 좋았다.
- 프로젝트가 마무리되어가면서 점점 하나의 서비스로서 완성도가 높아지는 것이 눈에 보여서 좋았고 많은 화려한 기능들을 추가하기 보다 기본 요구사항을 최대한 버그없이 완성할 수 있었던 부분이 좋았다.
- 프로젝트 기간이 길지 않았기 때문에 기능적으로 욕심내서 무리하게 일정을 잡지 않아서 좋았다. 조금 더 신경 써야할 부분들이 있는 추가 기능들을 일단 마감을 끝내고 추가하면서해당 부분에서 막힐 때마다 일단 마감 한 후에 추가 일정으로 잡길 잘했다라고 계속 생각이 든다!
- 프로젝트 후반부로 갈 수록 기능 구현이나 막히는 점에 대해 팀원들과 편하게 소통할 수 있어서 좋았다. 음성과 화면공유로 각자의 어려움을 공유하고 같이 해결하려고 하는 팀의 분위기가 좋았다.
LACKED
- 내가 구현하지 않은 기능들에 대한 이해도가 낮은 점이 아쉽다. 팀원들의 코드를 꼼꼼히 살펴볼 기회가 생각보다 많지 않았어서 대충 어떤 로직을 갖고 있구나 정도만 알고 그 코드를 직접 수정하거나 다른 사람에게 설명할 정도로 이해하고 있지 않다는 생각이 들었다. 에러바운더리나 서스펜스 등 좋은 기능들을 팀원들이 만들어주었는데 그에 대한 이해도가 부족해서 제대로 활용하지 못했다. 추가 기능을 구현하면서 이 부분은 어떻게 구현된거지? 싶은 기능들의 코드를 뜯어보고 싶다.
- 공통 컴포넌트나 커스텀 훅을 미리 고려하여 진행하지 못한 점이 아쉬웠다. 대부분의 컴포넌트에서 사용될 것 같은 부분을 뒤늦게 공통 컴포넌트로 작업하면서 다른 팀원들은 해당 부분을 일단 구현해둔 다음 다시 리팩토링하면서 공통 컴포넌트를 붙였다. 이 부분에서 공통 컴포넌트나 훅이 처음부터 구현되어 있지 않아서 일을 두번하게 된 거 아닐까? 하는 아쉬움이 들었다.
- 타입스크립트의 장점을 활용하지 못한 점이 아쉽다. 타입스크립트에 대해 제대로 공부하지 못한 채로 프로젝트를 시작하면서 주먹구구식으로 타입에 대한 에러를 막기 위해 타입정의를 사용했었다. 그래서 타입스크립트가 어떤 점이 편한건지 와닿지가 않았었는데 1기 분이 타입스크립트 사용법에 대한 조언을 해주셨고 그걸 듣고나니 타입스크립트가 이래서 매력적인 거구나 하고 느꼈고 지금까지 타입스크립트를 헛사용했다고 느꼈다! 앞으로 리팩토링하면서 좀 더 제대로 타입스크립트를 사용해보고 싶다.
- styled-component의 them을 적극적으로 활용하지 못해서 아쉽다. 이 부분도 팀원들의 스타일 적용이 들어가면서 동시에 설정하다보니 theme을 활용한 부분이 있고 아닌 부분이 있어서 이후에 다크모드 등을 고려했을 때 유지보수 측면에서 효율적이지 않겠구나라는 생각을 했다. 전역변수, 공통 사용 등이 목적이라면 최대한 프로젝트 초반이 정의하고 팀원들과 공유하는 것이 필요하겠다고 느꼈다!
LEARNED
- 프로젝트를 시작하기 이전에는 협업에서 깃을 어떻게 활용해야할지 감이 안왔는데 프로젝트를 진행하면서 깃에 대해 많이 배운 것 같다. 아직 깃을 사용하는 것이 무섭기도하고 방어적으로 사용하고 있긴 하지만 이런 식으로 흐름이 진행되는구나 하고 감을 잡을 수 있어서 좋았다.
- 팀원들과 지속적으로 소통하면서 소통하는 방법에 대해 배우고 고민할 수 있었던 것 같다. 내가 가진 문제점을 어떻게 하면 팀원들이 이해하기 쉽게 전달할 수 있을지, 나의 의견을 어떻게 말해야 내 의도가 명확히 드러나게 할 수 있을지에 대해 연습할 수 있었고 팀원들의 소통방식을 보면서 아 저렇게 현재의 자신, 혹은 프로젝트의 문제점을 명확히 인식하고 그것에 대해 분명하게 말하는 것이 필요하구나 하는 등의 소통방식에 대해 배울 수 있었다.
- 자신의 할 일이나 과정들을 노션에 잘 기록해두는 팀원들의 모습을 보면서 역시 기록을 남기는 것이 중요하다는 걸 다시 한 번 느꼈고 기록은 많이 남길 수록 더 좋다라는 생각이 들었다. 정신없이 프로젝트를 진행하면서 점점 기록에 소홀히하게 됐었는데 다음 프로젝트부터는 짧게라도 기록을 꾸준히 남겨야겠다는 생각이 들었다.
LONGED FOR
- 리액트에 익숙해지고 경험을 쌓는 것이 목표였는디 어느정도 달성했다고 생각한다. 앞으로 가야할 길이 멀긴하지만 이번 프로젝트를 기점으로 리액트에 대해서 이건 아는구나, 이건 아는 줄 알았는데 사실 제대로 모르고 있었구나 에 대해 깨달을 수 있었다. 이렇게 깨달은 점에 대해 꾸준히 공부하면서 채워나가고 싶다.
- 프로젝트의 마감일은 끝났지만 팀원들과 함께 의논했던 추가기능들까지 완전히 구현된 실제 프로젝트 마감을 하고 싶다. 기존의 프로젝트로도 만족스럽지만 추가하고자했던 기능, 그리고 코드 리팩토링 등을 거치면 정말 뿌듯한 결과물을 얻을 수 있을 것 같다.
- 첫 프로젝트를 진행하기 전엔 1인분을 못하면 어떡하지? 라는 고민이 많았다. 하지만 실제로 진행해보니 어떤 일이든 눈 앞에 주어지면 어떻게든 진행된다라는 것을 깨달았고 그 과정에서 팀원들의 도움이 시간을 지체하지 않고 프로젝트를 잘 마감할 수 있도록 큰 역할을 해줬다. 다음 프로젝트 부터는 걱정만 하기 보단 이번에 진행된 프로젝트 과정을 복기하면서 어떤 점을 개선할 수 있었을지, 내가 무슨 역할을 했으면 좋았을지 정리해서 더 숙련된 마음으로 프로젝트를 진행하고 싶다.
- 프로젝트 과정을 블로그 회고글로 기록해두고 싶다. 취업뿐만 아니라 스스로의 발전을 위해 필요한 과정이라고 생각된다. 프로젝트에 대한 기억, 감정을 잊기 전에 얼른 기록을 남겨야할 것 같다!