Post

Time Tracking

일이나 기타 생산적인 활동에 대한 효율은 물론, 정신적/심리적인 안정에도 도움이 된 time tracking 에 대해 몇 자 남겨본다. time tracking 은 “시간 추적” 이라는 문자 그대로의 해석 보다는, “언제 어떠한 일을 하였는지를 시간별로 기록하는 과정” 이라고 정의하는게 문맥에 어울릴 것 같다.

1. 어떻게 시작되었나?

2014년 컨설팅 에이전시 회사에서 일을 시작했을때 billable hours 라는 것을 처음 경험했다. 쉽게 말하면 “내가 일한 시간만큼 급여를 받는다” 인데, 그게 어떻게 정량적으로 측정이 가능한가에 의문을 가졌다. 하루종일 print(...) 따위의 출력코드 한 줄 쓰고도 8시간이 소요되었다고 우겨댈 수 있으니까. 매우 과장된 예시이긴 하다만.

그런 것들은 이미 0.5, 1, 3, 5, 7 등 effort point 로 환산된 task estimation 으로 인한 할일의 세분화와 직원으로서의 청렴함(?)으로 아무런 탈 없이 몇 년 동안 잘 유지가 되었다. 관련된 방법이나 있었던 일들이 많긴 하지만 주제에서 어긋나므로 넘어가도록 한다.

아무튼 어떤 일을 했는지 시간을 기록해야 했던 것이 습관이 되었고, 지금도 어떤 것들을 했는지 계속 기록을 하고 있다.

2. 어떤 도구를 쓰지?

처음 경험해 본 도구는 Toggl 이다. 현재 해당 회사는 추가적인 제품들을 출시하면서 내가 예전에 사용했던 기능은 Toggle Track 이라는 이름으로 세분화되었다.

회사에서 이 Toggl 을 사용했었고, 심지어 Toggl 의 공동설립자 중 한 분이 유럽 어딘가에서 미국을 방문했을때 사무실을 방문하기도 할 정도로 우리회사는 팬이었는데, 몇 년 사용 후 송장(invoice)과 관련된 기능 부족으로 인해 차후에 아쉽게도 Harvest 로 옮겨가게 되었다.

회사가 billable hours 에서 연봉제로 급여방식을 바꿀때까지는 계속 Harvest 를 사용했고, 그 이후 개인적으로 웹브라우저 확장이나 데스크탑 앱으로 개발된 몇 가지 time tracking 도구들을 사용해봤지만, 웹/모바일/데스크탑 연동이 제일 부드러웠으며 통합된 경험을 얻을 수 있었던 Toggl 로 다시 돌아왔다. 딱 이 기능이 좋다! 보다는 딱히 걸리적거리는 것들이 없어서 계속 사용중이다.

3. 어떤것을 기록할까?

개인의 취향에 따라 기록의 종류와 범위가 달라지겠지만, 개인적으로는 컴퓨터 앞에 앉아서 하는 것들과 독서 정도로 기록을 하고 있다. Toggl 을 기준으로 Project 를 대분류로 사용하고 있다. (개인적 용도이기 때문에 Projects, Tags 등 모든 기능을 그대로 쓰진 않는다.)

  • Work - 업무관련
  • Study - 공부
  • Blog - 블로그 글 작성
  • Tech Catch-up - 업무와 기술관련 정보 웹 서핑
  • Read - 독서
  • Etc - 미분류, 잘 쓰지 않음

한 단계 더 세분화된 소분류들은 아래와 같고, Tags 를 소분류를 기록하는데에 쓰고 있다. 이렇게 세분화된 항목들은 Work 에만 쓰고 있으며, 동시에 여러개 선택이 가능하고, 업무와 관련된 조금 더 자세한 시간 기록을 위해서만 사용중이다. 나중에 Reports 에서 확인하기도 좋다.

  • Internal - 회사 내부 프로젝트 / 동료들과 pairing 하는 등의 시간
  • [CLIENT_NAME] - 고객 프로젝트의 이름
  • Meeting - 회의
  • Code Review - 코드리뷰

이렇게 분류(대분류와 소분류)를 선택 후 마지막으로 프로젝트: 어떤 일을 하였는지 를 간단히 적는다. 예를 들면:

프로젝트명이 소분류에 있는데도 하는 일을 적을때 프로젝트: 하는 일 처럼 한 번 더 적는것은 Tags 가 현재 tag 를 바로 보여주지 않기 때문이다. (다중 선택이라 아이콘만 보여준다.)

나중에 Reports 에는 이런 형태로 기록이 남는다.

4. 어떻게 기록하면 좋을까?

코딩을 하는 도중에 동료의 갑작스러운 도움요청이나 우선순위가 높은 PR 이 열려서 리뷰를 하는 등, 돌발 이벤트가 발생한다. 일단, 인생은 다 그런것이니 스트레스를 받지 않도록 마음을 우선적으로 가다듬는다. 아무튼… 그런 경우에는 현재 수행중인 tracking 을 멈추고, 대충 뭔가를 타이핑 후, track 버튼을 클릭한다. 차후에 돌발 이벤트가 끝난 후 수정이 가능하므로 지금 수행해야 할 task 에 집중하는 것이 좋다.

그리고 micro-tracking 하지 않아야 한다. 예를 들어 X 라는 컴포넌트를 제작함에 있어서 “컴포넌트 X 뼈대작성”, “컴포넌트 X 의 프로퍼티 추가” 보다는 “컴포넌트 X 구현” 과 같이 어느정도 큰 분류에서 기록하는 편이 좋다고 생각한다. 기록과 수정에 소모되는 시간이 만만찮다.

기록하는 것을 깜빡했다면, 생각이 떠올랐을때 그냥 넘어가지말고 대략적인 시간이라도 적어두는 것이 좋다. 하나 둘 빠진 항목들이 모여서 기록이 쌓이면, 후회가 줄어든다.(?)

5. 무엇을 얻을 수 있을까?

Toggl 의 Reports 에서 4월의 어느 일주일을 예로 들어본다. 월요일은 원래 쉬는 날이고, 화요일은 부활절로 인해 공휴일이었으며, 업무 부하는 낮은 수/목/금/토, 총 4일의 업무일이 있었던 주간이다.

일주일간 기록했던 것들을 그래프로 보면 위와 같다. 업무일수가 적었으니 업무 시간도 적었지만, 확실히 일이 수월한 편이었던 한 주라 Work 의 시간이 적고, 책을 꽤 오래 읽었다는게 보인다. (내가 책을 잘 안읽어서 이정도면 상당히 많이 읽은 편이다.)

세부적으로는 이렇다. 원래 의도대로, 쉬는 날에도 책을 읽거나 블로그 글을 쓰는 것도 기록을 했다. 업무 뿐 아니라 스스로의 교양(…)에 얼마나 시간을 투자했는지를 여실히 보여준다. (마음이 평온했던때라 평소보다 뭘 많이 읽고 쓰긴했다.)

Toggl 은 이렇게 일주일에 한 번씩, 지난 주의 기록을 모아서 메일로 보내준다. 마음에 드는 기능 중 하나. 보기 싫어도 보고 반성하게 되거든.

기록하지 않은 시간들도(운동하거나 바람쐬거나 넷플릭스를 본 시간들 등) 하루 중 뭔가를 했던 시간이긴 하지만, 이렇게 목적을 두고 기록한 하루 또는 한 주가 보여주는 것이 생각보다 꽤 많다. 적어도 내가 생각했던 “내가 대략 이번주에 두어시간 책 읽고 하루에 6시간 정도 집중해서 일했나?” 보다는 많았다.

기억력의 부재는 자존감 상실에 지대한 영향을 미치는 것 같다. 하루를 마무리 할 때 아침부터 했었던 일을 떠올려 보면, 분명 뭔가 많이 한 것 같은데 단 몇 가지 이벤트로만 요약이 되는 경험을 줄곧한다. 더 많을 것 같은데? 난 뭘한거지?! 라고.

또는, 엄청 일을 오래한 느낌인데 실제로 시간이 별로 지나지 않았다는 사실에 놀랄때도 있다. 그 만큼 에너지 소모가 많았다고 판단할 수도 있었다. 오늘의 에너지를 현명하게 관리하는 것도 내일을 위해 상당히 중요한 일이다.

개인적으로 생산성과 자기관리를 위해서 시간을 기록하고 있지만, 사실 그것에 두는 비중은 미미할 정도고, 실제로 무게를 더 두는 것은 “조급함을 덜고 마음의 평안을 얻기 위함” 이다. 뭔가 많이 기록되지 않은 하루 또는 한 주는 조급한 감정에만 휘둘리지 않고, 객관적인 시간의 기록을 바탕으로 냉정하게 판단하고 반성할 수 있었다. 반대로, 기록된 시간이 많은 날은 뿌듯함을 느끼기도 했다.

개인차가 분명 있을 것 같다고 생각을 하면서도, 기록을 하는 것으로 인해 잃는 것 보다는 얻는 것이 많다고 경험적으로 느낀다. 여기저기 추천하고 다니는 이유이기도 하다.

This post is licensed under CC BY 4.0 by the author.