부스트캠프2019 멤버십 WEEK10&11_팀 프로젝트의 시작
정신없었던 2주, 팀 프로젝트의 시작
기나긴 9주간의 학습 스프린트 기간이 끝나고, 기다리고 기다리던 팀 프로젝트가 드디어 시작되었다. 여러번의 학습 스프린트를 거쳐서 빠른 속도로 팀 프로젝트를 진행할 수 있을 거라는 기대와는 달리, 어려운 점들이 많았다. 생각보다 여러 사람들이 하나의 서비스를 만들어가기 위해서 미리 정해둬야할 것들이 많았기 때문이다. 우리는 정확히 어떤 서비스를 만들게 될 것인지, 서로가 서비스에 대해 이해한 점이 동일한지, 각자가 생각하는 목표는 어느정도 인지 등등..
1주차에 갖가지 규칙들을 정한 뒤, 좀 더 원활한 진행이 가능할 거라고 생각한 2주차에도 좀처럼 속도는 붙지 않았다. 코딩 스타일을 서로 맞춰가기 위해 첫 주차는 페어 프로그래밍을 시도했는데, 서로의 스타일을 맞춰가는 작업이 쉬운 일은 아니었다. 각자 생각하는 이상적인 폴더의 구조, 코드의 스타일, 깔끔한 방법들이 다 달랐기 때문에 서로를 배려하면서 맞춰가려다보니 더 더딘 속도로 진행됐다.
우린 개발자인데, 정하고 써야할게 한두가지가 아니잖아! 개발은 언제해?
개발자는 개발만 하면 되는 줄 알았다.
프로젝트에 대한 기획은 기획자가 해주겠지! 디자인은 디자이너가 해주겠지! 개발자가 해야될 건 코드 스타일만 맞추면 되는거 아니야?
그 스타일이 하나일 줄 알았지?
개발을 하기 위해서도 맞춰야 할 스타일이 하나만 있는 것이 아니었다. 해봐야 탭의 단위는 어떻게 할지, Bracket{}
은 어떤 식으로 표현할지 그 정도일 줄 알았는데 파고들면 파고들 수록 맞춰야 할 스타일이 많았다.
이런 탭의 단위, Bracket과 같은 간단한 스타일은 lint나 prettier로 어느정도 해결이 가능하다. 그런데 코드를 저장할 폴더링 스타일, React 컴포넌트의 단위, if-else 문의 사용, 변수와 함수의 명명 방식, 커밋은 어떻게 남길 지 등 서로가 서로의 코드를 알아보기 위해 맞춰야 할 것은 생각보다 엄청나게 많았다.
다 맞췄다고 생각했는데, 또 있어!
그렇게 개발을 잘 하기 위해 1주일간 코드 룰, 커밋 룰, 생활 룰, branch 사용 전략 등을 정하고 어느정도 기반이 마련됐다고 생각했다. 그런데 막상 개발에 들어가니, 그래도 생각하지 못했던 규칙들이 있었다.
예를 들어 React Styled Component를 사용하다보니 Component 파일 안에 스타일, 함수들이 함께 있게 되는데 어떤 파일은 Component 아래에 Style이, 어떤 파일은 위에 Style이, 어떤 파일은 Style과 로직 함수 사이에 Component가 위치했다. 이런 식으로 큰 규칙 뿐만 아니라 자잘한 것들까지 맞춰야할 것들이 꽤나 많았어서 회의의 연속이었다.
개발은 조금 밖에 못했어도, 남은 건 있다.
첫 1주일간 너무 많은 여러가지 규칙들을 만들면서 스트레스를 받기도 하고, 맞춰야될 게 너무 많아서 지겨워지기도 했지만 내 코드 스타일에 대해서 다시금 생각해보는 시간을 가질 수 있어서 또 나름 좋은 시간이 되었다.
내가 사용하고 싶은 코드 컨벤션을 팀원들과 맞춰가기 위해선, 내가 왜 이 코드를 사용하는 지 이유를 설명하고 설득해야 그런 스타일을 사용할 수 있다. 아무 이유 없이 내 눈엔 이게 보기 좋으니까 이거 씀! 하기에는 각자의 다른 스타일이 있기 때문이다.
그래서 내가 왜 이 스타일을 사용하는지 설명하기 위해 다시금 내 코드에 대해 생각할 수 있는 시간이 되었고, 다른 스타일은 어떻게 좋은지 또 배워나갈 수 있었던 시간이기도 했다.
또 하나의 이벤트, 발표하기
이번 팀 프로젝트에서는 매주 발표를 하게 된다. 각자 발표가 겹치지 않게, 돌아가면서 발표 하는데 운명의 사다리타기 덕분에 1주차 발표, 프로젝트의 기획 발표를 맡게 되었다.
내 의도를 완전히 전달하는 것은 힘들다.
80명이라는 대규모의 사람들 앞에서 발표해보는 것은 처음이었다. 기껏해야 20명 초등학생들 앞에서 교육해본게 다인걸! 그 땐 그렇게 떨지 않았던 것 같은데, 비슷한 또래들 앞에 서는 건 조금 무서웠다.
발표를 하면 긴장을 많이 하게 되서, 어떻게 하면 짧은 시간 안에 내가 원하는 바를 전부 전달할 수 있을까, 어떻게 하면 좀 더 집중하고 들을 수 있게 할 수 있을까 고민을 많이 했다. 잘 준비해보겠다고 했는데 생각만큼 잘 전달하진 못한 것 같다.
짧은 시간에 이 프로젝트를 왜 기획하게 됐는지, 이 프로젝트는 무엇인지, 목표는 무엇인지.. 고생한 1주간의 모든 기록을 보여주고 싶어서 너무 많은 것을 담은 것이 패인이었던 것 같다. 거기다 여러 번의 발표들로 지쳐버린 모두의 피곤도 덤..
듣는 사람은 무슨 이야기를 듣고 싶을까?
모든 발표가 끝나고, 마스터님이 말하셨던 부분이다. 청자가 어떤 이야기를 듣고 싶을 지 생각해보고 발표했으면 좋겠다.
나는 다른 팀의 발표에서 무엇이 듣고 싶었을까?
생각해보니 이번 발표는 이 프로젝트의 사전 보고가 아닌 기획에 대한 발표였다. 우리의 프로젝트 목표나 기획 의도 같은 것들도 물론 중요한 이야기이지만, 가장 중요했던 것은 우리의 서비스는 무엇인가?
에 대한 이야기였던 것 같다.
아마 발표를 듣고 그래서 뭘 만들겠다는 건데? 라는 생각이 들지 않았다면 잘 발표했던 것이 아닐까? 나는 그런 부분에서 방향을 조금 잘못 잡지 않았나, 하는 아쉬움이 남았다.
발표 총평
긴장하면 왜 손이 그렇게 떨리는 지 모르겠지만, 마음 가짐을 좀 편하게 먹어야 할 필요가 있을 것 같다. 될 것도 안되는 느낌..ㅠ_ㅠ
다음 번에 발표를 할 기회가 생긴다면, 좀 더 청자를 생각하며 떨지 않고 발표해보고 싶다. 모두를 휘어잡는 발표를 하진 못하더라도, 누군가는 저 사람 발표 잘하네 하는 생각이 들도록!
이번 12주차에는
이제 어느정도 프로젝트의 기반이 마련됐고, 어느정도 방향이 잡혀가고 있는 것 같다. 최초에 계획했던대로 프로젝트가 딱딱 진행되는 건 아니지만, 그래도 나름 잘 굴러가고 있다고 생각한다.
더뎠던 속도도 적응을 하면서 점점 빨라질 수 있을거라고 믿는 중.. 남은 5주도 이대로만 잘 굴러갔으면 하는 바램! 또 모두 좋은 기억으로 프로젝트를 마무리할 수 있었으면 좋겠다. 재밌으려고, 잘 되려고 하는 프로젝트니까! :)
지금 진행되고 있는 프로젝트를 보고 싶다면, 이번 프로젝트는 공개되고 있으니 여기를 통해 확인하실 수 있습니다 =D