본문 바로가기

프로젝트들

[DND 4기] 서버 개발 회고 1 - 서비스 소개 및 개요

최근에 약 두 달여간 참여했던 DND 4기 활동을 마무리하며 지난 웹 백엔드 개발 과정을 회고해보려 한다.
백엔드 개발을 진행하며 했던 고민, 선택과 해결 과정, 그리고 좋았던 것과 아쉬웠던 것 등 위주로 적어볼 계획이다. DND 활동 자체에 대한 것이나 서비스 기획 단계, 디자인이나 브랜딩에 대한 것들은 여기서는 다루지 않는다. (다만 이번 글에서만 짧게 소개한다.)

하나의 글에 다 풀어내 볼까 생각했으나, 이전에 감명 깊게 읽은 백엔드가 이정도는 해줘야 함 시리즈 처럼 프로젝트 진행 순에 맞추어 글 하나에 주제를 하나씩 두어 써나가도 좋을 거 같단 생각이 들었다. 이래야 나도 안 지치고 글을 쓸 거 같고... 시간 나는 대로 주말에 틈틈이 써볼 예정이다.

이번 글에서는 만들고자 했던 서비스와 앞으로 쓸 글을 대해 간략히 소개해보려 한다.

DND?

DND는 Developer & Designer 의 약자로, 개발자와 디자이너가 모여 사이드 프로젝트를 진행하는 단체다. 비슷한 단체로는 NEXTERS, YAPP, SOPT 등이 있다. 일명 IT 연합 동아리라 불리는 이런 단체들에 대해 궁금하면 이 글을 참고하자.

DND는 기수제로 운영되고 있으며, 나는 4기에 지원하였고 최종적으로는 5조에 참여하게 되었다.
각 조는 현업 혹은 학생 신분의 디자이너와 개발자, 그리고 담당 멘토로 구성되며 총 8주 동안 활동하게 된다.
기획부터 개발까지 모두 조 단위로 활동하며 중간과 최종 발표에 활동한 내용과 결과물을 발표하게 된다.
프로젝트 관련 세미나나 잡담방도 종종 열리며, IT 서비스 업계의 이런저런 사람들을 만나볼 수 있다.
관심 있는 사람은 DND 공식 홈페이지를 참고하자.

 

만들고자 했던 서비스

우리 팀이 만들고자 목표했던 서비스를 한 마디로 표현하면 "술 리뷰/분석/추천 플랫폼"이다.
핵심 기능은 다음과 같다.

  • 술을 검색하고 술에 대한 상세 정보를 얻을 수 있다. (검색)
  • 해당 술에 평점을 포함한 리뷰를 남길 수 있다. 다른 사람이 남긴 리뷰에 좋아요를 누를 수도 있다. (리뷰)
  • 자신 혹은 다른 사람이 작성한 리뷰들을 한 눈에 볼 수 있다. 이 리뷰들을 분석한 다양한 결과를 제공하기도 한다. (분석)
  • 어떤 술이 요즘 인기가 많은지 메인페이지에서 한눈에 알 수 있다. (랭킹)
  • 자신의 리뷰나 좋아요한 데이터에 근거해 술을 추천받을 수 있다. (추천)

상품 리뷰, 추천 등을 해주는 여타 다른 서비스들과 별 다르지 않다. "왓챠" 나 "화해" 같은 서비스의 핵심기능을 거의 그대로 따왔다. 다만 상품 카테고리가 "술" 일 뿐이다. 술 관련 IT 서비스 계의 왓챠, 화해, 무신사, 카드 고릴라 같은 걸 만들고 싶었다.
사실 생각해보면 이런게 왜 대중적으로 잘 없지? 싶었다. 있으면 나처럼 술 좋아하는 사람은 바로 사용해보려고 할 텐데...

원래 기획했던 서비스의 모습이다. 위 사진은 디자인팀 분들이 만들어주셨다.

설명을 좀 러프하게 했는데, 대략 이런 서비스를 만들려고 했구나 감만 잡았으면 한다.
그리고 그렇게 어렵고 복잡한 서비스도 아니고, 기존 서비스들과 많이 유사하기 때문에 위 사진으로도 충분히 감을 잡았으리라고 생각한다.

8주라는 기간 동안 (슬프게도 당연히) 이 기능을 다 구현하지는 못했다. 실제로 구현한 부분은 유저, 술, 리뷰, 검색 도메인 정도다. 구현한 부분 안에서도 최적화할 부분이 여전히 많이 남아있기도 하다.
기한을 지켜 완수하지 못했다는 프로페셔널 역량 부족에 창피함을 느끼지만, 그럼에도 그 과정에서 겪은 고민과 과정은 충분히 공유할만하다고 생각한다. 다른 분들이 보기에 내용에 뭔가 잘못된 것이 있을 수도 있고 공유할만한 내용이 아니라 하더라도, 개인적인 성장 과정의 기록이라 생각하고 써본다. 

 

풀어내고자 하는 내용들

앞으로의 글에서 풀어보고자 하는 내용들은 대략 다음과 같다.

  • DDD 기반 아키텍처 설계
  • 기술 스택 선정 및 세팅하기
  • 컨벤션 및 협업 규칙 정하기
  • 레이어 간 그리고 도메인 간 통신에 대한 고민
  • DB와 엮일 때 생기는 이슈와 생각
  • 아키텍처 리뷰와 개발 코드 일부 예시
  • 테스트 코드에 대한 고민
  • 뒤늦게 느꼈던 아쉬운 점과 나아갈 방향

아직 글을 다 생각하고 쓴 게 아니므로, 여기서 어떻게 바뀔지 모른다.
생각이란 게 글을 쓰면서 점점 더 구체화되다 보니 일단은 떠오르는 대로 대략적인 틀만 잡아보았다.
한 주에 하나씩은 꾸준하게 써볼 계획이다.

 

참여해주신 분들

이 프로젝트는 나만 진행한 게 아니기 때문에, 프로젝트 전반에 참여해주셨던 분들에 대해 쓰는 게 최소한의 예의라는 생각이 든다.
다음과 같은 분들이 참여해주셨다.

  • 디자인: 이예나 님, 최소은 님
  • 프론트 엔드: 김동영 님, 이다예 님
  • 백엔드: 나, 홍석준 님
  • 멘토: 성기동 님

참고로 프로젝트 관련 백엔드 소스 코드는 여기서 볼 수 있다.
다음 주부터 퇴근 후 혹은 주말마다 하나씩 글을 써보겠다.

[2021.03.28 에 쓰는 글]

며칠 지나고 생각해보니 ... 글 올려도 별로 영양가 없을거 같아서 이 시리즈는 안 쓸 예정이다.  
죄다 고민들에 대한 내용일거 같은데 ...차라리 공부를 좀 더해서 어느정도 답을 얻은 뒤에 다시 관련 글을 써보겠다!
지금은 간단한 게시판 백엔드라도 깔끔하게 만들어보자는 취지로 시작된 백엔드 스터디를 하고있다.
이 스터디를 통해 좀 더 실력을 쌓는게 글을 쓰는거 보다 먼저일거 같다!! ^^;;;;