팀 프로젝트 3주차 회고

전은찬·2023년 4월 6일
0
post-thumbnail

팀 프로젝트 3주차 !
기능 구현이 시작되었다.

업무가 분담되었고, 나는 나름 내가 자신있는 기능들을 하기로 했다.
아무리 자신있다고 한들..
부트캠프에서 4개월 정도 배운게 전부이기때문에
수업 때 배운 코드를 참고하게 되지만
지금 우리 팀이 진행하는 프로젝트는 수업 내용에서 추가된 기능들이 많기때문에
고뇌의 시간을 생각보다 자주 가졌다(ㅎㅎ;;)

예를들면 수업에서는 단순히 yup을 이용해서 유효성 검사를 하고
에러를 띄운 뒤 버튼 활성화를 통해서 회원가입 mutation을 보내는
아주 기본적인 것만 진행했었는데..

이번에 내가 구현한 페이지 중 하나인 회원가입에서는 인증번호 전송과
인증번호 키 확인, 닉네임 중복 등 여러가지 버튼이 한 페이지에 많아서
react-hook-form을 사용하기에 난항이 있었다.

form태그 마다 yup(schema)를 각각 부여하고 form들 마다의 yup을 한번에
유효성 검사를 한 후에 회원가입 버튼이 활성화 되게끔 작성하는 코드가
생각보다 많이 헷갈리고 복잡했다.

회원가입 페이지에서 이렇게 많은 시간을 쏟을 줄은 생각 못했지만
결국에 해냈기에 많이 뿌듯했다.

마이페이지 구현도 내가 맡아했는데 UI적인 기술이긴 했지만
antd 라이브러리에서 탭 형식을 가져와 페이지를 구현하기로 했어서
이 또한 라이브러리 활용이 힘들었다.
기본적인 색상과 틀을 바꿔주기 위해 docs도 잘 읽어봐야했고,
엄청난 구글링과 chatGPT를 이용해서 끝끝내 원하는 UI를 만들 수 있었다.

우리 사이트에서는 맛집에 대한 예약도 crud하기로 하였는데
캐치테이블처럼 직접적으로 가게와 연동된 것이 아니라서 백에서 하드코딩된 데이터로 예약이 되는 것처럼 구현하였다.

인기있는 맛집 리스트에서는 구글 API를 통해
가게의 상호명과 주소, 별점, 전화번호, 휴무일 등 받을 수 있는 데이터들을 솎아 낸 뒤에 우리 사이트 UI에서 필요한 데이터만 골라 정보를 불러왔다.
이 페이지에서는 rest-API의 get 방식으로 데이터들을 불러왔다.
내가 앞으로 들어가게 될 회사에서
rest 방식을 사용할지 graphQL방식을 사용할지 모르기때문에
이번기회에 간단하지만 rest 방식을 조금이라도 더 이해할 수 있었어서
이 기능을 맡기를 잘했다고 생각했다.

원래 맡은 업무 중에 배포는 따로 없었는데 배포를 내가 맡게 되었다.
배포 자체는 수업에서도 짧은 시간동안 잠깐 배웠기때문에 이해가 어려웠고
배포에 자신도 없었다.
그래도 수업 중에 필기한 내용과 강의 스크린샷(?)등을 활용해서
아마존 웹 서비스 aws 배포를 어찌저찌 할 수 는 있을 것 같아서 도전했다.

수업에서 배포를 배울 때는 이해도 안되고 뭐가 뭔지 전혀 몰랐는데
혼자서 배포를 하다보니 자습, 복습 하는 느낌처럼 뭔가 하나씩 이해가 가기 시작했다.
심지어 완성된 프로젝트가 아닌 에러 캐치를 위해
중간중간에 배포를 해야했기때문에 코드가 계속 바뀌면서 배포를 계속 다시
진행해야만했다.
이 과정을 10...번?.. 정도 반복한 것 같다.
자연스럽게 나의 배포 속도는 빨라졌다.
자료를 안보고 진행할 순 없지만 자료를 보고 배포하는 속도는 20분 남짓이였다.

이번 프로젝트 많이 힘들었다.
백엔드에서 배포가 되고 CRUD가 완성이 어느정도 되어야
프론트가 UI작업이 끝나고 기능구현에 들어갈 수 있는데 백 팀에서도 난항이 있었는지 예상보다 작업이 늦게 끝났고
그에 따라 우리 프론트도 기능구현하는 시간이 촉박해졌다.
마지막에 마지막에 마지막까지 배포를 하면서 끝끝내 완성을 하긴했지만
발표를 위한 완성일뿐 아직 마무리는 안되었다.
시간 제한 없이 프로젝트를 진행하면 완성도는 당연히 높아지겠지만
시간에 쫓기면서 프로젝트를 하게 되니까 완성도는 조금 떨어져도
책임감과 사명감이 더 올라갔다.
이게 팀 프로젝트의 묘미..(?)인가 싶다.

어느 회사에 들어가게 되더라도 어디든 프로젝트가 아니여도 모든 일에
시간은 정해져있을 것이고 그 시간 안에 해결하는 것이 곧 능력이라고 생각한다.

이번 프로젝트에서 프로젝트 완성만이 아닌 다른 것도 함께 배운 것 같아서
뿌듯했다.

profile
no record no memory

0개의 댓글