WIL 0801 ~ 0807 13주차 회고
실전 프로젝트 마무리하며
실전 주차가 마무리되고 이제 지원 주차에 들어왔다. 실전 프로젝트를 돌아보는 시간을 갖고자 한다.
왜 stockhub인가? 리더님에 아이디어였다. 나는 별다른 아이디어도 없었고, 프로젝트에 아이디어가 단순 게시판 형식만 아니면 됐다. 주식을 주제로 하다 보니 차트 구현 등 재밌는 그림도 있을 것 같아서 그대로 진행하기로 했다.
websocket만 추가 의견을 냈다.
사용 기술
몇 가지만 살펴보자면 cloudFront 배포, reactquery, recoil 정도 있는 것 같다.
CloudFront배포는 사실 욕심이였다.
처음에는 Amplify로 배포했었다. CloudFront로 변경한 이유는 자동으로 https 환경으로 배포가 되기 때문에 백엔드에서 https로 배포하기 전까지 같이 테스트를 할 수 없다는 점이 있었다. 때문에 http로도 배포가 가능한 S3로 변경을 했다.
이후 https로 배포를 할 때 후보지는 amplify, cloudfront, vercel 3개가 있었다. 여기서 cloudfront를 사용한 이유는 앞서 말했듯 욕심이 컸다. 다른 배포 방식은 사용할 생각이 없었기 때문에 자세히 알아보지는 않았지만, cloudfront는 CDN 서비스를 제공해준다. 사용자에게 가장 가까운 서버에서 데이터를 보내기 때문에 전달 속도가 다른 방식보다 빠른 편이다. 다만 우리 프로젝트는 국내만 타깃을 하기 때문에 큰 영향이 있지는 않을 것 같다.
욕심이라 말한 이유는 github action을 이용한 배포가 가능하다는 점이다. 어떻게 보면 github action은 특정 명령을 자동 수행해주는 것인데, vercel이나 amplify는 브런치를 연결하고 자동으로 배포가 가능한 형태였기 때문에 사용할 수 없었다. 배포 외 다른 명령을 위해 사용할 수는 있겠다만 아직 그렇게 이해도가 높지는 못하고, 딱히 사용할 상황을 모르겠다....
react-query 또한 욕심이다. 다만 이유는 있다. redux-thunk , react-query 두 가지 방식을 선택할 때 대부분에 사람들이 성향 차이라고 말했던 기억이 있다. 보일러플레이트가 너무 많다는 단점이 있지만, toolkit이라는 대체가 있고, 익숙하다는 장점이 있다. 개인적으로 react-query를 보면서 store관리가 아닌, 매번 fetch를 할 수 있다는 장점이 있다고 생각한다. 처음 기획은 실시간 데이터를 기반으로 동작하는 웹페이지였기 때문에 react-query가 적절하다 생각했다.
recoil은 redux에 메리트가 사라졌기 때문에 대체 라이브러리 중 가장 쉽다고 생각하여 사용했다.
redux의 장점은 dev tools를 이용한 추적이 용이하고, 확실한 상태관리상태 관리 등 여러 장점이 있지만, react-query를 사용하고, 전역 상태 관리할 데이터가 거의 없기 때문에 redux를 쓰면서 데이터 한 줄을 저장하기 위해 10줄을 쓰고 있는 내 모습에 현타가 왔다. 차라리 빠르게 배울 수 있는 다른 가벼운 라이브러리로 변경을 시도했고, 그 결과 recoil을 사용하게 됐다.
후기
항해 99에 발 담구는 순간부터 이 시간을 기대하고 있었다. 하나의 온전한 프로젝트를 진행하면서 진짜 개발자가 되는 느낌을 받았다고 해야 할까?
과정이나 결과가 어떻던지 간에 나는 기분이 좋다. 이제는 정신없던 개발 스택을 다시 돌아보는 시간을 가질 필요가 있을 것 같다.
내가 되고 싶은 개발자?
나의 개발자 이상향은 무엇일까?
구체적으로 목표를 잡아본 적은 없는 것 같다. 대략적으로 보면 다른 개발자에 영향을 끼칠 수 있는 개발자가 되고 싶다.
그리고 계속 발전하는 개발자가 되고 싶다.
발전 방향을 작성해보자면, 프런트 개발자를 시작으로 풀스텍이 1차 목표이며 블록체인 등 비교적 어렵다고 생각되는 개발 영역까지 도전해보고 싶다. 아직까지는 어떤 파트에 대한 재미보다는 개발 자체에 재미가 더 큰 것 같다.