이 프로젝트는 사실 친구와 2인조로, 나는 프론트엔드를, 친구는 백엔드를 맡아서 2달간 진행할 예정이었다. 그러나 기획 중간에 친구에게 개인적인 사정이 생겨서 나만 따로 진행하다가 결국 백엔드까지 하게 되어 풀스택 솔로 프로젝트가 되었다. 이후 친구의 백엔드 코드에 맞춘-친구는 파이썬 개발자이다.- 프론트엔드 코드를 collab이라는 브랜치를 따로 파서 나누어 진행하게 되었다.
기획단계에서 친구가 종종 이용한다는 '만개의 레시피' 사이트를 참고해서 이와 같은 레시피 공유 사이트를 만들자는 의견이 나왔고, 따라서 우리가 만들 수 있는 최소한의 선에서 일부 기능과 디자인을 참고하여 개발했다.
나는 이전 팀 프로젝트에서 느꼈던 부족한 css 실력을 키우기 위해 한 달 이상의 긴 시간을 프론트 개발에 쏟게 되었다. 그리고 이번에는 리덕스 대신 react-query를 사용해 ajax 통신과 서버 응답 상태를 전역적으로 관리했는데 코드 진행이 내 예상과 다를 때가 많아 적응하는 데 시간이 걸렸다.
이번 개발을 하면서 여러 시행착오를 겪었지만 새롭게 배운 것도 많았다.
프론트엔드
백엔드
배포
사실 개발적인 것 이외에 실수를 통해 배운 것도 있다.
혼자서 개발을 하다가 막히는 구간이 있으면 스스로 알아내고 풀어내야 하기 때문에 답답하기도 하지만 문제를 해결하는 과정이 재밌고 해결을 했을 때 더 큰 기쁨이 찾아온다. 이런 과정을 통해 나온 결과물은 나의 성장을 명확히 인지할 수 있는 수단이 된다. 부족한 부분 또한 보이기에 새로운 것을 더 배우고 싶다는 욕심이 생긴다.
명확한 데드라인을 정하고 계획대로 개발을 진행하자.
혼자서 하다보니 자꾸 늘어져서 시간을 낭비하는 순간이 많았다. 철저한 계획하에 일정 안에 개발을 진행하는 습관을 들이자.
깃과 aws 이용시 주의하자.
뒤늦게 안 사실이지만 깃가디언을 이용하면 민감 파일이 외부로 유출되는 것을 미리 방지할 수 있다.
친구가 준비가 된다면 친구의 벡엔드 코드에 맞추어 프론트엔드의 일부를 재구성하는 작업이 필요하다.
성능최적화를 고려하며 개발을 하기 위한 공부를 해야겠다.