구글의 Snippets, 업무관리 이메일 시스템

나의 업무 일정을 자신이 직접 관리하면서도, 다른 사람들의 업무까지 한 눈에 볼 수 있는 구글의 Snippets 를 사용하여 생산성을 높여보자 🙂

Snippets

Snippets 소개를 대신하는, 작년 말에 팀장님 (@xguru) 으로부터 받은 메일이다.

기술전략팀,

구글 사내에 운영하는 Snippets 라는 이메일 시스템에 대한 이야기 입니다.
http://blog.idonethis.com/post/16736314554/silicon-valleys-productivity-secret

매주 금요일이 되면, 직원들에게 메일이 한통 날아가는데,
이거에다가 지난주에 한일과, 다음주에 할일들을 적어서 회신을 보내면,
그게 자동으로 취합되어서, 월요일 아침에 이메일로 받고,
공개된 웹사이트에 게재되어 사내에 공개됩니다.
이걸 누가 파이썬 + 구글앱엔진으로 공개한게 있네요.
https://github.com/kushal/snippets

Volunteership 과 잉여를 늘 강조하셔서 역시나 누가 해보란 말이 없다. 😉
흥미를 느낀 나는 GAE 를 처음으로 만져보며 Snippets 를 올렸다. 그리고 팀에서 세달간 운영하며 사용해볼 수 있었다. 아래는 매주 금요일에 오도록 설정한 리마인더 메일과 웹사이트에 보이는 화면이다. 회사 업무 관련이라 내용은 삭제했다.

Snippets Reminder
Snippets Public Site

사용법은 매우 간단하다. Snippets 에 가입하고 팀명을 태그로 넣는다. 그리고 원하는 사람이나 태그를 follow 한다. 메일이 오면 자신의 업무내역을 적어 회신하면 된다. 그러면 그 내용이 웹사이트에 보이고, 내가 follow 한 사람들의 업무내역은 월요일에 다이제스트 메일로 수신하게 된다.

사용해보며 내가 느낀 키워드는 자기관리, 그리고 시간절약이었다.

내가 직접 작성한 한일과 할일의 pair 가 웹사이트에 계속 쌓이기 때문에, 미처 못한 것이나 계속 미뤄지는 것이 눈에 쏙 들어왔다. 사실 이것은 곧잘 있는 일인데도 불구하고, ‘내가 작성했는데 내가 못했다!’ 라는 것이 굉장히 신경쓰였다. 따라서 일의 우선순위와 분배도 보다 신경쓰게 되고, 너무 타이트하거나 너무 느슨하지 않게 업무를 조율해야 했다. 그리고 적었으니깐 꼭 해내려는 의지가 더 생기고 말이다. 동기부여가 더 된 것이다.
또 좋았던 점은 시간을 절약하는 업무 공유 방식이었다. 우리팀 같은 경우는 하나의 프로젝트만 하는 것이 아니었고 각자 담당이 달랐다. 그러니 매번 주간회의를 통해 시간을 맞추고 한명씩 돌아가며 Synchronous 하게 듣는 것은 그다지 좋은 방식이 아니었다. (물론 필요할 때는 모여 짧은 회의를 하였다.) Snippets 를 통해 다른 사람의 업무내역을 다이제스트 메일로 받기 때문에, 그저 다른 메일 확인하듯이 ‘내가 가능할 때’ 메일을 열어 업무를 공유받았다. 이것은 효율적이고도 시간절약 하는데 도움이 되었다고 생각한다.

Snippets 운영하기

직접 구현해도 좋겠지만, 나는 공개된 것 ( https://github.com/kushal/snippets ) 을 조금 수정하여 사용하였다.
Python 으로 개발되었고, GAE 에 올라가기 때문에 Google App Engine SDK for Python 이 필요하다. 이것을 설치하면 GAE Launcher 와 커맨드라인툴 모두 설치된다. 난 이전에 GAE 경험이 없었는데, 초보임에도 매우 쉬웠고 또한 사용해볼 구실이 생겨 기뻤다.

  1. 먼저 프로젝트 코드를 받는다. 나는 fork 해 따로 사용하긴 했다.
    $ git clone git://github.com/kushal/snippets.git
  2. GAE My Applications 에서 새 앱을 생성한다.
  3. 소스를 생성한 이름에 맞게 수정한다. app.yaml 과 emails.py 를 수정하면 된다.
  4. GAE Launcher 또는 커맨드로 배포한다.

그러면 웹 – {앱명}.appspot.com 과 메일 – snippets@{앱명}.appspotmail.com 을 통해 Snippets 를 바로 사용할 수 있다.

완전히 그대로 쓸 수는 없어서 조금 수정했던 부분은 아래와 같다.

  • 타임존을 KST로 변경
  • 가입 계정이 소문자로 들어가도록 변경. 왜냐하면 구글계정을 읽어올 때 대문자가 섞여 가입되는 바람에 메일 발송시 계정 체크하면서 누락되는 문제가 있었다.
  • 서명, 답변 패턴 추가. 사용자가 보통 업무내역을 회신으로 보내기 때문에 불필요한 서명이나 답변은 trim하여 Datastore에 입력하게 되어있다. 그래서 우리팀에 맞게 패턴을 조금 수정했다.
  • 리마인더/다이제스트 메일 발송 시각 변경

수정내역은 https://github.com/curioe/snippets 에 있다.

이 프로젝트는 GAE 에 올라가기 때문에 인증방식이 구글계정, 구글앱스도메인으로 제한되는 것이 단점이었다. 그래서 임의로 Datastore 에 저장된 가입계정을 회사 메일로 바꿔놓는 작업을 하기도 했지만, 가입할 때 Snippets 메일에 대한 form 을 따로 구성하는 것도 한 방법인 것 같다. 아니면 GAE 가 아닌 곳에 새로 구현하거나. 😉

정리

실리콘밸리의 생산성 비밀이란 제목의 위 블로그 글에서는, 어느 산업에서든지 사람간의 협력을 필요로 하므로 사람관리가 핵심 문제인데 실리콘밸리는 단순히 ‘사람을 관리’ 하는 데서 그 해결책을 찾지 않는다고 말한다. Scalable 한 관리 모델을 만들고, Snippets 와 같은 프로세스로 투명하고 자율적으로 해결한다고 얘기하고 있다. Snippets 는 중간관리자 없이 투명하게 엔지니어 개인이 스스로 관리할 수 있게 돕는다. 게다가 평소에 사용하는 이메일을 그대로 활용하면 되므로 실용적이고, 동시에 비동기적으로 업무 공유가 되므로 업무 중단을 되도록 줄여준다. 업무 중심이 된다는 것은 모든 불필요한 요소를 제거하기 위해 어떻게 프로세스를 형식화하는지에 집중하는 것을 의미한다. 구글의 Snippets 만이 아니라, 페이스북의 Colbert 도 있고, Zynga, Palantir, Square 에서도 이와 비슷한 프로세스를 갖고 있다고 한다.

내가 예전에 일했던 회사 중 한 곳은 사람관리의 일환으로 출퇴근 시간과 매일 한 일을 각각의 시스템에 입력하도록 했었다. 나와 동료들은 습관처럼 시스템에 로그인하여 어제의 일을 복사해 붙여넣곤 했다. 그리고 잘 모르는 사람과 앉아 긴긴 주간회의를 가진 적도 많았다.
그런데 /** 구조조정으로 */ 세달밖에 운영할 수 없었던 Snippets 를 난 이제 개인용으로 따로 올려 스스로 사용하고 있다. 위 블로그에서는 ‘의미있는 목표를 향한 진행은 경제적인 것이나 위로부터의 압박보다 더 큰 동기부여를 준다’는 하버드 경영대학원의 연구결과를 전하는데 내가 그 증인이 되어버렸다. 😉 Snippets 를 혼자 사용해서 아쉽긴 하지만, 주 단위 계획과 실행 관리에는 그만인 것 같다. 실리콘밸리에서의 이직이 자유로운 이유가 반우스개로 오픈소스에 있다는데 Snippets 도 어느 면에서는 마찬가지인 것 같다. 내 메일에 내가 한 일이 다 남아있으니 말이다. 🙂

3 Replies to “구글의 Snippets, 업무관리 이메일 시스템”

  1. 음…JIRA 같은 이슈 관리 시스템이나 MS Project 같은 툴과 다른 점이라면 뭐가 있을까요?
    저도 제 업무와 일정관리에 대한 도구들이 필요한데 JIRA는 혼자 쓰기엔 좀 무거운거 같고, MS Project는 Mac에서 쓰기엔 힘들고 고민이네요.

    1. Snippets 는 역할만 두고 간단히 말하면 개인이 작성하는 주간계획/보고서입니다. (또는 일일계획/보고서) MS Project 처럼 프로젝트에 대해 전체적인 일정과 리소스를 관리한다거나 Jira 처럼 프로젝트와 이슈에 대한 트래킹을 하는 기능은 없어요. ^^; 주기적인 계획/회고를 통한 업무 기록과 공유에 사용하시면 될 것 같아요.
      참고로 구글에서는 MOMA 라는 인트라넷에서의 개인별 이력이 Snippets 와 링크된다고 하네요. 🙂

  2. 안녕하세요.
    파이썬 2.7에서도 작동이 되는지요? GAE에 앱 생성했는데도 웹 페이지가 안열리네요.
    2.7로 업그레이드를 해줘야 하는 건가요?

Leave a Reply

Your email address will not be published. Required fields are marked *