티스토리 뷰

일상 - 스타트업 입사 3달차 회고


| 큰 이슈들


  • 리뷰페이지(리액트)
- 입사초반 리액트, 리덕스 및 리덕스 thunk, 리덕스 saga를 학습하면서 동시에 개발하면서 만든 리뷰페이지이다. 메뉴들의 리뷰들을 api서버에 요청하여 받아와 메뉴 타입별, 메뉴명별로 보여주는 페이지이다. data관리는 리덕스,saga를 적용했고, 프로젝트 구조 잡는 것은 velopert님의 to-do list를 조금 참고하였다.

  • 전 지역 새벽배송 확장(node.js api수정)
- 기존에는 새벽배송을 할 수 있는 지역이 정해져있고, 점심 저녁 배달가능한 지역은 새벽배송이 불가능한 폐쇄적인 구조였었는데, 점심 저녁 배송지역도 새벽배송이 가능하게 기존 api중앙서버의 api로직을 수정하여 확장하였다. 중간중간, 확장한 지역의 영수증 출력이 나오지 않거나 하는 문제가 있기도 하였다. 이 프로젝트를 통해, 중앙 api 서버 코드 구조를 파악하고 수정배포 뿐 아니라, 이외에 다른 이슈들을 처리하기위해 사내 다른 back-office 서비스들의 코드를 리딩하고 수정 배포 하기도 하였다.

  • 재고부족 메시지 수정
- 기존 재고부족메시지는 "재고가없습니다. 다시 주문 바랍니다." 와 같이, 유저입장에서는 매우 안좋은 ui였는데 이를 어떤 메뉴가 얼마나 부족한지 알려주는 메시지로 수정하였다. 이가 가능했던 것은 새벽배송 확장기능을 수행하면서 api 중앙서버에 대한 이해가 있었기에 가능했다. 이때 비동기코드를 동기적으로 구현해야 하는 부분, for each를 돌면서(재고부족 메시지를 보내야 하는 메뉴들) promise가 resolve되는 상황들을 이해하기 위해 promise 에대해 다시한번 개념을 잡는 계기가 되기도 하였다.

  • 새벽배송 라벨지 커틀과 메뉴 추가(mysql)
-  사내 db에대한 이해가 된 상태에서 진행 했기에 가능한 이슈였다. 4~5개가 넘는 테이블을 조인해서 새벽배송 라벨지에 배송정보만 나오고있던 라벨지에 메뉴와 커틀러리를 추가해주는 작업이었다. 테이블안에 data가 잘들어있지 않은 경우가 있고, 잘못된 데이터가 들어가있었던 경우도 있어서 꽤 시간이 걸리는 작업이었다.

  • 리액트 웹앱에 구글 애널리틱스 달기
- https://milooy.wordpress.com/2016/01/14/google-analtyics-2-google-tag-manager/를 참고해서, 유저를 트래킹 하기 위해 리액트 웹앱에 구글 애널리틱스를 다는 작업을 진행했다. e-commerce 관련 이벤트를 다는 작업에서 매우 애를 먹었다. 

  • 리액트 웹앱 ui수정 및 웹배너, 리뷰더보기 기능
- 자잘한 ui 수정을 진행했고, 리뷰페이지 프로젝트에서 로직을 따와서 리뷰더보기 기능을 추가하였다.


  • 자동배차
-  메뉴 주문에 대한 배송이 배송대행업체에 접수를 하는 방식으로 진행하고 있는데, 이는 운영팀에서 back-office 툴 두개를 왔다갔다 하면서 일일이 접수를 하고 있는 상황이다. 한 사이트에서 주문번호를 찾아서 접수를 하고, 해당 스테이션에 영수증이 출력되게하고, 배송상태를 바꾸기 위해 다른 사이트에서 다시 배차버튼을 눌러야 하는 과정으로 진행되고 있었다. 즉 한 주문건에 대한 작업이 이렇게 귀찮게 이루어지고 있었던 것이다. 두개의 back-office 사이트에서 관련 로직을 가져와서 합지는 작업은 완료되었고, 약 이틀동안 로컬에서 시범운영을해서 돌려봤는데, 테스트는 마무리 한 상태이다. 중간에 있었던 이슈는 배달업체에 배송접수까지는 되는데 소켓을 거쳐 영수증 출력을 하는 프로세스에서 잘못된 데이터가 가서 배송 스테이션에 영수증 출력이 안되는 이슈가 있었다. 그리고 수동배차하는 예외지역이 존재해 이를 filtering하는 작업을 수행해야 하는 이슈도 있었다. 이제 배포만 하면 되는 프로젝트이다. 

느낀점
  • 예전 개발자들이 많이 거쳐갔던 터라, 기능을 구현하기 위해서 여러 사람이 짜놓은 다른 스타일의 코드를 봐야하는것은 물론이고, 구현하려는 부분의 로직 일부를 찾았다 해도 워낙 플레이팅의 서비스마다 맞물려있는 부분이 많다보니 구현이 쉽지가 않았다. 지금 자동배차 프로젝트를 진행하려고 기능구현과 관련해서는 한가지 프로젝트를 하기위해 8개나 되는 서비스들의 로직을 살펴보았다. (물론 일부기능들을 참고하기 위해 살펴본것 까지 합치면 더 된다..). 이런 소모적인 시간들이 계속되다 보니 좀 힘들었다. 소모한 시간에 비해 퍼포먼스도 나오지 않으니..ㅠ 예전개발자들이 계셨으면, 기능구현에 필요한 부분을 알려주거나, 구조잡는 부분이나, 개발하면서 생기는 이슈들을 같이 얘기해보면서, 더 퍼포먼스를 냈을텐데 하는 아쉬움이 많다. 이런 길잡이나, 방향을 잡아줄 사람이 없는 사람이 없는 점이 정말 컸다. 새로운 프로젝트를 진행하는 것이였다면 오히려 이런 리스크들이 적었을 것 같다.


  • 배송현황판

- 현재 배송관련 업체에서 api 문서를 요청해서 받은 상황이고 추후에 진행할 예정이다.


| 작은 이슈들

  • 메뉴 등록, 고객정보 조회 및 수정, 제휴회사 관련 쿠폰 코드 제작, 조건별 매출 트래킹, 사내 back-office 자잘한 수정 등등.. 자잘한 업무들은 수백가지가 됬던것 같다 하하하하하하하하핳


느낀점

  • 나는 아직 주니어다 보니, 학습은 필수이다. 그러나 위와 같이 다양한 프로젝트를 진행하기 위해, 다른서비스 코드를 살펴보거나, 그러는 와중 중간중간 들어오는 다른팀들의 요청들(제휴코드만들기,제휴 트래킹하기,메뉴등록), 외주사와의 미팅, 중간중간 생기는 이슈들 이런것들이 합쳐지니, 학습할 수 있는 시간을 만들기가 매우 어렵다. (그래서 사실 퇴근하고 카페가서 부족한 개념들은 학습중이다.) 이런것들을 참고하면 역시 개발뿐 아니라, 일정을 정하고, 태스크에 포인트를 할당하는등의 작업들이 매우 중요함을 여실히 깨닫고 있다. 지금생각해보면 지라에서 스토리 포인트는 대강 할당하고, 업무 기록용으로만 쓰고만 있다. 물론 어떠한 업무를 진행했는지 기록하는것도 중요 하긴 한데, 시간할당도 매우 중요할 것이다. 아뮤튼 학습할 시간은.. 계속 생각해봐야겠다..

  • 이제 사내서비스들은 이것저것 많이 건드려봐서 어떤프로젝트에 어떤기능이 있는지, 어디와 맞물려있는지 정도는 대강 파악이 된거 같다. 지금은 기존 프로젝트를 수정, 확장하는 업무들이 대부분이 였는데, 신규 프로젝트에 대한 욕심이 생기기도 한다.
  • 외주사와의 미팅, 다른개발자와의 면접참여, 다른 개발팀과의 메일로하는 커뮤니케이션 등등, 처음하는 일들이 대부분이고 아직은 이런일들이 어색하긴 하지만, 개발자로서 첫걸음을 내딛고 있다는 점에서 이런일들이 사실은 아직까지 너무 신기하고 얼떨떨하다..ㅋㅋ.. 사수가 없어서 주니어개발자들만 있어서 좋은점들은 이런것인거 같다 ㅋㅋㅋ... 절대로 1년차 개발자로서 경험할수있는 것들을 많이 경험할수 있으니까 ㅋㅋㅋㅋ 1년차임에도 불구하고 내가 개발한것, 수정한것이 바로 end-user에게 가서 바로 결과가 나오는것도 좋긴하지만 이런 다양한 일들을 경험하는것도 분명 나한테 긍정적으로 작용할것이라 생각한다. 아직은 외주사와 미팅할때 모르는 말들이 우수수 쏟아져 나와 멍때릴때가 많지만 분명 얻어가는 것이 있을것이고 앞으로도 어떤 일들이 있을지 기대된다 ㅎㅎ
결론:  더 노력하고, 경험하고, 해내자! 


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
TAG
more
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함