[사이드 프로젝트] 59mins - 1편

김영훈·2022년 8월 12일
1

Side Project

목록 보기
1/4
post-thumbnail

사이드 프로젝트 소개


⭐️59mins⭐️

직장인들의 고민인 회의 시간을 보다 효율적으로 사용으로 운용하고자 만들어진 제품입니다.


계기


프로젝트를 처음부터 참여한 것은 아니였다.

같은 회사에 근무 중이신 서비스 기획, 디자이너분이 하고 계신 프로젝트였고,
프론트 개발자 나가셔서 인원이 필요했던 상황이었다.

기능은 어느 정도 완성이 되어있고 디자인도 수정 사항이 거의 없는 상황이라고 전달 받았고 동작 하지 않는 부분 구현 & 이슈 처리와 유지 보수를 할 개발자가 필요하다라고 말씀을 해주셨다.

나는 이 기획, 디자이너 두분이 일을 잘하신다 생각하고 있었고 개발 스택도 마음에 들어서 무조건 하고 싶었지만 내가 책임지고 마무리 할 수 있는지에 대한 고민이 컸다.


계획


1. 기획 검토

주요 페이지는 4페이지였다.

  1. 로그인 회원가입
  2. 회의 정보 세팅
  3. 회의 진행 (회의록 작성 / 타이머)
  4. 회의 완료

초기에는 Real time으로 여러 유저에게 공유되어지게 기획을 했으나 한계가 있다고 판단하여 한명의 유저가 polling을 통해 저장만 하는 형태로 최종 픽스가 되었다.

다만 유저들이 원하는대로 동작을 시키지 않았을때의 정의가 부족하다는 느낌이 들었고 작업하면서 기획분들과 논의를 하면서 작업해야 될 것 같았다.

2. 코드 분석

  • Next
  • Redux-toolkit
  • SWR
  • Styled-Components

해당 기술 스택으로 개발이 되어있었다.

Next가 채택 되었는데 핵심 기능인 getStaticProps, getStaticPaths, getServerSideProps은 사용하지 않았고, 단지 회의 진행 중 화면에서 전역 상태를 사용하기 위해서 Redux를 사용하는 듯한 코드였다.
거기에 styled-component로 작업이 되었는데 class로 도배가 되어있었다.

기능도 어느 정도 완성 되었다고 전달 받았었는데 사실 제대로 마무리 되어있는게 하나도 없고 구현되었다고 한 부분들 조차 일부분만 작업 해놓거나 예외 처리가 하나도 안되어 있어 생각보다 오래 걸릴듯한 예감이 ...😇

3. 작업 진행 방향

이미 상당 부분 진행되어 있는 코드 위에 작업하는 것은 쉽지 않았고 따로 인수인계 없이 코드를 파악하려니 코드를 짠만큼의 시간이 들었다.
그래도 빠른 마무리를 위해서 나름대로의 방향을 정했다.

  • 구현되지 않은 항목들 우선 순위로 작업
  • 최대한 기존 코드 스타일을 유지하고 되도록이면 동작하는 부분들은 건드리지 않음
  • Next 기능 추가하여 사용 이유 납득 시킬 것
  • 전역관리가 크게 필요치 않은 규모라 Redux제거
  • 놓친 예외, 에러 처리에 대해서 작업 예정

작업 관련 이야기는 다음 포스팅에 이어서..

profile
개인적인 기록.

0개의 댓글