프로젝트를 진행했던 9월이 훌쩍 지났던 것처럼, 10월이 훌쩍 지나 어느덧 11월이 되었다. 바지런히 움직였던 10월 한달 간 어떤 일을 했는지 회고를 통해 알아보고, 늘 그랬듯 스스로에 대한 피드백을 하려고 한다.
10월 한달 간 한 일
- 졸업 작품 마무리
- 스터디 시작
- 최종 프로젝트 진행
- 서론
- 소감 1 - 성장
- 소감 2 - 졸업
이번 달엔 1년 전부터 천천히 준비했던 졸업 작품을 마무리 했다. React 를 처음 공부하면서 팀원들을 모아 진행한 첫 프로젝트였다.
내가 재학 중인 캠퍼스는 교통편이 무척 불편해서 교통 관련 정보를 쉽게 확인할 수 있도록 한 프로젝트다. React 공부할 겸, 팀 프로젝트를 진행할 겸, 졸업 작품을 만들 겸... 겸사겸사가 아주 많이 붙었다.
프로젝트에 대한 소개를 하려는 회고는 아니니 졸업 작품을 마무리한 소감을 주로 얘기 해보고 싶다.
위에서도 말했다시피 React 를 공부할 겸 시작했던 프로젝트다. 1년 6개월이란 시간동안 아주 천천히 개발되었고, 같이 프론트 작업을 하는 팀원은 개발자가 아닌 직장인이었기 때문에 나 혼자 알게 된 지식을 갑자기 도입하는 것은 문제가 있었다.
그래서 해당 프로젝트에서 사용한 React 훅이라고는 useState
와 useEffect
밖에 없다. 이것만 해도 내 신경을 긁기 충분했지만 엉망진창인 CSS 클래스 이름, ESLint 와 Prettier 를 적용하지 않아 제 멋대로인 코드 스타일, 확장성 없는 컴포넌트들까지... 졸업 작품을 완성하기 직전 2개월간 프로젝트 코드를 볼 때마다 처음부터 다시 만들고 싶단 생각에 사로잡혔다.
하지만 엄연히 같이 프로젝트에 참여하는 팀원이 있었고, 모든 코드를 혼자 엎어버리는 것은 예의가 아니라고 생각했기에 기존 스타일을 유지하여 프로젝트를 마무리 지었다.
그래도 이렇게 거슬리는 점이 많다는 점은, 그만큼 코드를 보는 눈이 높아졌다는 의미기도 했다. 이전이라면 절대 혼자서 고치지 못했을 오류들을 혼자서 고치기도 하고, 이전 코드를 조금씩 개선하기도 하면서 스스로도 신기했다. 프로그래머스에서 그간 부족했던 역량을 많이 채울 수 있었다고 생각한다.
간단한 소감이지만, 졸업이라는 관문까지 큰 관문을 하나 해치워서 후련하다. 마지막 남은 관문은 학점이다. 아직 3학점이 남았는데 되도록이면 출석을 하고 싶지 않기 때문에 (...) 빠르게 취업을 하는 것이 목표가 되었다.
본격적으로 취업을 준비하기 전부터 이력서를 준비하려 하는데 12월에 있을 이력서 특강과 멘토님의 커피챗으로 많은 도움을 받을 수 있을 것 같다. 물론 나부터 최종 프로젝트에 최선을 다해야하지만 말이다.
- 서론
- 스터디 방식
- 스터디 효과
- 개선할 점
새로운 스터디를 시작했다. 공부를 할 때 질문과 답변 형식으로 공부를 하는 게 꽤 효과적인 것 같아서 프로그래머스에서 친해진 분에게 질의응답 방식의 공부를 같이 하지 않겠냐는 제안을 했고, 스터디를 진행하게 되었다.
1차 팀을 진행 당시, 준일 멘토님 팀에 계시던 두 분과 친해지게 되었는데, 그중 다른 한 분까지 스터디에 들어오신다는 얘기를 들었을 때 기뻤다. 스터디를 진행할 때마다 얻는 지식도 기대되지만 스터디 분위기가 재밌어서 늘 기대하며 스터디에 참여한다.
스터디는 매주 화요일, 금요일 오전 10시에 모이는 것을 기본으로 한다. 노션을 기반으로 진행하며 정해진 주제에 대해 질문을 작성하고 스터디 시간 전까지 답변을 작성해온다. 그리고 오전 10시가 되면 작성한 질문 & 답변을 기반으로 질의응답의 방식으로 스터디를 진행한다.
- 서론
- 백엔드 팀과의 첫만남
- 백엔드 팀과의 협업
- 프론트엔드 팀의 협업
프로그래머스 데브코스의 피날레인 최종 프로젝트를 시작했다. API 가 우선적으로 제공되고, 큰 틀이 있었던 중간 프로젝트와 달리 최종 프로젝트는 백엔드와 프론트엔드가 한 팀을 이뤄 기획부터 기획에 맞는 API 까지 모두 다 직접 구현해야한다.
최종 프로젝트를 통해 배운 점이나 적용하려고 한 점은 모두 최종 회고에 작성하기 위해 노션에 따로 문서를 남겨두고 있으니, 중간 회고는 백엔드 팀과 협업하며 어떻게 프로젝트를 진행하고 있는지를 위주로 작성하려고 한다.
백엔드 팀원들의 첫인상은... 무서웠다. 🥹
지금은 무서운 분들이 아니라는 걸 알지만 처음 만난 데다가 카리스마가 다들 넘쳐보였다. 하지만 게임을 몇 판 진행하고 얘기를 하다 보니 다들 유쾌하셔서 좋은 팀이 될 것 같다는 생각을 했다.
그리고 실제로도 현재 우리 팀은 꽤나... 평화롭게 프로젝트를 진행하고 있다. 가벼운 갈등이 있어야 해결하는 과정에서 배움을 얻는다고 생각하지만 서로를 배려하는 팀원들이 모여 좋은 분위기를 유지한다고 믿고 싶다. 물론 아직까지 프로젝트를 진행하며 큰 API 수정 요청을 할 필요가 없었기 때문에 유지되는 평화일 수도 있지만, 이왕 좋은 팀 분위기를 가지게 되었으니 조율을 할 때도 좋은 분위기 속에서 토의가 진행되었으면 한다.
React
이번에도 React 를 기반으로 프로젝트를 진행한다. Next JS 를 사용할지 말지 많은 논의를 거쳤지만 결국 사용하지 않기로 했다. (이 점은 추후 따로 블로그 글을 작성할 예정이다.) React, React-query, Context API 를 주로 사용하고 있다.
CSS
CSS 는 tailwind 와 Emotion 을 함께 사용한다. 멘토님께서 둘을 같이 사용하는 것이 안티패턴이 아니라고 하셔서 바로 팀에 건의하고 둘을 같이 사용하기로 했다. 하지만 Tailwind 의 기반이 잡혀있는 상태에서 Emotion 이 굴러들어온 느낌이라, 두 프레임워크를 모두 효율적으로 잘 쓸 수 있는 방안을 아직 마련하지 못했다는 느낌이 든다.
저번 프로젝트와 비슷하게 전체적인 디자인이나 컬러는 내가 담당하게 되었다. 다만 지난 프로젝트에선 디자인에 대한 충분한 논의 없이 빠르게 디자인이 진행되어 수정되는 일이 잦았기에 이번엔 와이어 프레임을 먼저 만들기로 했다.
힘들 텐데도 디자인 완성까지 프론트엔드 팀원들이 모두 열심히 참여해서 피드백과 수정을 함께 해주었다. 디자인이 완성되자 백엔드 팀원분들께서 아주 마음에 들어해주셔서 기쁘면서도, 나를 포함한 모든 팀원들이 피그마를 더이상 보고 싶지 않다고 괴로워했다. (개발 최고)
3. 진행 사항
현재까지 순조로운 항해를 이어가고 있다. Daisy UI 와 Tailwind 를 사용하면서 공통 컴포넌트 개발 시간이 크게 단축되었다. 하지만 이렇게 프로젝트에 사용할 컴포넌트를 한차례 감싸주지 않으면 기술 스택을 변경하게 되는 경우 어려움이 있다는 걸 알게 되었다. 프로젝트 종료 후 Refactoring 을 진행하게 되면 팀원에게 이 점도 함께 공유해보려고 한다.
그래도 공통 컴포넌트에 들이는 시간이 단축되었기에 일찍 페이지 작업을 시작하게 되었다. 현재 4페이지 정도는 UI 가 모두 완료된 상태이다. 1차 데모 이후엔 남은 페이지를 만들고, API 를 연결할 생각이다. 약 한달 간의 시간이 남은 상태에서 급한 마무리를 하지 않게 계획을 잘 세워야겠다.
10월 중간 회고는 이쯤에서 마무리하려고 한다. 추후 회고에 쓰기 위해 프로젝트를 진행하며 마주하는 에러를 노션과 Git wiki에 모두 기록해두고 있는데, 최종 회고에 쓸 내용이 무척 길어질 것 같다. 최종 회고에는 느낀 점보다는 겪은 트러블 슈팅과 적용한 기술 내용을 위주로 적을 예정이다.
데브코스가 약 1달 정도밖에 남지 않았는데 데브코스를 진행하며 좋은 사람들을 참 많이 만났고, 몰입과 성장의 즐거움을 알게 해주어서 이대로 수료하긴 너무 아쉽다는 생각이 든다. 🥲 데브코스가 종료되고도 친했던 사람들과는 커뮤니티를 계속 유지하며 취업에 도움되는 정보를 계속 공유하며 앞으로도 연을 계속 이어 나가고 싶다.
오옹 이것이 회고인가요...? 진짜 깔끔하네요....⭐️
반면에 제가 쓴글은 무법지대인데 앞으로 회고 쓸 때는 수연님 글을 많이 참고해야겠어요!!
저도 졸업프로젝트할 때, useState만 쓰고 간혹 useEffect까지 사용했는데,
정말 볼때마다 리팩토링 하고 싶다....라고 생각해요ㅋㅋㅋㅋㅋㅋㅋ
스터디하면서 차근차근 알아나가는 방식이 너무 좋은거 같아요
저는 급하게 허겁지겁하느라 탑을 마구잡이로 쌓아서 무너지기 일보 직전이라,
데브코스 끝나고는 천천히 차곡차곡 다시 쌓으려고요🥲
매번 응원합니다🌈 (+feat. 수연님이랑 있는 팀은 싸울 수가 없고 화기애애 한 거 같아요)