3주 간의 프로젝트가 마무리되었다. The-Julge(더줄게)라는 프로젝트이고, 급하게 일손이 필요한 자리에 더 많은 시급을 제공하여 아르바이트생을 빠르게 구할 수 있는 서비스이다. 네 명의 프론트엔드 팀원들과 함께 열심히 3주를 불태워보았다.
프로젝트를 통해 배운 점
몰입
이번 프로젝트을 한 단어로 정리해야 한다면 "몰입"이라 하겠다. 프로젝트에 완전히 스스로가 파묻힌 것처럼 3주 간 내 세상은 온통 주황색 "더줄게"로 가득한 느낌이었다. 정말 프로젝트에 파묻혀서 개발하느라 프로젝트를 시작한 후로는 다른 걸 하려고 해도 눈에 들어오지 않아 결국 다시 VSCode를 켜고 프로젝트 개발을 해야 할 정도였다. 아침에 일어나서 밤에 잠이 들기까지 온통 한 가지에 이렇게까지 빠져 본 경험은 처음이다.
다이어리에 분 단위로 타임 트래킹을 한 기록을 보니 순수하게 하루 평균 7-8시간 이상은 프로젝트에 오로지 집중해서 했다. 그만큼 이번 프로젝트 기간 동안 정말 재미있게 개발을 했고, 개발에 대한 흥미가 더 커졌다. 그리고 이렇게 집중해서 개발을 하니 이제는 정말로 개발자의 길로 한 발짝 더 나아간 기분이라 자신감도 한 층 UP
도전적인 선택
이번 중급 프로젝트에는 조금 더 도전적인 선택을 했고, 그만큼 배운 것이 많다. 첫 프로젝트였던 Rolling을 마무리하며 회고하면서는 "도전적인 선택을 하지 않은 것"에 대한 아쉬움이 있었다. 팀에게 괜히 민폐를 끼치고 싶지 않다는 생각에 좀 더 쉽고 안전한 파트를 맡아서 했지만, 어차피 무슨 일이든 맡게 되면 어떻게든 하게 된다는 걸 프로젝트가 끝나고서야 깨달았다.
그래서 이번 프로젝트에서는 지난 번의 회고를 바탕으로 조금 더 구현하기 어려운 것들을 맡겠다고 했다. 그 덕에 IntersectionObserver API를 사용해서 무한 스크롤을 구현해보기도 했고, 페이지네이션에 대한 로직도 팀원 분과 함께 같이 열심히 고민해 볼 수 있는 기회를 가져갈 수 있었다.
도전적인 선택을 했고, 또 그만큼 시간을 쏟아서 하다보니 내 것을 다 한 후 남아 있는 다른 작업들도 할 수 있었고, 그만큼 이번 프로젝트를 통해서 구현 연습을 실컷 해볼 수 있어서 좋았다. 팀 깃헙을 보니 내가 기여한 부분이 많아 굉-장히 뿌듯ㅋㅋ
함께 자라기
'함께 자라기'를 배웠다. 사실 스프린트를 시작하기 전까지는 누군가와 같이 하는 것보다 혼자 하는 게 효율이 더 좋다고 믿어 왔고, 누군가와 같이 하는 건 조금 부담스러웠다. 그런데 그 생각이 바뀌게 된 계기가 지난 Rolling 프로젝트였고, 그 당시 회고를 하기로 좀 더 팀원들과 코드에 대한 교류를 많이 하자는 다짐이 있었다. 그리고 그때 회고했던 대로 이번에는 코드를 짜는 데에 있어 좀 더 팀원들과 고민을 함께 하기로 했다.
함께 할 때에 서로 부족한 부분을 채워나갈 수 있다는 것을 크게 느꼈다. 이번 프로젝트를 진행하며 나와 정말 많은 대화와 고민을 함께 한 팀원 분이 한 분 계시는데 실명을 거론할 순 없으니 C님이라고 하겠다. C님과 나는 서로 상호 보완적인 부분이 있었는데, 내가 코드 동작 원리에 대한 이해가 상대적으로 부족해 마주했던 문제는 C님이 많이 도와주셨고, C님이 레이아웃 그리기를 어려워하시고 시작을 하고 계시지 못할 때에는 내가 도움을 많이 드렸다. 서로의 강점과 약점이 서로 반대이다보니 상호 보완적으로 서로 코드 짜는 걸 도와주어 혼자 할 때보다 훨씬 배우는 점이 많았다.
그렇게 서로 상부상조 하는 경험을 하면서 '혼자'일 때보다 '함께'일 때 얻을 수 있는 시너지를 깨닫게 되었다. 프로젝트 중 어느 한 날에는 C님과는 하루 종일 게더타운에 앉아서(?) 페어 프로그래밍을 한 적도 있다ㅋㅋ
고민과 질문
혼자 너무 오래 고민하지 않고 적절한 때에 질문을 했다. 이것도 지난 프로젝트 때 회고를 했던 내용인데, 첫 프로젝트를 통해 질문에 대한 벽은 어느 정도 부수어 졌지만 그래도 좀 더 질문을 "잘" 해볼 필요가 있었다.
질문도 능력이라는 걸 배운 지난 프로젝트 때의 깨달음을 가지고 이번 프로젝트를 진행하면서는 막히는 문제에 대해 혼자 충분히 고민을 해 보고도 해결이 되지 않으면 주저하지 않고 다른 팀원이나 주강사님을 찾아가 질문을 했다. 질문을 하기 전에 질문 내용을 정리하는 것도 잊지 않았다.
혼자서는 실마리가 전혀 보이지 않던 문제들이었지만 질문을 할 때, 그 해답으로 가는 길이 좀 더 선명해져 갔다. 그렇게 문제를 해결해 나가는 데에서 오는 희열을 느끼기도 했다.
리더의 역할
팀장이셨던 C님을 통해 리더의 역할을 많이 배웠다. 내가 팀장을 맡았던 첫 프로젝트 때는 초기에 정해야 할 컨벤션이라든가 진행 방식 같은 부분에서 스스로 개선의 여지가 있다고 생각했던 부분이 있었기 때문에 이번에는 내가 팀원으로서 배울 점은 많이 배우자는 생각으로 프로젝트를 시작했다.
꼼꼼하신 C님의 주도 하에 프로젝트 초반에 세팅과 컨벤션 같은 것들을 정한 후에 시작을 했다. 코딩 스타일부터 커밋 메시지, gitHub 활용에 관한 것까지 팀원들끼리 하나의 방식으로 얼라인하는 것부터 시작을 했는데, 그 덕에 프로젝트를 하면서 코드가 난장판이 되는 일은 크게 없었던 것 같다. 팀으로 프로젝트를 진행할 때에는 마치 한 사람이 작성한 코드인 것처럼 작성된 코드가 좋다는 말을 들었었는데, 그 부분에서는 이전 프로젝트보다 이번 프로젝트에서 더 나은 결과가 있었다. (후반으로 갈수록 많이 무너지긴 했지만)
그리고 C님의 주도 하에 이슈나 트러블슈팅 등의 기록을 잘 남겨둘 수 있던 것도 팀끼리 지식을 공유하고 지향점을 일치시켜 나가는 점에 있어서 도움이 많이 되었다. 내가 겪었던 문제를 다른 사람이 겪게 되거나, 그 반대의 상황일 때 훨씬 문제의 해결이 빨라지고 쉬워지는 것을 느꼈다.
지난 번의 팀장 경험을 비추어 보면서 '아, C님은 이럴 때 이렇게 하시는구나. 나도 나중에 이렇게 해봐야겠다'하는 배움이 있었다.
아쉬운 점
팀원의 코드를 더 꼼꼼히 보지 못 한 것
팀원의 코드를 좀 더 내 코드처럼 보지 못 한 부분이 아쉽다. 지난 프로젝트 때보다 훨씬 활발한 코드 리뷰가 팀 내에서 있었고, 코드 리뷰를 할 당시에는 나름 꼼꼼히 봤다고 생각을 했지만 그럼에도 불구하고 대강 훑고 넘어간 부분이 많았다는 것을 후반부에 가서야 깨달았다.
아무래도 내가 쓴 코드가 아니다보니 잘 읽히지 않는 부분 때문에 매번 어느 정도 선에서 리뷰하고 말았던 것 같은데, 결국 실무에 가서도 다른 사람이 작성한 코드를 봐야 할 일이 많을테고 협업에 있어서는 피해갈 수 없는 부분이기 때문에 다른 이의 코드를 파악하는 것도 아주 중요한 역량일 것이라는 생각이 든다.
다른 팀원이 작성한 코드를 통해 배우는 점도 많을테고, 반대로 도움을 드릴 수 있는 부분도 있었을 것 같은데 너무 나의 코드에만 파뭍혀 있던 것 같아 그 부분도 조금 아쉽다. 다음 번 프로젝트를 진행할 때에는 다른 분들의 코드도 좀 더 주인의식을 가지고 살펴봐야겠다.
동작 원리에 대한 이해 부족
무한 스크롤을 구현하다가 나에게는 이번 프로젝트의 하이라이트라고도 할 수 있는 버그를 마주쳤는데, 나중에 알고보니 React의 useEffect의 동작 원리에 대한 이해 부족에서 생긴 문제였다. 일단 구현하는 것을 우선 시 하다보니 동작 원리에 대한 이해를 탄탄히 하지 않은 채 프로젝트를 진행하다보니 이런 에러를 만나도 스스로 디버깅하는 것이 무척이나 힘들었다.
감사하게도 다행히 팀원 분들과 멘토님, 주강사님의 도움으로 해결하기는 했으나, 스스로 문제를 해결할 수 있는 능력을 키우고 싶다. 그러기 위해서는 무엇이 문제인지를 알아야 하고, 무엇이 문제인지 알기 위해서는 코드의 동작 원리를 알아야 할 것이다. 공부를 더 열심히 해야겠다.
앞으로는 이렇게!
아쉬웠던 부분을 바탕으로 앞으로의 어떻게 하면 좋을지에 대해 생각을 해 보았다.
1. 우선, 다른 사람의 코드를 파악하는 연습을 해야겠다. 꼭 필요한 부분일 것이다. 꼭 협업할 때 뿐만이 아니더라도 다른 사람의 코드를 보고 파악을 해야 할 일은 많기 때문에 내가 쓴 코드가 아니라고 소홀히 보고 넘어가지 말자.
2. 복습을 하고 리액트 문서를 읽자. 코드의 동작 원리에 대한 이해가 부족하다는 걸 느꼈다. 지금까지 배운 걸 다시 복습하는 것도 필요하겠고, 또 리액트에 대한 부분은 강의만 보고서는 부족한 부분이 많으니 꼭 리액트 문서를 읽어보자. 공부를 열심히, 기초를 탄탄히 하자.
'회고' 카테고리의 다른 글
팀스파르타에서의 3개월 회고 (0) | 2024.12.02 |
---|---|
Keepy-Uppy 프로젝트 회고 (0) | 2024.12.02 |
Rolling 프로젝트 회고 (1) | 2024.11.27 |