코딩 없이 회고 자동화 시스템 만들기
목차.
1. 앗! 회고 까먹었다...
2. 코딩 없이 회고 자동화 시스템 만들기.
3. 회고 시스템에 디테일 추가하기.
하나라도 해당되면, 재밌게 읽을 수 있어요!
1. 회고를 하자고 말하지만, 또 까먹었다.
2. 오늘의 나는 내일의 나보다 1% 성장하고 싶다.
3. 성장 욕구가 활활 타오른다.
회고를 밀린 구몬 숙제처럼 하는 사람? 그 사람이 바로 나예요~
개발 효율을 높이기 위해 개발자가 환경을 세팅하는 것처럼, 기획 및 PO 업무를 할 때마다 관련 환경을 먼저 만든다. 처음 구축하는 데 시간이 들지만, 환경을 구축해 놓는다면 기획 및 매니징 작업을 하는 데 업무 효율을 급격히 증가시킨다. 무엇보다 주기적으로 처리해야 하는 태스크를 빠르게 해결할 수 있다.
주기적으로 처리하는 태스크 중에서 '개인 회고'가 있다. 스타트업에서 성장을 위해서 회고를 강조하고, 이전에 다닌 AI 스타트업에서도 금요일마다 팀원 회고를 진행했었다. 비록 회사를 퇴사하고 학교로 돌아가는 복학생 아싸가 됐지만, 계속 개인 회고를 매 주말마다 짧게 진행했었다. 벌써 개인 회고를 노션에 기록한 지 1년이 다 돼가는데, 매번 아래의 항목을 질문했었다.
1. 이번 주 부족한 점은?
2. 이번 주 성장한 점은?
3. 다음 주 목표는?
4. 이번 주는 1 ~ 5점 중에서 평가한다면?
요즘 들어 '회고'를 자주 까먹었다. 저번 주에 회고를 까먹은 걸 뒤늦게 알아서, 뒤늦게 밀린 구몬 숙제를 해치우듯이 몰아서 2주 치 회고를 진행한 적이 여러 번 있었다. 왜 회고를 계속 까먹을까? 곰곰이 생각해보니 회사에 다닐 때 PO가 항상 회고 시간을 공지해줘서 강제로(?) 했었는데, 이제 그런 사람이 없다 보니 계속 까먹은 것 같다. 개인 업무에 집중해서 회고를 까먹을 때, PO가 "금요일 회고 잊지 마세요!"라는 말로 리마인드 시켜줬다. 최근에 학교 생활 및 사이드 프로젝트에 집중하다 보니 회고를 까먹었을 뿐만 아니라, 리마인드 조차 할 수 없었다.
"정기적으로 알림을 준다면, 회고 타이밍을 놓치지 않을까?"
몇 달 전에 노션 API 기능이 베타 버전으로 출시됐고, 자피어에서도 이를 지원하고 있다. 문득, 자피어(Zapier)를 통해 노션(Notion)과 슬랙(Slack)을 잘 연결하면, 이 문제를 해결할 수 있다는 생각이 들었다. 노션에는 알림 기능이 없지만, 회고 DB를 만들 수 있다. 반면에, 슬랙은 봇을 활용해 정기 알림을 보낼 수 있고, 응답도 받을 수 있다. 이 둘을 결합해, 아래와 같이 정기 개인 회고의 자동화 프로세스를 스케치했다.
1. 슬랙 봇이 토요일 아침에 회고 DM을 보낸다.
2. 시간이 날 때, DM을 확인하고 회고를 작성한다.
3. 자피어가 작성한 회고를 노션에 전달한다.
4. 노션에서 회고 DB에 이번 주 회고 내용을 로깅한다.
슬랙에는 플러그인 기능을 활용해 다양한 App의 기능을 내 워크 스페이스에 불러와서 사용할 수 있다. 이 중에서 정기적으로 특정 질문을 하고, 대답을 받는 App도 존재한다. 이 App은 스타트업에서 주로 정기 업무인 스탠드 업 미팅, 회고 등을 위해 사용한다. 토요일 아침마다 회고 질문을 던져주는 App으로 Geekbot을 선택했다. Geekbot을 선택한 이유는 매우 단순한데 이 기능 정도로는 무료 플랜으로 충분하기 때문이다. 이제 대학생이니 감축 재정...
개인 워크스페이스에 Geekbot을 연동시키면, 이제 특정 요일과 시간에 봇이 나에게 물어볼 질문을 설정할 수 있다. 또한, 질문의 응답을 출력할 채널도 설정할 수 있다. 전체적인 프로세스는 아래와 같다.
1. Geekbot이 '나'에게 DM으로 질문한다.
2. '나'가 DM으로 질문에 답변한다.
3. 이 답변 내용을 수집해서 특정 채널에 출력한다.
Geekbot에서 매주 토요일 아침 8시에 부족한 점 / 성장한 점 / 다음 주 목표 / 이번 주 점수 평가, 총 4개의 항목을 물어보도록 설정했고, 질문의 답을 #weekly-feedback 채널에 보여주도록 설정했다.
설정한 요일 및 시간에 아래와 같이 DM이 온다. 봇이 한 개씩 질문을 물어보면, 여기에 답하면 된다. 해당 응답 기록은 질문과 함께 설정한 채널(#weekly-feedback)에 출력된다. 왼쪽 이미지는 Geekbot이 나에게 보낸 DM이고, 오른쪽 이미지는 응답 결과를 보여주는 채널이다. 참고로 시간(11AM)이랑 프로필(ㅇㅇㅇ)은 테스트 값으로 마구 설정한 값이다.
이제 자피어로 슬랙의 채널에 남긴 응답을 노션으로 보내줘서, 계속 로깅할 수 있게 만들어야 한다. 잽(Zap, 자피어의 단일 워크 플로우)은 (1) 워크플로우의 시작 이벤트인 트리거와 (2) 트리거 후에 자동으로 작동될 이벤트인 액션으로 구성된다. '#weekly-feedback 채널에 메시지가 생성될 때'를 트리거로 설정했다. (1) 이제 토요일에 Geekbot의 회고 DM에 응답하면 (2) 연동 채널에 회고 내용이 출력되고 (3) 이 출력 이벤트를 트리거로 잽이 작동한다.
왼쪽 이미지는 #weekly-feedback 채널에 남겨진 메시지고, 오른쪽 이미지는 자피어가 이 메시지로부터 수집한 데이터다. title 필드에는 Geekbot에서 나에게 물어본 DM 질문이, text 필드에는 이 질문에 대한 내 응답이 적혀있음을 알 수 있다.
위 트리거는 '#weekly-feedback 채널에 메시지가 생성될 때'이다. 즉, 내가 실수로 아무 말이나 남겨도 이 워크플로우가 작동된다. 이로 인한 오작동을 막기 위해, 후속 액션으로 필터를 설정했다. 만약 실수로 채널에 말을 입력해도, 특정 필드의 데이터가 존재하지 않는다면 알아서 멈추게 만들 수 있다.
이제 회고 내용을 노션의 회고 DB에 로깅시키면 끝이다. 노션의 기존 데이터베이스에 아이템(=블록)을 추가하는 액션을 잽에 추가시켰다. 자피어와 노션을 연동하기 위해선, (1) 노션의 토큰을 자피어에게 제공하고 (2) 노션 워크스페이스 수정 권한을 넘겨야 한다. 이에 대한 자세한 과정은 해당 링크를 참고하자!
자피어와 연동한 노션 회고 DB의 필드 값은 아래와 같다. 자피어를 통해 슬랙의 회고 내용과 각 필드를 매칭 시켜주면 끝이다.
짜잔! 테스트를 진행하면, 코딩 없는 회고 자동화 시스템이 완성됐다. (1) 슬랙이 회고 질문 DM을 정기적으로 보내고 (2) 이 질문에 답하면 자동으로 슬랙에 기록이 남는다. (3) 동시에 자피어가 슬랙과 노션을 연동해 (4) 노션의 회고 DB에 추가로 로깅한다.
이번 주 회고 점수를 숫자로만 보는 건 너무 삭막하다고? 그렇다면, 함수 필드를 사용해보자. 함수 필드는 마치 엑셀의 함수처럼, 다른 필드의 데이터를 변수 값으로 받아서 특정 결과를 출력하는 필드다. 자피어가 노션 DB의 특정 필드에 데이터를 채우는 순간, 자동으로 함수 필드가 작동된다. 아래에 보이듯이 [점수] 필드는 텍스트 필드고, [점수 보드] 필드는 함수 필드다. [점수]의 수치에 따라, 서로 다른 이모지를 보여주게 설정했다. 로켓 귀여워!
최근 고위드에서 SaaS Cracker라는 서비스를 런칭했다. SaaS 툴을 추천해주는 플랫폼인데, 이곳에서 노션의 특정 DB의 데이터로 차트를 그려주는 Notion Charts 서비스를 알게 됐다. 노션 애호가로서, 이건 꼭 써봐야겠다고 생각하고 바로 사용해봤다. 해당 서비스는 무료, 유료 플랜을 모두 제공한다. 무료 플랜은 노션의 DB와 연동된 5개의 차트를 생성할 수 있다. 이걸 활용하면, 아래와 같은 차트를 노션에서 구현할 수 있다.
NotionCharts에서 노션 페이지를 연동하면, 해당 페이지 내부에 있는 데이터베이스를 알아서 연결해준다. 이렇게 연결한 DB의 데이터를 차트를 만들 때 사용할 수 있다. 참고로, Inline DB는 읽지 못하고 Full Page DB만 읽어오니 주의하자!
총 9가지의 차트를 제공하며, 아래 왼쪽 이미지의 오른쪽에 있는 [Data Settings]에서 DB에서 어떤 데이터를 어떻게 사용해서 차트를 만들지 선택할 수 있다. 각 항목의 내용은 아래와 같다. 그래프가 완성되면, [Copy Embed Url]을 눌러서 url 링크를 복사하고, 노션에 임베디드 해보자! 그러면, 아래 오른쪽 이미지처럼 차트가 출력된다. 인터렉션도 가능하다.
Notion Table : 차트를 그리기 위해, 불러올 노션 데이터베이스 / 앞 단계를 통해 연동한 DB만 선택할 수 있다.
X Axis : 선택한 노션 DB의 필드 값으로, X축이 된다.
Y Axis : 선택한 노션 DB의 필드 값으로, Y축이 된다. / 텍스트 필드가 아닌, 숫자 필드를 선택해야지 오류가 안 뜬다.
Sort By : X축에 적용할 솔팅 기준
Group By : Y축 집계 방식을 결정한다 (ex) Count, Sum, Average
참고로 [Y Axis]는 텍스트 필드가 아닌, 숫자 필드가 와야 한다. 텍스트 필드를 선택하면, 노션에 임베디드해도 차트가 그려지지 않을 수 있다. 만약 숫자가 텍스트 형식이라면, 아래처럼 함수를 이용해 숫자로 바꿔주자!
https://saascracker.gowid.com/index