give IT a try

プログラミング、リモートワーク、田舎暮らし、音楽、etc.

A4用紙を使った自分流のタスク管理術とセルフマネジメント #sgadvent

はじめに

この記事はソニックガーデンアドベントカレンダー15日目の記事です。

このアドベントカレンダーでは僕が勤務している株式会社ソニックガーデンのメンバーが、社内文化や会社のポリシー、役立つ技術情報などを紹介していくアドベントカレンダーです。
今回僕は「A4用紙を使った自分流のタスク管理術とセルフマネジメント」について書いてみようと思います。

f:id:JunichiIto:20151216054340j:plain

その前に自己紹介

名前を伊藤淳一と言います。
兵庫県西脇市という田舎町からリモートで働いています。
ちなみに西脇市はこんなところにあります。

ソニックガーデンには2012年の6月に入社し、現在4年目になります。

予備知識:ソニックガーデンのビジネスモデルとプログラマの役割

ソニックガーデンでは「納品のない受託開発」というスタイルの受託開発をやっています。
これは簡単にいうと、お客さんから毎月定額で料金をいただき、プログラマは毎週一定の成果(システム開発)をお客さんに提供する、というビジネスモデルです。
詳しい内容は代表の倉貫が書いた以下の書籍に載っています。

「納品」をなくせばうまくいく

「納品」をなくせばうまくいく

タスク管理で困っていたこと

年を追うごとに並行して進めるタスクが増える

プログラマはスキルが上がってくると、複数のお客さんを並行して受け持つことになります。
また、実際の案件を通して、新人さん(「見習い」や「弟子」と呼ばれます)のOJT教育みたいなこともやります。

入社した当初は担当する案件の数も1つだけです。
また、当然ですが新人教育を担当することもなかったので、タスク管理はシンプルでした。

ところが、経験値が上がるにつれて担当する案件が増えてきます。
それに加えて新人教育も並行して実施、ということになると、様々なタスクが発生します。
割り込みタスクが発生する頻度も増えますし、これはxxまでに、こっちはxxまでに対応が必要、みたいな締め切り付きのタスクもたくさん出てきます。

開発は「週単位」で進めるが、予定は「毎週同じ」とは限らない

そして、ソニックガーデンの受託開発は基本的に「週単位」になります。
具体的にいうと、プログラマは毎週お客さんとミーティングをして次週までに開発するタスクを決め、次のミーティングまでに(=1週間以内に)、ミーティングで決めた開発タスクを進めます。

実はこの「週単位」というのが、なかなかの強敵です。
普通に何もない1週間であれば、まだ話はシンプルなんですが、現実はそうはいきません。

  • 祝日が入る
  • 私用で半日休まなければいけない
  • お客さんの都合で定例ミーティングが1日早くなった

などなど、「毎週何もかもが全く同じ」に進むことはまずありません。

工夫しないと、あっという間にオーバーフロー!

この結果どうなるかというと、

「げっ、しまった!来週の月曜日は祝日やん!!火曜日のミーティングまでに開発タスクが終わらへん!!(と金曜日に気づく)」

「あっ、定例ミーティングは木曜やけど、今週だけ水曜日に変わってたんや!!(と月曜日に気づく)」

・・・みたいなことが発生します。

こんなふうに、「様々なタスクが発生してわけがわからなくなる」「1~2週間先のカレンダーを把握できてなくて、直前になって焦る」という状況が増えてきたので、「こりゃ、しっかりタスク管理しないといかんなー」と思うようになりました。

そして、いろいろ試行錯誤した結果、現在では「A4用紙の上でカレンダーとタスクを一元管理する」という独自のスタイルに落ち着いています。

というわけで、ここからはこのタスク管理術を説明します。

用意するもの

用意するものは以下の通りです。

  • A4の紙
  • ボールペン(黒と赤の二色一体型が最適)
  • クリップボード

f:id:JunichiIto:20151215122117j:plain

A4の紙には上部にカレンダー用のマス目を作っておきます。
僕は印刷用のデータを使って枠線を印刷していますが、最初は手書きでも構いません。

タスク管理のワークフロー

最初にやること:タスク管理シートの作成

一番最初にやることはタスク管理シートの作成です。
具体的には以下のような手順になります。

  1. カレンダーに日付と曜日を記入します。
    f:id:JunichiIto:20151215122350j:plain
    • 土日や連休は細かく管理するほどの予定もあまり発生しないので、ひとまとめにすることが多いです。(上の図の「19・20」がそれ)
  2. ぱっと見て「この日は休み」とわかるように、土日や祝日には「休」や「祝」のマークを入れます。
    f:id:JunichiIto:20151215122446j:plain
  3. カレンダーに予定を書き込みます。
    f:id:JunichiIto:20151215122528j:plain
    • Googleカレンダー等で管理している場合は転記します。二重管理になっても気にしないでください!
    • 仕事の予定もプライベートの予定も両方記入します。プライベートの予定が仕事に影響することも多いので、一緒に管理するのが重要です!
    • 開始時刻や長さが視覚的にある程度わかるように記入します。
    • 一番上と一番下の細い枠には仕事を始める前と、終わった後に入っている予定を書き込みます。(上の図の「歯医者」や「クリスマスパーティ」がそれ)
    • 真ん中の細い枠は昼休みです。(上の図の「ランチMtg(ミーティング)」がそれ。これは毎週社内で実施している状況報告会です)
  4. カレンダーの下側にはタスクを記入します。
    f:id:JunichiIto:20151215122643j:plain
    • カレンダーと同様、こちらも仕事とプライベートのタスクを両方書き込みます。
    • タスクは「備忘録(忘れずにやること)」レベルのものを書き込みます。忘れそうにもないルーチンワークは書き込まなくても良いです。
    • それと、PivotalTrackerやRedmineのような別のシステムで管理されている開発タスクも書き込む必要はありません。
    • タスクはカテゴリに分けて書いておくと良いです。(上の図の「ブログ」や「A社」等がタスクのカテゴリ)
    • 締め切りがあるタスクは日付も一緒に書いておきます。
    • タスクが増える可能性を考慮して、カテゴリごとに余白を残しておくとよいです。

これでひとまずタスク管理シートは完成です。

毎日やること:タスク管理シートを使ったタスク管理

タスク管理シートが完成したら、これを日々の業務で活用していきます。
具体的には以下の通りです。

  • カレンダーを眺めて、この先の1週間の予定を確認します。それから「この日はこれをやって、この日はこれをやる」というのを大きなレベルで決めます。
    f:id:JunichiIto:20151215122528j:plain
    • 上の図だと「16日と21日はミーティングがないから開発タスクをがんがん進めよう」「18日はミーティングが2本入っているから、あまり開発できないかもな」といった感じです。
  • タスク一覧を眺めて早めに対処すべきタスクを確認し、必要に応じて着手します。「絶対に今日中!!」みたいな急ぎのタスクがあれば、赤線で強調します。
    f:id:JunichiIto:20151215122757j:plain
    • 早めに対処すべきタスクに該当するのは、締め切りが近いタスクや、誰かにお願いしなければいけないタスク、リスクの高いタスク等です。
  • スキマ時間(次のミーティングが始まるまでの30分とか)ができたら、タスク一覧を見てそのスキマ時間でこなせそうなタスクに着手します。
  • 着手したタスクが完了したら、横線で消します。
    f:id:JunichiIto:20151215122829j:plain
  • 新しいタスクやミーティングが発生したら、随時追記します。
    • 手元にタスク管理シートがない場合は、いったんデジタルデバイスにメモして後でタスク管理シートに転記します。(僕はyouRoomにメモすることが多いです)
  • 次の日になったら、前日のカレンダーを斜線で消します。これは今日の予定がぱっと目に入るようにするのが目的です。
    f:id:JunichiIto:20151215122848j:plain

こんな感じで、タスク管理シートを活用しながら毎日の業務を進めます。

2~3週間に1回やること:タスク管理シートの切り替え

タスク管理シートを毎日使っていると、そのうちシートがいっぱいになってきます。
そうなったら、新しいシートに切り替えます。

感覚的に「あ~、そろそろ限界だなー」と思ったときが替え時なのですが、あえて具体的に条件を書くならこんな感じです。

  • 1週間先の予定をカレンダー上で確認できなくなった場合
  • もしくはタスクを記入する余白がなくなってきた場合

普通に使っていると、おそらく2~3週間に1度ぐらいのペースで切り替えのタイミングがやってくると思います。


タスク管理シートを切り替える際の作業は基本的に前述の「最初にやること」と同じです。
ただし、タスクについては古いタスク管理シートで対応が終わっていない残タスクを、新しいタスク管理シートに転記する作業が主になります。

ちなみに、旧シートから新シートに転記していると「ん?このタスクってもう何回も転記してない??」と思うようなタスク(つまり、ずっと放置されているタスク)が出てきます。
そういうタスクは重要度が低く、やってもやらなくてもいいタスクだったりするので、思い切って「抹消」してしまいましょう。


タスク管理シートを使ったタスク管理のワークフローは以上のようになります。

タスク管理シートを使うメリット

「困っていたこと」はこれで解決!

最初に書いた「困っていること」はこれで解決できました。
なぜかというと、こんなメリットがあるからです。

  • 1~2週間先の予定をいつでもぱっと俯瞰できるようになりました。
    • これで「しまった!来週の月曜は祝日だった!!」問題は発生しなくなります。
  • カレンダー上の予定を見ながら「よし、この開発タスクはこの日にやろう」という計画を立てやすくなりました。
  • 自分が抱えているタスクの量や、タスクの締め切りもぱっと把握できるようになりました。
あえて「紙」を使うメリット

この業界だと「タスクやスケジュールはやっぱりクラウドで管理するのがベストでしょ!」と考える「デジタル派」の人も多いと思います。
ですが、僕はあえて以下のようなメリットを持つ、アナログな「紙」を使っています。

  • 紙なので視線を移すだけでぱっと確認できます。
    • デジタルデバイスだと、アプリを起動したり、ウインドウを切り替えたりする手間が発生します。
  • 紙なのでペンがあればぱっと書き込めます。
    • 自分だけがわかれば良いので、汚い字で書いたり、思いっきり省略しても構いません。
    • デジタルデバイスだと、アプリを起動して、目的の場所までカーソルを移動して、キーボードでカチャカチャ打ち込んで・・・と言った手間が発生します。
  • 紙なのでPCの画面を占有しません。
    • 当然ですが、紙なのでPCの画面とは独立しています。なので、画面全体にエディタやブラウザを表示しながら、タスクやカレンダーを確認することができます。

ただし、紙だと他の人と共有するのが難しいので、自分の予定表や開発に関連するタスクはクラウド上にも置いてあります。
タスクやスケジュールに関しては、多少の二重管理を許容した方がうまくいくと思います。

「タスク管理シート」だからこそ生まれるモチベーション

あと、ちょっと変わったところではこんなふうに「タスク管理シートならではモチベーション」が出てきます。

  • 旧シートから新シートにタスクを手で転記するのは面倒くさいから、早くタスクを片付けて転記タスクを減らしたい!!
  • シート上にタスクがたくさん残っていると気持ち悪い。逆にタスクがどんどん横線で消されて少なくなると気持ちいい。だから、早くタスクを片付けて気持ちいい状態にしたい!!

こういった感覚は実際にタスク管理シートを使ってみるとよくわかるはずです。

参考:デスクの上にはタスク管理シートが常駐してます

下の写真のように、僕のデスクには常にタスク管理シートが置いてあります。
なので、PCを使って開発しているときでも、ぱっと予定やタスクを確認したり、記入したりすることができます。

f:id:JunichiIto:20151215123018j:plain

おまけ:タスク管理シートはこちらでダウンロードできます!

僕が使っているタスク管理シートのテンプレートをGitHubにアップしました。
印刷してすぐに使えるPDF版と、自分で好きなようにアレンジできるExcel版を置いています。
興味がある方はダウンロードして使ってみてください!

まとめ:タスク管理はセルフマネジメントの基本中の基本

ソニックガーデンのプログラマが身につけるべき重要なスキルのひとつが「セルフマネジメント」です。
その中でも自分のタスク管理は基本中の基本だと思います。
とはいえ、その基本ができていなければ当然、期待されている以上の成果を発揮することはできません。

タスク管理シートを使うことで、タスクやスケジュールの管理はある程度うまく回るようになりましたが、自分では他にも「まだまだだなあ」と思うところがたくさんあります。
そういった点も原因をちゃんと把握して、自分で改善できるようにしていきたいと思います。

参考書籍

ここで紹介したタスク管理術は以下の書籍に載っているやり方がベースになっています。
前職の頃はこの本と全く同じやり方にしていましたが、現在は状況が変わっているので、かなり大きくアレンジされています。

エンジニアのための時間管理術

エンジニアのための時間管理術

  • 作者: Thomas A. Limoncelli,株式会社クイープ
  • 出版社/メーカー: オライリー・ジャパン
  • 発売日: 2006/10/19
  • メディア: 単行本(ソフトカバー)
  • 購入: 11人 クリック: 322回
  • この商品を含むブログ (153件) を見る

PR:ソニックガーデンからリモートワークに関する本が発売されます!

ソニックガーデンの代表・倉貫が執筆したリモートワークに関する書籍が2015年12月17日に発売されます。
リモートワークに関する弊社の知見やノウハウが満載された一冊ですので、興味がある方はぜひ読んでみてください!

リモートチームでうまくいく

リモートチームでうまくいく

他にもアドベントカレンダーを立ち上げています

今年は興味を持っている分野のアドベントカレンダーを自分でいろいろ立ち上げてみました。
こちらも一緒に読むと面白いですよ!