회고

[2023년 2분기] 건강은 챙기면서 하기 feat.사이드 프로젝트

paran21 2023. 7. 20. 13:58

최초작성일: 2023년 6월 19일

 

아직 2분기는 끝나지 않았지만 사이드 프로젝트도 배포했고, 당분간은 정말로 쉬는게 필요하다고 생각해서 회고 글을 쓰기 시작한다.
2분기는 사이드 프로젝트가 가장 큰 이슈였다.

 

1. 사이드 프로젝트

3월부터 본격적으로 사이드 프로젝트를 진행하고 있다.
기존 팀에 합류하게 되었는데, 가장 큰 목표는 Flutter로 앱을 개편해서 배포하는 일이었다.
어차피 새로 만드는거 ui/ux도 개선하고, 에러도 수정하고, 몇 가지 기능도 추가하게 되었다.(이렇게 쓰고 보니 생각보다 더 많은 걸 했구나...)
> - 기존의 RN앱을 Flutter로 바꾸기
- 기능 추가 : 회원 탈퇴, 앱 다국어 적용
- ui/ux 개편
- 에러 수정

배포 기한은 처음 작업을 시작할 때 2~3달 정도 잡았는데, 실질적으로 6월 초에 배포해서 거의 3달이 좀 넘게 작업을 했다.
막판 몇 주는 정말 잠을 줄여가면서 작업했다.
기한이 정해진 건 아니었지만 앱 출시 1주년 + 마케팅 일정 등등의 이유로 무리해서라도 기한에 맞추고 싶었다.
사실 광고도 붙이고 싶었는데, 이것까지는 정말 무리였다.

2. 시작

올 초부터 사이드 프로젝트를 알아보기 시작했는데, Flutter를 한지 이제 반년 정도 되고 회사 코드에도 조금 익숙해진 시기였다.
Flutter로 새로 이것저것 해보고싶다는 욕심이 있었다.
우리 프로젝트는 사이드 프로젝트 모집 공고가 올라오는 사이트에서 찾게 되었다.
마침 도메인도 관심 있는 쪽이었고, 이미 유저가 꽤 있는 서비스였기 때문에 여러 모로 도움이 될 거라고 생각했다.
기존 개발 팀원들이 여러가지 이유로 참여가 어려운 상황이라 실질적으로 혼자 새로운 앱을 개발해야하는 상황이었다.

GraphQL, Stream 처럼 완전히 처음 사용해보는 스펙도 있었고, 앱 아키텍처부터 다시 짜야했기 때문에 초반에 시간이 꽤 걸렸다.
지금 생각해보면 개선해야할 여지가 정말 많은데, 우선 일정에 맞추는 것도 필요했기 때문에 어느 정도 스스로 타협하면서 진행했고, 필요한 선택이었다고 생각한다.
초반에 너무 개발이 늦어져서 스트레스를 꽤 받았다.

처음에는 주말 하루 정도에 시간을 생각하고 시작했는데 그렇게 해서는 도저히 일정에 맞출 수 없었다.
퇴근 후, 주말에 많은 시간을 할애해야 했고 특히 잘 안풀리는 에러에서 시간을 꽤 많이 썼다.
거기다가 프로젝트 초반에는 듣고 있던 swift 강의 만료 기간과 겹치기도 했다.

그래도 내가 이것저것 해보는 건 꽤 재밌었다.
프로젝트를 할 때 커뮤니케이션이 정말 중요하다고 생각하지만, 처음으로 혼자 진행하다보니 그만큼 이것저것 코드를 수정하고 시도해보기에 편한 면도 있었다.
운영팀도 적극적으로 도와주셔서 필요한 피드백은 바로바로 받을 수 있었다.

3. 무리

우리 앱의 주요 기능인 채팅은 Stream api를 사용하고 있었는데, 처음 사용해보기도 했고, 개발 완료까지 얼마나 걸릴지 전혀 감이 오지 않아서 가장 뒤로 미뤄놓은 기능이었다.
돌이켜 생각해보면 이런 기능이야 말로 먼저 시작했어야 했나 싶기도 하고, 한편으로는 아직까지도 해결하지 못한 에러들이 있어서 초반에 진행했으면 너무 길어질 것 같기도 하다.

5월말에 채팅을 제외한 기능들은 거의 끝내놓고 본격적으로 채팅기능 구현에 들어갔다.
그런데 채팅 외에도 수정, 삭제 등 놓친 기능이 있었고, 채팅과 관련되어 있어서 뒤로 미뤄놓은 기능들이 꽤 있어서 생각보다 구현해야하는 기능이 많았다.
어떻게든 일정을 맞추고 싶어서 무리하기 시작했는데, 일단 새벽까지 작업하는 일이 잦아지다보니 잠이 줄었고, 주말에도 충분히 쉬지 못하고 작업을 하는 시간이 길어졌다.
또, 가족과 같이 보내는 시간이 엄청나게 줄어들면서 서로 스트레스를 받았고, 개인적으로 안좋은 일이 생기기도 했다.

이런 상황에서 우선 테스트 배포를 하고 QA를 했는데 정말.... QA 리스트가 어마어마 하게 나왔다.
내가 놓친 에러는 분명 수정을 해야했지만, 기획에서 모호했던 부분이나 없었던 내용들이 추가 기능으로 들어오는 부분도 꽤 많았고, 무엇보다 채팅과 관련해서 에러가 너무 많이 나왔다.
회사에서도 배포 후 QA 리스트가 많이 나오면 압박감이 있긴 하지만 혼자 일하는게 아니다 보니 좀 덜했는데, 혼자 QA 리스트를 다 치려니 너무 압박이 컸다.
거기다 목표한 배포 일정을 맞추려면 너무 빠듯한 상황이었다.

중간에 우선순위를 정해야 할 것 같다고 요청해서, 긴급한 건 위주로 진행하기로 하면서 몇 가지 빠지기는 했지만 자잘한 것들은 욕심이 나서 더 하기도 했고, 채팅 쪽은 문제의 원인조차 파악이 잘 안되는 에러가 많았다.
특히 내가 디버깅 할 때는 괜찮은데 QA를 진행하는 운영팀에서 시차를 두고 테스트를 진행할 때 계속 확인되는 에러들이 있었다.
진짜 크리티컬한 에러 위주로 막고, 몇몇 에러들은 에러메시지를 보여줘서 유저에게 앱을 재시작하게 유도하는 쪽으로 하기로 했는데, 에러처리도 급하게 넣다보니 빠진 부분이 너무 많았다.
정말 배포 막판 일주일은 너무너무 힘들었다.
건강도 계속 안좋아지고 있다는걸 알고는 있었는데 막판에는 컨디션도 너무 안좋았다.

4. 배포 & 출시

그래도 어찌어찌 최종 배포를 하게되었다.
안드로이드는 정말 바로 심사가 통과되서 배포되었고, ios는 이틀 정도 걸렸다.
ios는 회원 탈퇴 문제도 있었고, 리젝 당할까봐 엄청 걱정했는데 다행히 바로 통과가 되었다.
진짜 너무 힘들었는데 출시까지 되고 나니 너무 기분이 좋았다.
한편으로는 유저 입장에서 업데이트 한 후에 더 에러가 발생해서 사용성이 안좋아질까봐 걱정도 많다.

5. 이후 계획

배포 직전에 몸이 너무 안좋아지기도 했고, 스트레스도 너무 많이 받아서 일단 좀 쉴 생각이다. 제대로 처리하지 못한 에러들도 있고, 개발/운영 분리도 제대로 해야하고, 코드들도 정리하고 싶지만 몇 달 간 너무 무리했다.
신기한게, 당분간 코드를 보기도 싫을거라고 생각했는데 생각보다 며칠 안보니 좀 괜찮아지기는 했다.

그래도 한 달 정도는 의도적으로 쉴 생각이다.
체력도 너무 떨어져있고, 막판에는 운동도 거의 못했다.
이렇게 살다가는 진짜 큰일날 것 같아서, 퇴근 후에 잡혀있는 일정만 하고 나머지 시간에는 쉬고 놀아야겠다.

사이드 프로젝트에서 추후 개발로 미뤄놓은 일정들이 조금 있는데 무리하지는 않을 생각이다.
Task 단위로 끊어서 조금씩 진행하는 쪽으로 생각하고 있다.




열심히 살아야하고, 시간을 허투로 보내면 안된다는 강박이 있다.
한편으로는 개발자로 2년차가 되었는데 아직 제대로 아는게 너무 없고, 너무 뒤쳐져 있는 것 같다는 불안감도 있다.
그럴 때마다 나는 이 일을 오랫동안 하고 싶고, 내 속도에 집중해야 하고, 무엇보다 건강해야 계속 일을 할 수 있다라고 스스로 다짐한다.

모두들 건강하게 하고 싶은걸 할 수 있길!