<aside> 💁🏻 TSE 팀이 현재 일하는 모습, 방식에서 지민이 느끼는 점들을 글로 정리하였습니다.

</aside>

함께 쌓아올리기

TSE 팀은 소프트웨어를 개발하는 과정에서 대화와 기록을 통한 진행을 중요하게 생각합니다. 이로 인해 발생하는 사이클을 함께 쌓아올리기라고 표현해 봤습니다.

PRPull Request 기반의 코드 리뷰, 주간 스프린트, 데일리 스크럼 등 프로세스 안에서 다양한 대화가 이뤄집니다. PR에서의 대화는 PR 페이지에, 주간 스프린트 논의는 GitHub 프로젝트 보드에, 데일리 스크럼은 개인의 노션 저널과 팀 슬랙 채널에 자연스럽게 기록됩니다.

대화의 주제는 다양합니다. 초기에는 어떤 언어를 사용할지, 어떤 아키텍처를 추구할지, 클라우드 컴퓨팅이나 데이터베이스 제품은 무엇을 쓸지, 테스트 코드 작성, 이슈 관리는 어떻게 할지 등을 논의했고 피처Feature를 개발하면서는 PR들의 변경 규모가 적당한지, 계층Layer을 좀 더 나누는 게 좋을지, 특정 패턴(ex. DDD Aggregate)을 도입해 보는 게 어떨지부터 특정 패키지를 쓰는 게 바람직한지, 코드의 위치는 적절한지, 네이밍이 이상적인지 등 세부적인 사항까지 많은 이야기를 나눕니다.

이러한 대화는 곧 어떤 결론에 이르거나 때로는 결론을 유보하게 되는데, 대화 중 결론에 이른 것은 TSE 팀이 공유하는 견해Opinion가 되고 이러한 견해가 쌓여 TSE 팀의 개성과 역량을 이룹니다.

많은 대화는 에너지를 많이 소모한다고 생각할 수 있지만, 대화가 쌓이면서 TSE 팀은 -긍정적인 표현으로서- opinionated한 상태가 되고 이로써 새로운 피처를 개발하거나 구조, 세부 사항 등을 논의할 때 기존의 토대 위에서 이뤄지므로 점점 생산성이 높아집니다. (물론 이 opinionated한 상태는 새로운 관점과 의견을 검토하고 적용하면서 바뀌어 나갈 수 있습니다.)

새로운 팀원이 합류하면 그는 기존에 쌓인 기록을 살펴보고 온보딩을 거치면서 점점 더 적극적으로 대화에 참여하게 되며 자연스럽게 TSE 팀의 함께 쌓아올리기를 지탱하고 가속하게 됩니다.

그리고 이런 사이클의 반복은 팀 전체의 평균 역량을 상향 평준화하도록 유도합니다.

애자일하기

TSE 팀원들이 대화를 나눌 때 각자의 개성과 경험, 대화 주제에 대한 현재 지식에 따라 서로 의견이 다를 수 있습니다. 그러나 애자일하기를 추구하는 공통된 토대가 있기에, 서로의 이야기가 이 토대에 맞는지를 비추어보며 건강한 방향성을 이끌어낼 수 있다고 생각합니다.

애자일이라는 표현을 잘 생각해 보기 위해 아래에 몇 가지 문장을 가져왔습니다.

TSE 팀의 논의와 의사 결정에는 이러한 애자일의 가치가 밑바탕이 됩니다.