暗黙の社内ルールとしてのメール

いくつか暗黙の社内ルールを取り上げたいと思う。その第一に、メールがいいのではないか、と考えた。社内メールの目的は、第一に非同期の連絡手段を社員に提供するということだけど、暗黙にいろいろなルールができているのではないか?

・例えば、24時間以内に返信をしなければならない(偉い人からのメールだと、もっと短くて4時間も返信に時間がかかると、文句を言われる・・・)。

・例えば、宛先に入れているのに、○○さん、とメール本文に書かなければいけない(それも、上司のメール振り分けのルールに引っかかるように!)。

・直属の上司を必ずCCに入れなければならない。

これらは、メールが単に非同期の連絡手段を社員に提供するということからは生まれないルールであるが、社内規定に書いてあるのを見たことがない。にもかかわらず、これらを破ると、上司からおしかりを受ける。じゃあ、最初からルールにしておけばいいのではないのか? AIに仕事を任せたら、このような一つ一つをルールとして定義しておかなければならないのに、明文化されていないのは、何か、問題を抱えていると考えたほうがいい。

・つまり、24時間以内に返信が欲しいのに、そのための連絡プロセスがないこと。そのため、いつでもいい返事ではなく、24時間というリクエストをする以上は、追加のコストを払うべきであるが、それが払われていないこと。立場が上だからということが本当に、正しいルールなのか検討されていないこと。

・つまり、チームとチームの間で連絡するプロセスがないこと。または、個人と個人の間で連絡を取ることが業務上許可されていないにもかかわらず、ルール化されていないこと。

このような状況で、いきなり入ってきた人がうまく仕事ができないとしても、ルールがしっかりしていないから、というほかない。

本来のルールは、以下のようなものが明文化されているべきなのに、暗黙のルールとなっているおかげで、業務プロセスの改善もできない状態になっているのが、現状だろう。

・プライオリティ設定以外の場合、ケースの到着順に回答しなければならない。プライオリティ設定がされたケースの場合、回答の優先対応をしなければならない。回答先はプライオリティ料金を支払わなければならない。

・チーム内で、他チームとの連絡内容が、いつでも照会できる状態でなければならない。

おそらく、ルール化しない理由の一つは次のようなものだと思う。現状、ルールに伴うコストが見えない状況であった。そのコストが見えるようになると、そのコストの負担を誰が取るのか決定しなければならない。その決定が面倒(または怖い)なのだろうと思う。

気の利いた、空気が読める部下がいれば、うまいことやっていくれていて、問題が感じられなかったかもしれない。でも、そのような気の利いた、空気の読める部下を、このような低付加価値の仕事に張り付けていることが、非倫理的だとはおもわないだろうか。

この隠れたコストを見えるようにして、さらにそれを削減するというのは今までのBPRでも一緒だろうから、いってみれば、BPRしたくないという以上の理由も考えられない。

統制される組織は窮屈か?

コンプライアンスのために、効率度外視のルールが決められていることが、日常のビジネスで問題になって久しいと思う。コンプライアンスは、いたって平たく言えば、経営者が、株主やら、検察やら、マスコミやらから、訴訟を起こされたり、逮捕されたり、非難の嵐を浴びせられたりということを避けたいという、いわば「恐怖」をモチベーションに、企業組織に導入された縛り事だったという理解で、間違ってはいないと思う。厳密には、もちろんいろんな整理をすることはできるだろうけども。

ルールがたくさんあると、そのルールを知悉しないと、その組織で効率的に働くことができなくなるし、生産性はルールを前提とした競走という程度のことではなくて、ルールの使いこなし力が生産性の一番の要素というかなり逆転した状態になってくる。本来なら、「一番速く走れる人が誰か競走しよう!」というときに、お互いを邪魔しちゃいけないとか、フライングはダメとか、そういうのがルールだったとおもう。でも、今の大企業の組織の状態は、利益を一番上げたということは、まあ評価されるだろうけど、一番偉いわけではなくて、ミドルマネジメント以下であれば、ミドルマネジメントが決めたKPIを自分の組織やチームのエゴを通して、社内ルールを知り抜いたうえで、社内人脈をベースに出し抜いて他の邪魔をしながら達成し、シニアマネジメントになれば、トップマネジメントが決めたKPIを競合の邪魔をして、自社のエゴを通して実現するというのが出世の道のような状態だ。

まあ、そういうのが大企業の常だとすれば、ルールが明文化されて整備されていれば、それはそれでフェアなのかもしれない。そこに、ルールを前提として業務を変える権限が付与さえされていれば。ルールさえ守れば、どのような仕事の仕方をしてもいい、というコミットメントがあれば、フェアなんだろう。

だから、コンプライアンス過剰なルールで縛られた業務というのは、それ自体が問題ではなくて、ルールを守った業務プロセスを柔軟に変えられる権限が与えられていないということが、一番の問題だというのが、わかると思う。

実際、ルールに業務プロセスの仕方まで書いてあって、それを変えるのは容易じゃない。でも、本来、それは変えていいはず。変える力こそ、従業員に与えるべき、僕はそう考えている。

NozbeとTogglの連携

Nozbeは、GTDのコンセプトに忠実なオンラインタスク管理システムで、チームのタスク管理にも拡張することもできるアプリケーションです。僕は、これをProライセンスで使用しているのですが、一つタスク管理上の悩みがありました。

Nozbe

Nozbeで行ったタスクがどれだけ時間がかけられたのかが記録として残らないということです。実際に、使用した時間を計測したいと思っても、Nozbeには記録する機能がありません。NozbeはあくまでもGet Things Doneのツールであり、やってしまったら後のことは別のシステムで管理すべきという発想なんだと思います。

それはそれでいいのですが、生産性向上をはかる上では、時間の記録も必要だろうと思うのが必然です。

そこで、定評のあるタイムシートシステムであるTogglと連携させることを検討しました。Togglは、プロジェクト別の時間計測が可能なオンラインのタイムシートシステムです。無料のライセンスを使用しています。

最初、IFTTTで連携できないか確認してみたのですが、IFTTTではNozbeとTogglと連携できませんでした。そこで、Zapierを使用して連携できないか確認してみたところ、可能そうであることがわかりましたが、どうも、本格的に連携させたいと思ったら(後で説明しますが、EvernoteやSlackとも連携させることにしたかったのです)、高価なライセンスを買わないといけなさそうでした。そこで、Google SpreadsheetとGoogle Appを使って連携させてみました。実際、今、これを使って運用しています。

30分バッチ処理で、Nozbeで作成したプロジェクトを、Togglのプロジェクトに追加し、また、Nozbeで完了したプロジェクトをTogglでCloseするというインタフェースを利用しています。

要求分析

システム統合をするにあたって、まずは要求分析です。自分がユーザーなので、要求分析といっても簡単なものですが、以下のような要求事項があげられます。

  1. Nozbeで作成したプロジェクトをTogglのプロジェクトに連携させたい。新規作成、完了をTogglに連携させる。Nozbeで新規プロジェクトを作成したら、Togglにも同じプロジェクトを登録したい。
  2. Nozbeで新規プロジェクトを作成したらEvernoteにも対応するNoteを自動的に作成したい。
  3. Evernoteに連携されたNoteに作業記録を書きながら、Togglで時間計測をしたい。
  4. Togglの時間計測を完了したら、SlackにPostして作業時間報告をしたい。

さて、実際の実装に行く前に、要件定義と基本設計を行います。

要件定義

(経済性要件)ソフトウェアの新規購入や、ウェブサービスに対する追加的な支払は0にしなければならない。NozbeはProライセンスを許す。Togglは無料ライセンスを継続したい。追加のライセンスやサブスクリプションを行うソリューションを採用してはならない。

(同期頻度)1時間あたり2回以上、同期が行われなければならない。

(利用技術)開発言語は、JavaJavaScriptのいずれかでなければならない。

(製品)タスク管理ツールは、Nozbeを使う(そもそもの要求事項なので、変えないことにします。Toodoledoを使うとか、タスクシュートを使うとかいろいろ選択肢はありますが、自分が気に入っている基本のツールを変えると、生産性を落としてしまうので、ここでは変えないことを優先します)

ノート管理ツールは、Evernoteを使う(これも、そもそもの要求事項なので、変えないことにします。OneNoteを使うとか、いろいろ他の選択肢もありますが、やはり、使い慣れたものが一番なので)

時間計測ツールは、Togglを使う(これもやっぱり要求事項。以下略)。

報告ツールは、Slackを使う(これも、以下略)。

(連携基盤)Google Spreadsheetと、Google Appを使う。AWSレンタルサーバーを使って、実装することも考えられましたが、経済性要件を満たすようなインフラは見つけられませんでした。そこで、Google Appを使って実装することにします。また、EvernoteGoogle AppでアクセスできるAPIを公開していないので、最小限の範囲でZapierを併用する。

基本設計

機能を大きく4つに分解し実装箇所を以下の通りにする。

 

Google App

1. SyncProject: Synchronize project list of Toggl based on Nozbe prioject

2. Post to slack when toggl timer is stopped

 

Zapier

3. Create Evernote note when Nozbe projec is created

4. Create Evernote tag when Nozbe project is created

 

詳細設計&実装

SyncProjectのGitHubはこちら。

GitHub - bawbr/Nozbe2Toggl: Nozbe2Toggl

SyncTimeEntryのGitHub

GitHub - bawbr/Toggl2Slack: Post to slack when toggl time entry has finished