[WIL] 항해99 실전프로젝트 회고

rara_kim·2023년 2월 12일
0

항해99

목록 보기
18/18

6주간에 걸친 프로젝트가 끝이 났다.
프로젝트 도중 디자이너님 이탈, 부팀장 이탈 등으로 프로젝트의 결과물에 아쉬움이 많이 남지만, 그래도 보다 더 성능을 향상시키려 노력했던 기록들을 남겨보려고 한다.

아쉬웠던 점

기획

기획단계부터 선택과 집중이 정말 중요하다는 것을 이번 실전 프로젝트로 제대로 알게되었다.

프로젝트를 기획했을 당시 욕심이 앞서 이런저런 기능을 너무 몰아넣은 것 같다.
프로젝트를 진행하며 추가하고 싶었지만 프론트엔드에서 소화하지 못해 결국 포기하게 된 기능들이 많은데, 이런 기능들을 기획 초반에 잘 추려서 기획했더라면 훨씬 알찬 서비스가 되었을 것 같다.
(검색 기능, 기간별 조회, 관심사 추천 기능 등 ...)

동영상 업로드 최적화

서비스에서 메인이 되는 기능이 동영상을 포함한 게시글인데 동영상 용량이 커질수록 업로드에 시간이 걸려 고민이 많았다.
압축을 해서 올리더라도 압축하는 데 시간이 소요되고 해당 동영상을 메인페이지에 바로 재생을 할 수 있어야 하기에 압축해서 올리는 방법은 적합하지 않다고 판단했다.
팀원분께서는 스트리밍 서버를 구축하는 것이 어떻냐고 이야기를 하셨었는데, 서버를 별도로 구축해야해서 한정된 기간내에 구현하기에는 무리라고 생각했다.
게다가 동영상 업로드 최적화에 관련한 Reference를 거의 찾아볼 수 없어서 더 여러운 부분이었다.

그러다가 동영상 업로드 메소드를 비동기로 처리하면 게시글 등록 속도가 조금이라도 향상되지 않을까? 싶었다.
동영상을 S3에 저장한 뒤 저장한 주소를 DB에 저장해야 했기에 CompletableFuture를 사용해서 반환값을 가져오려 했는데, 왜인지 에러는 나지 않지만 DB에 저장되는 것이 저장 주소값이 아닌 Not Completed라는 문구였다.

그렇게 이런저런 시도를 해보았으나 결국 프로젝트 기간내에 동영상 업로드 최적화를 구현해내지 못했다.
지금도 관련자료가 없을지 찾아보고 있는데, 꼭 동영상 업로드 속도를 향상시키고 싶다!!(계속 도전예정)

프로젝트를 진행하며 개선한 점

프로젝트가 끝나고 정리를 하게 되어 부끄럽지만 하나씩 정리해 나갈 예정이다!
1. 이미지 리사이징을 통한 응답속도 향상 여기서 확인하기!
2. 이메일 발송 비동기 처리와 인증번호 생성 로직 간소화를 통한 응답속도 개선(827%) 여기서 확인하기!
3. 서브쿼리, 조인 등 복잡한 쿼리 작성 필요에 따른 QueryDSL 적용
4. Redis 데이터 캐싱을 통한 조회 속도 향상
5. WebHook을 활용한 프로젝트 빌드 결과 확인, 실시간 에러 로그 확인

추가하고 싶은 기능

같은 백엔드 팀원분과 추가하고 싶은 기능을 일찌감치 리스트업 해보았다.
항해99를 먼저 거쳐가신 분들의 깃허브를 보면 추가하고 싶은 기능 리스트를 정리해두고 정작 실제로 구현한 건 못봤는데, 우리 조는 느리더라고 꼭 하나씩 다 구현해 나가려고 한다!!
(사실 프로젝트에 추가하지 못해 아쉬운 기능들도 있어서 더 열의 넘치게 기능 추가를 외치고 있다ㅎㅎ)

  • 검색 기능
  • 태그 기능
  • Refresh Token
  • 대댓글
  • 부적절한 게시글 신고 기능
  • 공연정보 기간별 조회
  • 동영상 업로드 속도 개선
  • 마이페이지 기능(작성한 댓글 조회, 좋아요한 게시글 조회, 구독 리스트 조회 등)

앞으로 나는 어떤 개발자가 될까?

실전 프로젝트를 마친 지금 본격적으로 개발자가 되기 위한 지원 주차에 들어선다.
지금까지는 주어진 미션(1주일안에 프로젝트 완성하기 등)을 해결하기에 급급했는데, 이제부터는 누군가로부터 주어지는 것이 아니라 스스로가 발전해나가기 위해 공부하고 계속 발전을 거듭해야 한다.

과연 취업은 할 수 있을까, 앞으로 꾸준히 발전해 나갈 수 있을까 걱정되고 겁나기도 하지만, 한편으로는 앞으로의 삶이 기대된다.
전직장에서는 늘 스스로 한계를 정해놓고 "이정도면 됐어"하고 흘러가는 대로 살아왔는데, 지금은 하루하루 나아가는 내 자신이 대견하고 이런 내모습이 기쁘기만 하다!

실전 프로젝트를 진행하며 내손으로 무언가를 만들어내는 재미를 느낄 수 있었다.
처음 혼자 개발 공부를 시작했을 땐 어렵게만 느껴져서 재미는 있어도 새로운 것에 도전하는 것에 벽을 느꼈었다.
그런데 실전 프로젝트를 진행하며 팀원들과 기술 이야기, 코드 이야기를 나누며 매일이 두근두근했다.
같은 기능을 구현하더라도 다양하게 코드를 작성할 수 있는 것도 흥미롭고, 여러 사람의 코드를 보고 이야기를 들을 수 있는 것도 흥미로웠다.

개발자로서는 이제 막 첫발을 뗐다.
앞으로 배울 것도 정말정말 많고 모자란 실력에 절망하고 지칠때도 있겠지만, 지금 느끼는 이런 두근두근함을 계속 기억하고 느낄 수 있는 개발자가 되고 싶다.
그러면 아무리 힘들어도 결국 다시금 떨쳐내고 힘낼 수 있을 테니까..!

profile
느리더라도 꾸준하게

0개의 댓글