작년 겨울 드디어 나도 취업했다는 기쁜 마음을 안고 첫 출근을 하였지만 5일 만에 말도 안되는 권고사직을 당했다. 이유는 프론트엔드 개발자로 하기엔 실력이 없다고.. 애초에 사수도 없었지만 더 웃긴건 4일차에 프론트엔드 말고 AI나 안드로이드 개발자를 할생각 없냐고 대표가 물었는데 나는 AI는 거의 다뤄본적도 없고 안드로이드도 대학교때 말곤 준비한적이 없어서 공부를 해야할거같다고 했다.근데 대표는 계속 안드로이드 개발자 권유를 하면서 3개월만 공부하고 다시 지원하라고 했다.. ㅋㅋㅋㅋㅋ 나보고 전공자라서 이런거 다룰줄 알았다고 기대 많이 했다는데 이럴거면 프론트엔드로 왜 뽑아놓은건지.. 그리고 앱개발자로 한번 해볼래도 아니고 나갔다가 공부해서 다시 그걸로 지원하라는 말이 어이가 없었다.
결론은 회사랑 안맞다고 짤리게 되어 어이없게 다시 취준생이 되었고.. 별 준비없이 12월을 마무리 하였다. 하지만 다시 새롭게 준비해서 내 역량을 좀 더 키우기 위해 원티드 프리온보딩 챌린지에 신청하게 되었다.
제공된 API를 이용하여 나만의 Todo App 개발
Javascript -> Typescript 변환
any나 타입단언을 최소화 하여 인터페이스/ 유니온 등을 사용하여 타입 정의
이름이 불명확한 변수 & 함수명 , 폴더 & 컴포넌트명 변경
예전에 타입스크립트를 이용하여 2인 프로젝트를 하였는데 그때는 any타입을 많이 사용했었다. 하지만 any타입을 최소화해야한다는 것을 알게 되었다.
폴더 구조를 어떻게 구분해야할지 함수 & 변수명 이름 짓는거에 좀더 많은 고민을 할수 있는 시간이 되었고 이로 인해 다음 프로젝트때는 좀 더 효울적으로 폴더와 컴포넌트를 분리 할수 있을 것 같다.
사용자 관점에 맞춘 UI 수정
커스텀 훅을 따로 폴더를 만들어 분리
폴더 구조 변경
단순히 기술을 사용하여 구현이 아닌 사용자 입장에서 생각해 실제로 사용자가 사용한다는 마음으로 회사에서 뿐만 아니라 프로젝트할때에도 이러한 마음을 가지고 개발할 것이다.
폴더 구조에 대해 좀 더 고민하면서 앞으로 프로젝트할때에 좀 더 정리된 환경에서 개발할 수 있을거 같아서 도움이 되었다.
커스텀 훅을 만들어 분리할수 있어 다음 프로젝트에는 조금 더 효율적으로 분리해보고 싶다.
원래는 2-1주차로 마지막으로 끝내야 하지만 추가적으로 JEST를 이용하여 테스팅해보고 배포까지 해보고싶어 추가로 리팩토링을 진행하고 있다.
그리고 미처 다뤄보지 못한 React-query로 토큰 처리, 토큰 유무로 리다이렉트 처리를 제대로 정리하지 못해서 추가적으로 작업하려 한다.
간단한 Todo-List를 구현했지만 막상 깊게 파고 들어 개발하다보니 정말 많은 시간이 걸렸다. 단순히 기능구현이 아닌 실제로 서비스를 개발한다는 생각으로 개발하니 신경쓸게 너무 많았다. 비록 디자인은 그렇게 이쁘지는 않지만...
그리고 다른사람들은 어떻게 개발을 하고 있는지 경험할 수 있는 좋은 계기가 되었고 내 자신에 대해서도 문제점에 대해서 제대로 파악할수 있어서 좋았다. 또한 앞으로 코드를 짤때 어떤 생각을 가지고 깔끔하게 짤수 있을지 좀 더 고민해서 최대한 가벼운 앱을 만들고자 노력할 것이다. 그리고 개발하면서 겪은 에러들 고민들을 꼼꼼히 기록해 정리하는 습관도 가질 것이다.
작년 9월부터 11월까지 만든 프로젝트가 있다. 카카오 프렌즈를 참고하여 만든 쇼핑몰 페이지였는데 정말 디자인도 엉망이고 코드도 엉망이었다. 컴포넌트 분리는 제대로 되어있지도 않고 함수나 훅들도 따로 빼놓지도 않았다. 그러다 보니 코드가 정말 지저분했다. 단순히 이러이러한 기술들을 한번 써보자는 생각으로 너무 임하다보니 정작 중요한 코드 관리, 최적화, UI 에 신경을 많이 못 썼던거 같다.
챌린지 때 배웠던 걸 토대로
https://github.com/raw20/kokoafriends
이 프로젝트를 리팩토링할 것이다.