La foret rouge
Published on

NutBooks 프로젝트 회고

Authors
  • avatar
    Name
    신주용
NutBooks main

사이드 프로젝트로 진행했던 "NutBooks" 프로젝트를 두 번째 종료했다. 그간 진행이 어떻게 됐냐면

  1. 2023.06 - 아이디어 떠오른 것을 정리해서 팀원 두 명을 모아 프로젝트 기획 고도화, 진행
  2. 2023.09 - 내 SSAFY 생활과 팀원들의 취업 준비가 우선 순위가 더 높았기에 프로젝트 일시 중지 결정
  3. 2024.05 - 자율PJT까지 다 끝난 후, 내 아이디어로 시작한 프로젝트를 멈춘게 아쉬워 혼자 다시 시작
  4. 2024.07 - 초기 버전을 완성해서 외부에서 접속 가능하도록 배포도 했는데
  5. 2024.10 - 취업하고 퇴근 후 시간을 할애했으나 부서 적응, 클라우드 학습 등에 우선 순위가 또 밀려서 두 번째 중지...

두 번이나 종료한 아쉬운 프로젝트이지만 이번에도 이렇게 아쉽게만 마무리하기는 싫었다. 그래서 회고를 해보자면, 이번에 다시 살려냈던 이유는

  1. SSAFY 2학기 프로젝트 세 번을 하면서 Java 백엔드는 자율 PJT에 한 번밖에 못해봤다. 그래서 Spring(Boot)에 조금 더 익숙해지고 싶었고
  2. FE(React), API(Spring Boot 3), Task Worker(Python, OpenAI, Celery task queue), aws 아키텍처 구성까지 프로젝트 전체를 혼자 해볼 수 있는 기회가 됐다.
    • 혼자 여러 개를 하면 한 분야를 깊이 파기는 힘들다는 단점이 있다. 하지만 이때까지 겪어왔던 개인적인 경험에 미루어볼 때 얕게라도 직접 고민해가면서 실행해보는게 다음에 다른 개발, 디버깅, 운영 시에 어떻게든 도움이 됐다. 특히 오류 로그나 문제 상황을 보고 원인을 파악할 때나 검색 키워드 떠올리는 데 도움이 많이 된다. (경험이 없다면 검색할 키워드 자체가 안 떠오른다.) 그래서 얕게라도 해본게 좋다고 생각한다.
    • 그리고 Celery 작업 큐는 특화 PJT때 해보고 싶었는데 실행도 잘 안됐고 프로젝트 기간 때문에 제대로 못 써봤던게 아쉬웠는데, 이번엔 적용해서 동작이 됐다.

이런 이유가 있었음에도 불구하고 두 번째 종료를 결정한 이유는

  1. 내 필요에 의해 만들었는데, 나도 잘 안 썼다...
    • 블로그 글 링크를 올리면 -> 본문을 파싱하고 -> OpenAI API를 사용해 요약해서 -> 북마크 목록에 보여준다는 MVP만 구현했기 때문에 블로그 글 링크를 올리려면 NutBooks 사이트에 접속할 필요가 있었다.
    • 하지만 내 사용 패턴상 주로 출퇴근길에 폰으로 링크드인이나 테크 블로그 글을 읽기 때문에 NutBooks 사이트에 글 링크를 추가하려면 폰에서 링크를 복사해 어딘가에 메모해 뒀다가 집에 가서 다시 그 메모를 NutBooks 사이트에 추가해줘야 하는 번거로움이 있었고, 이는 자연스럽게 덜 사용하는 원인이 되었다.
    • 그리고 지금 이 상태로는 굳이 웹서비스일 필요가 없긴 했다. 추천 게시글이나 다른 사용자(일촌 등)의 관심 게시글 같은 기능이 있다면 모르겠지만 지금 상태는 본문 추출 -> GPT로 요약이 끝이니 실질적으로는 Summarizer 모듈의 파이썬 스크립트 하나만 사용되는 상태였던 것.
  2. 7월부터 출근해서 팀 적응, Azure 학습 및 자격증 도전이 더 우선이 되었고
    • 1번 이유는 차차 업데이트를 하면서 해결하면 되는 문제이긴 했지만, 이러한 이유로 NutBooks에 시간을 쏟기가 쉽지는 않았다.
  3. aws를 경험하기 위해서 aws에 단순히 EC2만 사용하지 않고 RDB, Application LB, Route53 DNS 등도 사용해가며 배포했는데, 잘 안 쓰는 서비스를 계속 켜두니 아까운 지출이 계속 발생했다.

정리를 하자면 첫 번째로는 아무래도 사이드 프로젝트이다보니 우선 순위가 계속 밀리는게 영향이 컸는데 이 점은 어쩔 수 없을 것 같다. 두 번째로는 사용자 편의성이 중요하다는걸 느꼈다. MVP여서 v0.0.1쯤 됐다고 치더라도 서비스를 이용하는 데 번거로움이 있다면 사용자를 잡아두기 어렵다는 것을 알게 됐다.

그래도 혼자 해서 배포까지 했다는 것도 의미있었고 이렇게 정리할 정도로 여러모로 느낀 점이 많아서 마냥 아쉽지많은 않은 프로젝트였다.

  • p.s. Hoarder라는 서비스를 알게 됐다.
    • 이 서비스에 관심이 가는 이유는 종료 이유 1번과 연결되는데 아이폰 앱도 있고, Safari에서 hoarder로 바로 북마크를 보낼 수 있게 연동이 된다. 이게 사용성 측면에서 꽤나 큰 이점이라고 생각된다. 오늘 홈서버에 올리고 앱도 설치했는데 당분간 출퇴근 길에 북마크 저장하고 사용해보려고 한다.