본문 바로가기
회고

스타트업 개발자 생활 및 '늘펫 플러스' 서비스 출시 회고

by 하상원이야 2023. 4. 10.

반갑다. 난 28살 봉천동 메이웨더 하상원이다.
설마 2월에 무슨 2023년 목표를 적어놓고 4월에 다음 글을 작성할 줄이야.... 두 달동안 정말 뒤지게 바빴던 것 같다.
작년 7월부터 벳플럭스라는 회사에 프론트엔드 개발자로 들어와서 CTO님과 함께 2인 개발자 체제로 여~러 기능들을 개발했다.
오죽하면 개인 프로젝트 하지도 않았는데 회사 master에 푸시한 것만으로 깃헙 잔디가 나름대로 채워진 정도이다.

스크롤을 쭉 내려서 노래를 들으면서 글을 읽어보세요

올해 2월에 다짐했던 개발공부, 복싱, 블로그 싹 다 개나 줘버린 상태.
이대로 가다간 남는 것도 없이 일만 하다가 죽어버릴 것 같다.
이럴 수 없어
 
스타트업 개발자의 회고는 뭐 그렇다. 체계를 잡는 것이 쉬운 일이 아니구나.. 정도
내려온 지침대로, 정해진 일을, 정해진 범위까지, 마무리하고 끝. 을 좋아하는 사람에겐 지옥이 아닐까 싶다.
지침이 바뀌고 일이 바뀌고 범위가 바뀌고 마무리는 말할 것도 없다.
몸과 마음이 자유자재인 젤라틴 재질의 메타몽 같은 사람에게 추천하는 바이다.
 
아 그리고 늘펫 플러스는 아직 출시 안했다. 개발적인 이슈가 끝나가서 작성하는 회고록이다. 
진짜 세상 모든 기능 다 만들었다 싶어도 새로운 개발이 붙는게 참 신기하다
교만하지말자 자만하지말자 겸손하자
 
하여튼 그래서 원래는 블로그를 좀 현재 상황에서만 쓰려고 했는데,
지나쳐 온 개발이나 회고도 작성하려고 한다.
오늘 내용은 그래서 조금 전체적인 그런거를 써보려고 한다. 그 개요? 뭐 그런 느낌의
개발 프로세스부터 깃헙 프로젝트, 개발한 기능 등을 나열해보려고 한다.


늘펫 플러스의 개발 프로세스

현재는 2인 개발자 체제이며, 나와 시니어급 개발자(CTO님) 둘이서 개발하고 있다. 나는 신입인가? 주니어? 하여튼 

1. 기획 미팅 참여, 디자인 확인, 개발 기획서 작성 등 개발 전 사전 작업
2. 구분된 프로젝트의 develop에서 각자 개발하는 기능 단위의 feature를 파서 개발을 진행한다.
3. 해당 기능 개발이 완료되면, amplify로 release의 버전을 올려서 배포한다. 
4. QC/QA 시트를 작성한다. (문제, 해결, 내부 테스트 내용, 테스트 요청사항을 포함)
5. 배포된 release 주소로 팀원들에게 QC/QA를 요청, 해당 개발에 대한 오류 체크, 뭐 기획 검증 등 폭넓게 테스트 한다.
6. QC에 올라온 에러를 실시간으로 처리한다.
7. QA에 올라온 UX 검증 등을 논의하여 결과를 도출하고 개발한다.(개발이 폐기되기도 함 ㅋㅋ,,)
8. 마무리 시연 끝(다음 개발에 치여서 생략되는 경우 잦음)
 

늘펫 플러스의 github 프로젝트

front 2개, backend 2개의 프로젝트가 있다

늘펫 플러스는 동물병원용 고객관리 솔루션으로 수의사와 보호자는 늘펫플러스 메신저로 대화를 할 수 있다.
그렇기 때문에 수의사가 보는 웹 페이지와, 보호자가 보는 웹 페이지가 따로 있다.
DB는 파이어베이스를 사용하고 AWS amplify를 사용해서 배포한다.
 
프론트는 수의사용 웹, 보호자용 모바일뷰 웹으로 프로젝트가 나눠져있다. 둘 다 Nextjs를 사용했다.
조금 섭섭한 건 수의사용은 context API, 보호자용은 redux toolkit을 사용해서 상태관리를 한다. 그리고 아키텍처도 다르다. 수의사용은 아토믹 디자인이 들어가있고, 보호자용은 그냥 feature별로 component, service, dto등으로 되어있다. 아주 헷갈려서 좋다.
 
백엔드는 파이어베이스 Functions와 api_server라는 nestjs를 사용한 프로젝트가 있다.
파이어베이스 Functions는 이벤트 트리거를 만든다.
파이어스토어에 데이터가 틱틱 생겼을 때 그걸 트리거로 생겨야하는 데이터나 이벤트를 컨트롤 할 수 있다.
api_server는 사실 아직 잘 모른다. 막 클래스로 되어있고 외부 API랑 통신한 결과를 가지고 다음 로직을 실행하거나 하는것 같은데, nestjs를 좀 더 공부해야 한다고 들었다.. ㅎㅎ;
 

내가 개발한 기능

지금까지 개발하면서 새롭거나 힘들어서 블로그에 작성할만한 부분들을 찾아보았다. 이 녀석들은 하나하나 블로그의 글이 될 땔감들이다.

- 보호자 정보 페이지 개편 : 쓸만한 내용 없음. 파이어베이스 페이지네이션? 하이라이터?
- 반려동물 신규 등록 및 검색 로직 개편 : 이것도 쓸만한 내용 없을 듯. firebase where 쿼리 날리기?
- 설정 페이지 개편 : 여기서 사용한 react-virtualized가 블로그에 작성됨. 말고는 로컬/세션스토리지에 객체 stringify 해서 저장하기?
- 홈 페이지 개편 : Gif 파일 성능 최적화 및 브라우저 조건부 렌더링, state의 값에 따라 애니메이션 넣기(힘들었음)
- 퀵 메뉴 : 이것도 애니메이션 들어가고.. 일단 패스
- 일정 페이지 개편 : TUI calendar 사용. 
- 늘펫 플러스 모바일 화면 및 채팅 구현 : 모바일 기종별 뭐 화면 맞추기 이런거..
- 문진 관리 : 구글 폼 비슷하게 참고해서 만든거. state에 맞게 스크롤 기능 같은 거 넣었음
- 접종 수첩 : 개발 기획서의 중요성,, 데이터가 많고 기능이 좀 컸음
- 접종 내역, 방문 기록 : 프레이머, motion.div 사용
- 전체 QA : useEffect의 리턴에 대해서.. useEffect에서 firestore snapshot이 꼬였었음.
- 예약 신청 : 아이폰 Date type, 아이폰 스크롤, 그리고 구형 아이폰 웹 페이지는 왜 자꾸 div로 안감싸면 구겨지는거임?
- 활동 로그 : 이건 그 스크롤 로딩창? 이런거 react-query도 같이 넣으면 좋을듯

보시다시피 내 손이 안닿은 메뉴가 없다. 내 자식이라고도 볼 수 있다.

 
분명히 좀 더 많다 ㄹㅇ. 구두로 들어오는 요청도 많고, 기억을 못해서 저 정도 밖에 안나오니 너무 억울할 따름이다.
어쨌든 이제 대충 나열해 놨으니 저 리스트를 기반으로 하나하나 차근차근 내 코드들을 내가 리뷰하면서 블로그 글을 작성해 볼 생각이다.
뭐 못할 수도 있지만, 하려는 자세가 중요한거 아닌가 ! 
아님 말고다.
 
뭐 어쩌라고
오늘의 노래 추천(광고아님)
https://www.youtube.com/watch?v=iGD746k6Um8

 

반응형

댓글