読者です 読者をやめる 読者になる 読者になる

seri::diary

プログラミングのこととかポエムとか

テキストチャットにおけるコミュニケーションの難しさについて #remoteadvent

ポエム

この記事はリモートワーク Advent Calendar 2015の13日目の記事です。

tl;dr

  • リモートワークにおける主要なコミュニケーション手段は「テキストチャット」
  • テキストチャットでなかなか意思疎通ができない時のストレスはかなり大きいが、少しの工夫でかなり改善できる
  • お互い思いやりを持ってテキストチャットを使うことでストレスの少ないリモートワークライフを

前情報

  • 筆者はwebエンジニアでフルリモートで仕事をしていました
  • 普段の業務にSlackなどのテキストチャットツールを使用していました

チャットで全ての業務上のコミュニケーションを賄うということについて

リモートワークをしていると「それで問題は起きないのか?」という質問を今でもいろんな人から聞かれますし、リモートワークを始める前まで自分も疑問視していました。

なので、リモートワークを始める前は、実際の業務はビデオチャットとかを多用して口頭でのコミュニケーションが多いんだろうなーと思っていましたが、実際は業務上のコミュニケーションはテキストチャットで大体何とかなっていました。

エンジニアという仕事は、テキストでのコミュニケーションが多い職種です。仕様はドキュメントに記載され、成果物も一種のドキュメントであるソースコードだったりインフラ作業のログだったりします。だからもともと相性がいい、といえばそうなのかもしれません。もちろん、複雑な仕様を説明したりするときには、テキストや画像だけでは限界があるのでビデオチャットを使います。

質問が難しい

しかし、テキストチャットで長文のやり取りを続けるのは、会話よりもずっと労力がかかります。少なくとも自分は、50文字ぐらいの文字数で伝えなければならないことであればチャットより口頭で会話した方がずっとラクだと感じます。

特につらいと感じるのは1回で伝わらない時で、その場合以下のようなやり取りが行われます。

  1. メッセージを送信する
  2. 相手からの受信を待つ
  3. 相手に意図が正しく伝わらなかった模様
  4. 再度メッセージを送る
  5. やっぱり伝わらないので再度伝え直す

2の「相手からの受信を待つ」というのは、場合によるがその間何も出来ないということを意味します。

作業を再開しても再開後1分で返事がきてまた中断されるので、この間うまくチャットと自分の作業の間で自分の意識を行き来するスキルが要求されます(あるいはすぐに返事しなくてもいい情報を見極めるスキル)。慣れたとしてもやはり作業を細切れに中断されるのはなかなかにつらいものがあります。 逆もまたしかりで、相手からの質問の意図をこちらが読み違えると同じやりとりを今度は相手にも強要することになってしまいます。普段物理的に会うことが少ない関係で、すぐに口頭でフォローすることも難しいので、こういうやり取りはお互いのストレスの原因になる可能性があると思っています。

具体例として、自分がよく直面したエンジニア同士のうまくいかないパターンのコミュニケーションでは以下の様なものがありました。

エンジニアAとエンジニアBのチャットである。

  • エンジニアA「@B これは何でしょうか? https://github.com/xxxx/yyyy/pull/4169/files#diff-fd8ab12
    ※URLはgithub上のPRのdiff上のとある行を指定している
  • エンジニアB「@A ああ、この修正を入れた意味ですか?それは○○が×××で(中略)△△です。」
  • エンジニアA「@B いやそうじゃなくて、□□なのに(中略)という意味で聞いたんですが。」
  • エンジニアB「@B ああ失礼しました。それは■■の場合(中略)です。」
  • エンジニアA「@B なるほど了解です。理解しました。」

なんてこともない話ですが、エンジニアA→エンジニアBからの質問が1回で正しく伝わっていればやり取りは1往復で済んだはずです。

また、2往復になるにしても、エンジニアB→エンジニアAへ回答する前に、質問の内容に不明瞭な点があるなら一度そこで質問して不明瞭な点を確認することでエンジニアBは2回説明する手間を省けたはずです。

ビジネスメールの基本に解決策がありそう

この問題を解決するためにいろいろ試行錯誤した結果、自分が行き着いたのはいわゆる「ビジネスメールのマナー」でした。(筆者は新卒でSIerに入社していて、当時は社内外のコミュニケーションには主にメールを使っていました)

自分が新卒の時に新卒研修で教わっていたことを思い出すと、以下の3点のことが重要だと教えられました。

  • 最初に「相手にどういう行動を起こして欲しいか」を完結に書く
  • 1行は長すぎず、かつ過不足無く
  • 最後に相手をねぎらうような言葉を入れる

これを元にさきほどのやり取りを改善するならこんな感じになるでしょうか。

<質問の仕方を修正する>

  • エンジニアA「@B ちょっと確認したいんですが、この修正はこのPRの別の部分と重複してるように見えたので不要かなと思ったんですが、どうでしょうか? https://github.com/xxxx/yyyy/pull/4169/files#diff-fd8ab12
  • エンジニアB「@A ■■の場合に(中略)です。」
  • エンジニアA「@B なるほど。理解しました。」

<回答する前に質問の意図を明確にする>

  • エンジニアA「@B これは何でしょうか? https://github.com/xxxx/yyyy/pull/4169/files#diff-fd8ab12
  • エンジニアB「@A すみません一応確認ですが、この修正の意図が分からないという質問でしょうか?」
  • エンジニアA「@B はい。□□でやってるから不要じゃないかなと。」
  • エンジニアB「@A なるほど。それは■■の場合に(中略)です。」
  • エンジニアA「@B なるほど。理解しました。」

前者の例はやり取りが1回になって時間短縮になりました。 後者の例ではやり取りの回数は同じですが、エンジニアAが2回説明していない分、エンジニアAの手間は少く、スムーズに回答できるのでお互いのレス待ちの時間も短くなることが期待できます。

このように、ほんのわずかな言葉の使い方次第でテキストチャットでの質問をスムーズに行うことができるようになります。 言われてみれば当然ですが、普段業務で忙しいと省略してしまうような言葉をほんの少し添えるだけでお互いの時間をかなり節約することができます。そのことに気づいてからは私はテキストチャットで質問するとき、される時は常に気をつけるようにしています。

テキストチャットもまたビジネスコミュニケーションである

テキストチャットはメールほど形式張ったものではないのでついカジュアルな文章で書いてしまいがちです。これはテキストチャットの良いところでもありますが、仕事上で重要な事は確実かつ迅速に伝える必要があります。

エンジニアにとっては、設計について議論するとき、コードレビューで指摘するとき、質問るときに発生するコミュニケーションは、すべて仕事上での重要なコミュニケーションです。同じチーム内であれば、「ビジネスメール」ほどの格式張った形式は不要だと思うしそんな文化になって欲しくはないと思いますが、仕事上のコミュニケーションにおいては確実に要件を伝え・伝えてもらえるコミュニケーションスキルを身につけておくべきだと私は感じます。