테오의 스프린트 13기 후기

sooyuni·2022년 12월 8일
1
post-thumbnail

프롤로그

서류 탈락이 수십개가 넘어가고, 연말이 겹쳐 취업 준비 기간이 장기화가 될 조짐이 보이자 나는 심한 번아웃이 왔다. 괜히 초조해졌고 소화 불량이 생겼다.
이 시기에 주변의 친한 친구들에게 함께 근교로 맛있는 것도 먹고 바람도 쐬러 가자는 제안을 더러 받았었는데 지금 생각해보니 표정도 말이 아니었고, 카톡에서도 자신감 떨어진 말투가 보였다😅.
이 우울한 감정을 잊고 집중 할 무언가가 필요했다.
때마침 테오의 프론트엔드 오픈 카톡방에 구글 스프린트 13기 모집 공지가 올라왔다.
5일의 짧은 기간 + 모르는 사람들과의 팀 프로젝트는 처음이라 떨렸지만 잡 생각을 떨칠 수 있을 것 같았다.
그 길로 바로 신청서를 제출했고, 대망의 23일이 다가왔다.🥳

때 마침 올라온 테오의 스프린트 13기 모집 공고...! 고민 끝에 접수 완료!

1일차(11월23일)

🐱아이디어 소개와 팀 결정

1. 13기 참가자들의 프로젝트 아이디어 소개 및 자기 PR 시간

각자 만들고 싶은 아이디어를 피그잼에 글로 남기고 아이디어를 발표하는 시간을 가졌다.
다양한 아이디어가 나왔고 실제로 참여해보고 싶은 프로젝트가 많았다.
마지막의 마지막까지 고민했던 기억이 난다.
그만큼 퀄리티 높은 아이디어가 많았다.
아래는 내가 생각해갔던 아이디어였는데 감사하게도 생각보다 많은 표를 받아,
최종까지 올라갔지만 최종 결정에서 탈락했다.
(나도 최종에선 내 것이 아닌 다른 분의 아이디어를 고른건 안 비밀🤭)

탈락한 내껀 나중에 개인 프로젝트로 만들어 볼 생각이다. 아이디어로 남기기엔 아쉽다.

2. 최종 아이디어 선택 및 팀 결성!

최종 채택된 아이디어 6개 중 나는 1조 <붕어빵 파는 고양이 트럭>에 들어갔다.

<붕어빵 파는 고양이 트럭>은 추후 <냥냥 편지>로 이름이 변경되었다.

고양이와 붕어빵을 주제로 한 롤링페이퍼라니..자칭 랜선 집사로서 참을 수 없었다😻
최종 팀 결성 후 우리는 Gather에 모여 Team Canvas를 작성하며 친해지는 시간을 가졌다.
첫째날을 무사히 마쳤다. (열정적인 팀원들이 모여 첫째날임에도 세시반에 끝이 났다XD)

2일차(11월24일)

🐱지도만들기

1. 우리 서비스의 궁극적인 목적과 주요 대상 찾기

우리는 테오의 설명과 함께 서비스의 궁극적인 목적과 대상에 대해 이야기를 나눴다.

1) 각자 포스트잇에 아이디어에 관하여 본인의 생각을 적는다.
2) 다른 사람들의 포스트잇을 읽어보며 중요하다 싶은 것들을 하이라이트 한다.
3) 각자 말해보는 시간을 가진다. 이 때 발표 내용을 기록한다.
4) 한 사람의 의견에 치우치지 않게 모든 팀원이 발표 후 의견을 수렴한다.
5) 생각에 생각을 더할수록 우리의 프로젝트는 점차 구체화 된 모습을 갖췄다.

2. 우리가 만들 서비스가 추구해야 할 핵심 가치

그 다음 단계로 우리 서비스가 추구 할 핵심 가치에 대해 의논했다.
우리 프로젝트와 비슷한 목적을 가진 서비스가 많았기 때문에 우린 타 서비스와의 차별점이 필요했다. 마찬가지로 포스트잇에 본인의 생각을 적고 발표하는 시간을 가졌다.
(스탬프 활용이 뛰어난 우리 팀원들🤣 6일 내내 늦은 새벽에 잠들어 힘들었음에도 재미있었던건 리액션이 뛰어난 팀원들 덕분이라고 생각한다.)

3. 워드 클라우드

워드 클라우드를 만들며 우리가 나눈 의견들 중 가장 기억에 남는 문구들을 정리했다. (중요한 문구에는 하이라이트를 쳤더니 눈에 확 들어와 보기 쉬웠다.)

4. 어떻게 하면 ~ 할 수 있을까 질문 만들어 답하기

가장 오랜 시간을 소요했던 부분이다. 테오가 기다리다가 먼저 꿈나라로 떠났다(?)
여태까지는 상상의 나래를 펼치는 과정이었다면 이젠 본격적으로 구체화를 하는 과정이었다.

1) 구체적인 컨셉과 구현 할 기능, 문제에 대한 해결 방법은 무엇인지
2) 각자 사전에 조사 해 온 레퍼런스를 바탕으로 발표하고
3) 모든 의견을 다 들어보고, 다른 사람은 발표 내용을 텍스트로 기록하고
4) 의견을 바탕으로 토론하다가 새로운 아이디어가 생기기도 했다.
(토론 중 탄생한 알바 고양이와 사장 고양이 컨셉 쏘큗...바로 낙찰)
5) 회원 가입 부분에선 질문과 답변이 꼬리를 물면서 진도가 정체되기도 했다.

5. 지도 완성하기(스토리 보드 완성)

마지막으로 우리 <냥냥 편지> 서비스에 있을 것 같은 기능을 각자 적어보았고,
팀원들과 함께 같은 페이지에 들어갈 기능끼리 엮어보는 시간을 가졌다.
그 내용을 바탕으로 각 페이지 별 스토리 보드를 완성하였다.

3일차(11월25일)

🐱스케치 시간

1. 각자 화면별로 스케치 하기

최종 확정 된 스토리보드를 바탕으로 각 페이지의 상세 화면을 각자의 상상대로 그려보는 시간을 가졌다. 화면 별 스케치를 하고 투표를 통해 결정하였다.

🐱 스케치 하는 과정
1) 일단 각자가 각 화면별로 모든 스케치를 전부 다 한다.
2) 참고 할 만한 레퍼런스가 있다면 옆에 같이 첨부한다.
3) 일단 각자 다 그리고 나서 마음에 드는 부분에 하이라이트 한다.
4) 각자 본인이 그린 화면에 대해 설명 하는 시간을 가진다.
5) 최종적으로 마음에 드는 장치에 투표 한다.

2. UX 최고 결정권자와 PL 선정

컨셉이 고양이와 붕어빵이었던 만큼 우리 프로젝트의 핵심은 디자인이었다.
UX 결정권자는 만장 일치로 (사실상 정해져 있었던) 이 맡기로 했다.
PL(Project Leader)은 슈슈슉을 존경하는 어피치가 맡아주기로 했다.
프로젝트 이름은 <냥냥편지>로, 팀 이름은 <냥글냥글>로 결정되었다.

3. BDD와 SDD를 통한 설계와 Task 분배

이번 구글 스프린트를 진행하며 가장 인상깊었던 부분이다.
페이지 별 구조를 BDD와 SDD를 통해 설계 하고, 페어를 정해 담당 업무를 분배했다.

BDD : 사용자의 행동을 중심으로 개발을 진행하는 방식
SDD : 데이터를 중심으로 추려내고 개발을 진행하는 방식

이후, 페어로 개발을 진행하다가 중간에 변경 점이 생기면 다시 피그잼에 돌아와 재 설계 후 다시 개발에 들어가곤 했는데, 기존에 경험했던 팀 프로젝트보다 한결 수월한게 느껴졌다.

뚜뚜(나)울루가 담당했던 페이지의 BDD는 위의 사진과 같다.
사용자의 행동을 중심으로 구현 할 기능을 정리했고, 해당 기능에 필요한 데이터의 골격을 잡았다. 스티커를 활용하니 각 기능 별 진행 사항도 알기 쉬워 좋았다.

3일간의 기획 단계를 거쳐 페어 프로그래밍과 개발의 시간이 찾아왔다.

4~7일차(11월26 ~ 29일)

🐱개발 1일차(26일)

1. 팀 노션, 깃헙 Organization 생성

먼저 프로젝트 소개 및 작업 내용 공유를 위한 팀 노션을 개설했다.
Github에서 Organization을 생성하고 FE와 BE 각각 레파지토리를 개설했다.

2. 협업 규칙 생성

우리 팀은 총 7명으로 DE 1명, BE 1명, FE 5명으로 이루어져 있다.
FE가 5명이므로 컨벤션, 폴더 구조, 개발 환경 셋팅, 변수 리스트 등의 논의가 필요했다.
따라서 프론트엔드만 따로 오후 1시에 모여 기본적인 협업 규칙을 정했다.
팀 프로젝트 경험이 많았던 슈슈슉님을 존경하는 어피치 덕분에 컨벤션 및 변수 리스트의 논의는 빠르게 정리되었고 Gather의 Live share 기능을 이용하여 기본적인 개발 환경 셋팅과 폴더 구조를 잡았다.

3. API 및 디자인 적용 전 페어 별 기능 구현

디자인 시안이 나오기 전까지 각자 맡은 Task에 따라 페어로 기능 구현을 진행 했다.

페어 프로그래밍 팀 구성

  • 1팀 : 뚜뚜, 울루 (인트로, 공유 페이지)
  • 2팀 : 베아, sooya (붕어빵 커스텀 페이지)
  • 3팀 : 슈슈슉님을 존경하는 어피치 (붕어빵 리스트)

울루와 나는 로그인이 가능한 인트로와 링크 공유가 가능하고 로그인 여부에 따라 페이지에 보이는 요소가 달라지는 공유 페이지를 구현 했는데, 처음엔 기능이 별로 없을꺼라 생각했는데 만들다보니 경우의 수가 굉장히 많다는 걸 깨달았다.
그로 인해 중간에 설계가 변경되기도 하고 경우의 수가 많아지니 헷갈려서 피그잼으로 달려가 표까지 그리며 만든 기능이 우리의 생각과 맞게 됐는지 하나 하나 체크했다.
페어 프로그래밍이 빛을 발하는 순간이었다고 생각한다. 모르는 부분은 함께 찾아 해결하고, 아는 지식을 공유했다. 눈이 4개다보니(?) 오타의 확률도 줄었고 서로 이야기하면서 개발하다보니 지루하지 않았다.

🐱개발 2일차(27일)

개발 ing~ 진행 사항 공유 및 세부 기능 회의

1일차와 마찬가지로 Gather에 모여 페어 별로 흩어져 기능 구현을 계속 진행 했다.
전체 회의 시간에 다 같이 모여 팀별 진행 사항 공유와 디테일 관련 회의를 진행 했다.

  • FE : css 단위 통일, 전역에서 관리할 데이터, 메인 폰트, 마크 다운 사용 여부, 배포 방법, og태그 등
  • DE : 우선 순위에 따른 디자인 제공 일정, 디테일한 디자인 결정 등
  • BE : 소셜 로그인 처리 방법, API 제작 일정, API 분리 여부, 배포 방법 등

🐱개발 3일차~마지막(28~29일)

28일, 디자인이 나오다. 그리고 CORS...🥲

이번 테오의 구글 스프린트 13기는 월드컵으로 인해 하루가 연장되었다.
(정말 다행이라고 생각했다XD)
디자이너 의 활약으로 하루만에 엄청나게 귀여운 디자인이 탄생했다.
본격적으로 이미지 파일 교체 작업과 반응형 작업을 시작했다.
~귀엽다 귀엽다의 연발이었다. 보기만해도 스트레스 풀린다는게 이런걸까😻~

서버와의 통신 과정에서 말로만 듣고, 글로만 읽던 CORS에러를 무수히 만났다^_ㅠ
코드를 바꿔보고, 배포 환경에서 시도해보고, 프록시 설정이 제대로 되었는지 확인하고..
문제 해결의 과정에서 나는 올해 들어 제일 많은 통신 시도를 해 보았고, 무수한 실패의 경험도 겪었다. 겪어보지 못한 일에 아찔했고 머리가 하얘지던 순간이 오기도 했지만
덕분에 얻어가는 것도 굉장히 많았다. (역시 배움엔 이론도 좋지만 실전이 최고다.)
스프린트 기간에는 해결하지 못해 발표 당일엔 체험판을 배포하여 발표 했다.

(CORS는 스프린트 종료 이후 무사히 해결 했다.☺️)

29일 마지막 발표의 날

앞서 말했다시피 우리는 체험판을 배포하여 발표 했다.
(아쉽게도 체험판 배포에 오류가 생겨 다른 팀 분들이 직접 체험해보지 못하고, 우리가 Live Share를 통해 대신 기능 시연을 하며 발표 했다.)
발표가 끝난 뒤 우리 팀은 프로젝트를 다시 재 배포하여 테오의 프론트엔드방에 소개 되었을 땐 무사히 체험판을 보여드릴 수 있었다.
생각보다 많은 분들이 우리 프로젝트의 고양이를 귀여워 해 주셨다🥰

그리고 회고

정신 없이 지나간 발표 시간 뒤, 우리에게 회고의 시간이 찾아 왔다.

발표 직전까지 CORS 이슈로 로그인 기능을 구현하지 못해 아쉬움이 있었지만,
체험판에서 우리가 기획했던 기능의 대부분을 체험 해볼 수 있었기에 아쉬움은 오래 가지 않았다. 그리고 스프린트 이후에도 팀원들끼리 반드시 이 프로젝트를 마무리해서 배포하기로 했다. 현재도 열심히 진행 중이며, 이전보다 더 퀄리티가 좋아졌다🥰

이번 협업은 어디에서도 배워보지 못한 소중한 경험이었다. 디자이너, 백엔드, 프론트엔드가 모여 진행한 팀 프로젝트 경험도 처음이었고, 걱정했던게 무색 할 정도로 팀원간의 소통이 원활했고 분위기가 좋았다. 남의 코드를 보며 배워가는게 많았고, 나에게 부족한 부분이 무엇이고 어떤 부분을 더 중점적으로 공부해야 하는지 알려준 소중한 시간이었다고 생각한다.

🐱마치며

우리 냥글냥글 팀은 올해 안에 정식 출시를 목표로 열심히 작업 중이다.
바쁜 직장 생활과 정신 없는 취준 생활에도 불구하고 매일 밤 열심히 모여 작업해주는 팀원들에게 너무 너무 고맙다. 배울게 많은 팀원들과 함께하게 되어 너무나 영광이다🥰
성공적으로 마무리 되어 이 귀여운 프로젝트를 다른 사람들에게 보여줄 수 있으면 좋겠다.

profile
기록하고, 기록하자. 남는건 기록 뿐📝

0개의 댓글