日本のチームとリモートワークをした話@シリコンバレー
この記事は、リモートワーク Advent Calendar 2015 の8日目の記事です。
自己紹介
アドベントカレンダーの記事でもあるので、簡単に自己紹介をします。
今年4月から社会人となり、サーバーサイドの開発を担当しているリモートワーク歴8ヶ月の伊藤です。学生時代にもリモートで受託開発をしていたので、その時期を合わせると1年ぐらいになります。
弊社は社員全員がリモートワークをしており、ぼくも普段は静岡の実家でリモートワークをしています。
今回は2週間サンフランシスコとシリコンバレーに旅行(1週間の休暇 + 1週間のリモートワーク)に行ってきたので、その時に感じたことを書きたいと思います。
ちなみにリモートワーカーらしく、この記事はサンフランシスコ国際空港のロビーで書いています…!
一番の障害はタイムゾーン
当然といえば当然ですが、シリコンバレーでのリモートワークの一番大きな問題はタイムゾーンの違いでした。
ちなみに、途上国でリモートワークをすると、一番大きな問題はネットワークの速度になるのですが、さすがに先進国アメリカでは(サンフランシスコが西海岸にあり、日米の海底ケーブルに近いというのも関係しているかもしれませんが)日米間のSkypeは雑音やラグが全くなく、最高品質でコミュニケーションを取ることができました。(速度的には5~20Mbpsぐらいです。)
タイムゾーンに話を戻しますが、日本とシリコンバレーの時差は-17時間で、シリコンバレーの10:00は日本時間の03:00です。例えば、日米で共に 10:0018:00 の時間帯に働こうとすると、重なる時間は日本時間で 10:0011:00 の1時間だけになってしまいます。シリコンバレーで 13:0021:00 に働くと、日本時間で 10:0014:00 の4時間は一緒に仕事をすることができ、割と現実的な形になります。1日の半分を非同期で働く感じですね。
13:00~21:00 に働くと午前中を全部自由時間に使えるので、割と良いスケジュールかもしれません…笑
細かい部分までドキュメント化が必要になる
午後から作業をしたとしても、1日の約半分はだれとも相談することができず、一人で作業をすすめることになります。普段であれば、些細な事でも「これで問題ありませんか?」「この続きからやれば良いですよね?」と Slack で確認をしながら作業を進めることができますが、一人で作業をしているとそれができなくなります。そのため、後々の作業に必要になりそうな情報を事前に質問しておく必要があったり、自分のやったことを事細かに文章化して残しておく必要がありました。
この問題は業務を非効率なものにしてしまいますし、思ったように業務が進まず精神的にもストレスが溜まりやすい部分だと感じました。
というか、寂しいです
朝起きて Slack のログを確認すると、同僚たちが楽しそうに仕事をしていた形跡が残っていて、 あぁ〜 という感じになります。自分だけリアルタイムにそこに参加できていなかったことを考えると寂しくなりますよね。。
長期間こういったことが起きると、チームワークも乱れてきそうです。
解決方法
1週間だけの経験でしたが、いくつか解決方法を思いついたので列挙していきます。
1. 複数人で異なるタイムゾーンに移動する
普段似たような仕事をしている同じチームの人と一緒にタイムゾーンの異なる地に行く方法です。短期間であれば、仲の良い同僚と開発合宿のような形で旅行に行くのが良いかもしれません。今年の夏に1週間沖縄でそれをやってきましたが、最高だったのでオススメです。(その時の様子) 海外だと少しハードルがあがるかもしれませんが、国内では全く問題はありませんでした。
些細な相談ができる人がいるのといないのでは大きく違いますし、精神的にも安心感が生まれると思います。
2. 最低2日先のタスクまで明確にしておく
具体的には、2日かかる1つの大きなタスクよりは、半日かかる4つのタスクを持っていたほうが良いです。というのは、既に書いたように、相談相手がおらず先に進めなくなってしまった時に、そのタスクを一旦停止して、別のタスクに手を付けることができるからです。
快調に仕事が進んでしまった場合や、問題が起きて丸々1日連絡が取れなくなってしまった場合でも、やることがなくならないぐらいにタスクを溜め込んでおきましょう。
3. 自分のステータスを明らかにしておく
タイムゾーンが異なると相手が起きているのか寝ているのか、食事をしているのか仕事をしているのかも分からず、時差を考えるのが大変です。
そこで Slack に自分が今どういう状況なのかを書いておくと、同僚に気を使わせることもなくなり、皆が幸せになります。オススメなのが弊社小飼が作成した arisama というアプリケーションで、メニューバーからステータスを選ぶとそれが Slack にポストされます。
ステータスに加えて、何時頃に退勤予定かを事前に伝えておくと、日本チームが何時までにこちらに情報共有をしないといけないのか把握できるので、さらに働きやすくなるようです。ただ、リモートワークの性質上タスクベースで退勤時間が決まることが多いので、その日の始めに退勤時間を伝えるのはなかなか難しいなとも同時に感じました。
まとめ
タイムゾーンが大きく異なる場所で働くことは思った以上にハードルが高かったです。どうしてもそこで働く必要がある場合には、解決方法1にも書きましたが、同じタイムゾーンで働く人たちでチームを作って、日本のチームとは少し独立して業務を進める形を取るのがベストかなと思いました。