[디프만] 14기 서버 활동 회고

yb__char·2024년 2월 24일
5

디프만 14기

목록 보기
1/5
post-thumbnail

지난 번엔 14기 합격 후기를 작성했는데
생각보다 16주, 4개월이 짧은 시간이라는 걸 새삼 느끼네요:(
많이 아쉬워요🥲

14기 일정은 이와 같이 16주로 구성되어 있고 생각보다 바쁜 일정을 소화해야 했는데 12월까지는 직장을 다녔어야 해서 초반 일정에 주중은 회사, 주말엔 디프만 이렇게 시간을 많이 보냈어요

그리고 세션 일정뿐만 아니라 팀 내부에서 진행되는 회의나 스프린트 등 주중 저녁 시간에 시간을 많이 쏟았어야 했습니다

귀엽다 우리팀

대체로 이런 분위기에 게더타운 내에서 활동하고 모각작코, 오프라인 세션 준비 등 많은 회의와 개발 기간을 거쳐갔답니다 (오른쪽 사진 가운데 저 맞아요)



아이디에이션 및 기획

처음엔 아이디에이션이 이뤄졌는데요, 아이디어는 팀원들이 자유롭게 제시할 수 있는 분위기였고 어떠한 아이디어도 비판하지 않는 그라운드 룰이 존재했답니다:)

30개 정도의 아이디어가 나왔는데, 이 아이디어를 선정하기 위한 선호도를 작성하고 선별하기로 했어요

정말 많네요...
가장 반응이 좋은 선호도는 아무래도 실 사용자를 모으고 유치할 수 있는 아이디어를 모토로 잡고 아이디어를 선정하기로 했어요. 그래서 탄생하게 된 10분만✌️

길다면 길고 짧다면 짧은 10분을 활용하여 하루에 10분을 더 가치있게 쓰고 싶은 사람들을 위해 생산성이 돋보이는 해당 아이디어를 선정하였습니당

이후 회의 시간과 Agile 툴 등 여러 가지 초반 기획 설정을 위해 많은 것을 준비했었어요

여기서 10분만 아이디어에 대한 가설 검증도 이뤄졌는데요, 아무래도 10분이라는 요구 사항이 누군가에게는 부담이 될 수도 있고, 사진을 찍어 인증하는 것이 과연 올바른 인증 방법인가?를 시작으로 여러 가지 케이스를 논하게 되었어요

논하게 된 과정 중 3주차 유저 리서치 세션이 있었는데 디프만 14기와 외부에서도 Walla로 설문을 진행하고 우리 10분만 팀이 앞으로 어떠한 방향성을 가질 지 팀 회의에서 피그잼으로 MoSCoW 방식을 사용한 "있으면 좋을 거 같은 기능"과 "우선순위"를 정했습니다.

가장 중요시되는 기능인 미션 인증, 타이머 기능부터 사용자 리텐션을 위한 알림, 애니메이션, 피드, 그룹 미션 등 여러 가지 소셜링과 재미를 느낄 수 있는 기능과 수단을 고려하며 팀원들과 여러 가지 방향성을 세웠답니다


게더링과 네트워킹 데이

게더링은 디프만 게더타운에서 네트워킹 데이에 만날 짝궁을 찾아 네트워킹하는 재밌는 세션이였어요. 디프만이 프로젝트만 하는 IT 동아리가 아니라 다른 사람과 만나 소통하고 친목을 도모하는 활동있어요

요렇게 14기 모든 사람이 참여하여 짝궁을 찾아 다른 팀원 사람들과 게더에서 할 수 있는 게임도 하고 얘기할 수 있는 네트워킹하는 시간을 가졌답니다👍

이렇게 게더링 활동으로 만난 사람들과 한발짝 더 친해지기 위해 오프라인으로 진행되는 네트워킹 데이는 홍대 더플레이스에서 진행되었어요
저는 훈섭님과 짝궁을 이뤄 보드게임 방에서 14기 팀원들과 게임을 하였는데 만난 사람들로부터 스티커를 모아 경품 추첨을 하는 이벤트가 있었어요
이벤트에서 저의 짝궁 훈섭님과 1트만에 1등 경품을 받았습니다:)

경품은 무려 "한우연인팩"....! 순간 당근할까요?ㅋㅋㅋㅋ 했었다가 UT 참여 전 둘이서 점심으로 오붓하게 먹었습니당
그리고 네트워킹 세션에서 둘만의 "진대"도 하면서 경험들을 공유하고 보다 더 친해질 수 있는 계기가 되었어요

+TMI) 네트워킹 데이는 저의 생일이였습니다:) 14기 팀/운영진, 옆자리에 앉으신 한사랑산악회(?)분들 축하해주셔서 감사해요🙏


UT (사용성 테스트)

그렇게 재밌었던 네트워킹 데이 이후 저의 10분만 팀은 UT와 개발을 시작하기 위해 엄청 분주해졌습니다.
UT 대상자를 선정하고, MAZE를 통한 사용성 테스트를 위해 팀 전체가 논의해야할 부분이 많았고, 10분만의 특히 디자인팀이 많은 노력을 해주셨어요. 동시에 백엔드는 이제 도메인 개발과 클라우드 CI/CD도 집중적으로 진행하였기에 손가락 쉴 틈이 없었어요

UT 대상자는 디프만에서 모집하여 사용자 테스트를 진행하였어요. Maze 라는 툴을 사용하였고 Task를 분리하여 테스트를 진행하였슴다 (테스트 참여해주신 홍석, 진호, 준영, 혜원님 감사합니다🙏)
테스트를 통해 얻은 인사이트는 생각보다 유의미하였고, 이를 적용하고 도입하는 과정을 위해 팀 회의는 굉장히 빠르게 흘렀갔습니다.

이렇게 많은 인사이트를 정리하고, 디자인 해준 우리 10분만 디자인팀 샤라웃합니당👍
해당 내용을 토대로 기획에 방향성이 빠르게 잡혀 사용자를 이해하고, 진짜 니즈와 행동을 파악해서 사용자가 원하는 프로덕트를 개발할 수 있었답니다.

UT를 진행하기 위한 레퍼런스도 안내받았는데 회사에서 짬내어 읽어보니 되게 좋은 아티클이더라고요


서버 개발 회고

하.. 대망의 서버 개발 회고... 물 한잔 마시고 오세요🚰
백엔드 깃허브 repo: https://github.com/depromeet/10mm-server

🛠️ 기술스택 선정

우선 저희는 Java 17, Spring boot 3.x, Data JPA, Security, NCP(Naver Cloud Platform) 등 이와 같은 기술 스택을 사용하기로 했습니다.
사실 코틀린에 대한 욕심이 없지 않아 조금 있었어요. 프로젝트도 프로젝트지만 누군가에게는 중요한 포트폴리오가 될테고, 취업과 이직의 백엔드 시장에서 Java -> Kotlin으로 드리프트 되고 있는 경향이 많이 보이더라고요. 그.러.나, 만약 코틀린으로 진행했으면 저희 프로덕트가 이렇게 많은 MVP 기능을 만들었을 수 있었을까 생각해요


🗺️ 프로젝트 아키텍처

아키텍처는 헥사고날, DDD, 멀티모듈 등 다양한 의견이 많았어요. 하고 싶은 욕심은 다들 굴뚝같았을 거에요.
그래서 우리 서버팀이 앞으로 개발을 빠르게 진행하기 위해서 아키텍처를 하나하나 공부하는 것보다는 레이어드로 빠르게 개발하고 오히려 도입하는 것이 오버엔지니어링일 수도 있기에 추후 함께 리팩토링하기로 결정했어요. (근데 진짜 이래서 데드라인 맞췄어요👍)

현재 기능들을 도메인 별도 패키지로 관리하는 레이어드 아키텍처를 사용하고 있고 푸시 알림과 리액션, 팔로우 기능들이 추가되면서 점점 무거워지고 있다는 느낌이 들고 있긴합니다만 앞으로 새로운 아키텍처를 도입해야 할 문제라 생각해요
또한 앞으로도 서비스 지속을 위해 admin 서버, 웹 페이지 개발 또는 피처 개발을 위해서는 논의를 해보고 바꿔야할 거 같아요 (많관부... admin 프론트는 제가 할 수도...)


10MM의 클라우드 아키텍처

이번에는 코드보다는 설계 중점인 클라우드에 대해 얘기하려 해요.
클라우드는 디프만에서 후원해주는 NCP 크레딧을 사용하여 Naver Cloud를 사용하기로 하였어요.
만날만날 AWS를 사용하였기에 잘할 수 있을까 라는 걱정이 많았는데, 생각보다 배경 지식이 있어서 그런 지 러닝 커브가 짧았고 빠르게 구성을 할 수 있었어요

그런데, 여기서 AWS처럼 정말 똑같이 사용할 수 있나요?라고 질문한다면 "NO"라고 대답하고 싶다.

AWS에서 사용하던 방식과 비교를 하여 아쉬운 점을 짧게 작성한다면

  • Source Commit 이라는 환경에서 프로젝트를 관리하여 Source Deploy를 사용해야 할 수 밖에 없어 트리거 및 이벤트 핸들링이 다소 난감했다.
  • object storage에서 직접 받아와서 jar로 배포 → 일단 서버 꺼주고 실행해야 해서 쉘 스크립트를 직접 구성해야한다.
  • blue-green 무중단 배포하려면 쿠버네티스 서비스를 사용해야 하는데, 이 마저도 VPC 환경에서만 구동됨 (Classic 2021.04부터 종료)

그렇지만 github Actions + docker → container Registry를 사용한 방식을 고안하였고, 저희가 작성한 워크플로에 대한 스크립트는 이렇습니다.
아래는 저희 아키텍처를 도식화한 1차 MVP 아키텍처입니다.


10MM 백엔드가 일하는 방식

저희는 지속적인 서버 파트 회의와 코어 타임을 약속하고 개발을 하였어요:)
항상 퇴근하고 집에 오면 암묵적으로 밤 9시부터 게더타운에 접속하여 스프린트 회의를 하였고, 모각코를 하여 화면 공유 및 인텔리제이에서 제공되는 Code With Me 기능을 활용하여 페어 프로그래밍을 하였습니당

미친 코드 리뷰와 PR..👍

1월 달에 회의가 많지 않았던 건 본격적 피처 개발을 1월에 시작하였기에 본인 작업에 열중하였고, 쿼리나 코드 로직에 대해서는 직접적으로 약속을 잡아 해결하였기에 서버 안건 사항이 없어 노션에 굳이 작성하지 않았어요. 하지만 필요한 레퍼런스, API 명세, 아티클 공유 등 활동할 수 있는 페이지에 기록을 하였답니다.

개인적으로 2023년 회고 글에도 작성하였지만 "디프만 백엔드는 거진 Spring으로 개발했는데, Node.js 개발하던 내가 잘 따라올 수 있을까"가 제일 걱정이였어요. 근데 사실 괜한 걱정이였던 게 언어와 프레임워크는 중요치 않았었고 팀과 협업하는 것이 제일 중요했었습니다.
사실 좀 매웠던 PR 리뷰(한 PR에 120개의 리뷰...)와 코드 개선 방향에 대해서 많은 도움을 받았고 내가 도전하고 싶었던 개발을 하게 배경 지식을 제공해준 재현, 도모에게 무한한 샤라웃을 보내고 싶어요.
앞으로도 즐거운 10MM 서버 개발을 이어 갔으면 좋겠고, 많이 성장하자 🥊


런칭 데이와 목표

대망의 런칭 데이가 다가왔어요🎉
우리 10MM 서비스를 직접 사용하고 체험해볼 수 있을 뿐만 아니라 각 팀의 굿즈, 뽑기 이벤트 등 다양한 홍보까지 이루어졌어요. (여기서 저는 삐삐의 뽑기 이벤트, 1등 당첨되어 담요를 받았답니다😋)

또한 각 팀의 서비스 무드가 느껴지는 부스들이 서비스의 특색을 잘 녹여있었어요. 특히 서비스 소개 노션을 통해 모두의 서비스가 만들어지기까지의 모든 기록을 확인할 수 있었고 각 팀의 방향성과 프로덕트에서 해결하고자 하는 목표를 보며 많은 동기부여를 얻었습니다.

저희 서비스도 크로스플랫폼이란 장점을 살려 14기 분들에게 서비스를 소개하고 안내하는 것이 좋은 경험이 되었다고 생각해요. 또한 런칭데이에서 받은 피드백들로 앞으로 어떠한 방향성을 가지고 사용자 리텐션을 위한 피처 및 추적을 위한 GA, 믹스패널, 제니퍼 등 개발을 추진하기 시작하였답니다.

이후 완료된 MVP들을 직접 사용자와 닿기 위해 마케팅 수단으로 인스타그램, 디스콰이엇 등 다양하게 홍보를 진행하였는데요.

디스콰이엇 트렌딩 프로덕트 2등과 DAU 446을 달성하며 많다면 많은 사용자를 유치하였고, 수치적으로 좋은 결과였으며 저에게는 사용자의 피드백이 조금 더 간절했었습니다. 디프만을 처음 지원할 당시에 사용자의 즉각적인 피드백을 받아 해결하는 것이 제 목표였고, 실제도 제가 직접 개발한 피드와 통계, 종료 미션 등 출시 후 사용자 피드백을 반영하여 해결하였답니다.


최종 발표 및 마무리

런칭 데이 이후 저희는 개발되지 않았던 푸시 알림, 피드, 미션 통계, 응원하기, 재촉하기, 안드로이드, 앱 네이티브 이슈 등등... 설 연휴를 반납하며 피처들과 이슈에 대해 개발을 진행하였고, 디자인팀은 날밤 새가며 Behance 작업을 하였습니다 🥺 (샤라웃 디쟌팀...✨)
그래서 저희 디프만 14기 분들에게 10MM이 어떠한 이슈를 겪었고, 얼마나 많은 변화와 성장을 이뤄냈는지 보여주고 싶었어요


위와 같이 저희만의 CTO 우병님이 발표를 맡았기에 주도적으로 장표 구성과 시연 시나리오, 스크립트를 준비하였고 개발팀은 hotfix 사항을 주로 반영하며 장표에 필요한 인사이트를 조사하기로 했어요.

그렇게 준비하여 대망에..... 발표


ㅋㅋㅋㅋㅋㅋㅋㅋㅋ 당신 너무 빛나는데...?

열심히 장표를 넘겨준 사회생활 만렙급 지우에게도 샤라웃해요 👍
발표는 성공적으로 마무리되었고, 저희가 전달하고자 하는 의도와 기능, 앞으로의 계획 등등 14기 분들에게 많은 인상을 남겼드렸(?)다고 저는 생각합니다~~

저희 팀이 1차 MVP부터 열심히 달려왔고 점점 저희가 서비스에 애착이 가며 꾸준히 디벨롭을 해왔어요. 그래서 사람들이 좋아하는 도메인을 가고 싶어하는 이유가 어떤 의미에서 그런지 알 수 있었던 거 같았습니다

이 패널은 저희 집에 고히 모셔두고 있습니다.Yummy

그래서 저희는 최우수..! 무려 최우수상을 수상하였습니다 🎉👏👏🎉

어? 왼쪽 짤에 왼쪽 수상은 어떤 거인가요?
대망의 수상 타임 전, 저는 14기 활동 기간에 인프런 스터디와 글쓰기 챌린지 스터디를 진행했었어요
저는 기출로 대비하는 개발자 전공면접 [CS 완전정복] 라는 스터디에 참여하여 매주 화요일 저녁에 스터디를 진행하였고 스터디 참여 전 후원강의를 짬 내어서 수강하였습니다. (덕분에 이직 성공✨)

사실 갓생상까지 바라지는 않았어요. 저희 스터디가 우수 스터디로 선정된 것만으로도 너무 기뻤는데 이렇게 인프런 갓생상 1등 수상까지 하여 디프만과 스터디 팀원들에게 너무 감사해요. (아래는 저의 스터디 수강일기에요)

이렇게 디프만 14기 여정을 마무리했습니당
음... 사실 이렇게 프로젝트를 디벨롭한 경험과 기회도 없었기에 그저 열심히 하고자하였고 기술적인 성장 목표와 실 사용자를 유치하기 위한 지원 동기로 참여하였어요.
그러나 저에게 많은 힘을 주고 끌어올려준 팀원들이 저를 더 열심히 끓게 만들어 준 거 같아요. 이래서 최복동, 최복동 하는 거 같아요. 지원하고자 했던 목표도 달성하고 스터디도 하면서 재밌게 활동만 한 거 같은데 벌써 16주가 지나고 돌아보니 많은 아쉬움이 있네요

많은 것을 얻은만큼 앞으로도 더 열심히 살고, 개발도 열심히 해야겠다는 목표가 생겼어요
감사해요🙏

샤라웃 10MM [도모, 재현, 수미, 동민, 우병, 준호, 지우, 채연, 경민], 디프만 14기 운영진 👍


살면서 제일 길게 쓴 글이었던 거 같아요. 끝까지 읽어주셔서 감사합니다:)

10MM의 결과물

깃허브엔 Star와 Behance엔 Appreciate는 저희 10MM에게 큰 힘이 된답니다.

출처: 디프만 medium 블로그

profile
안녕하세요 백엔드 개발자 차윤범입니다 :)

0개의 댓글