人の話を聞くという仕事を、工学的に回避しようとしないこと
(ashley.rolfmore.com)- ソフトウェアの現場における核心的な難題は、会話そのものの不足よりも聞くことの不足であり、それをframeworkやsystemのような表現に置き換えて解決しようとするアプローチは、実際に必要な「聞くこと」を避けてしまう
- 誰かの依頼をそのまま実行することは、実際の要求を把握することとは異なり、専門性の効果とtechnical / non-technical の二分法は、相手の知識や文脈を見落とさせる
- 誰もが同じエネルギー、技能、資金を持っていると見なしたり、一人の特性を集団全体に一般化したりすると、人ごとに異なる制約や判断基準を適切に捉えられない
- 人や組織は、時間や役割、ストレス、集団力学によって変化し、発言内容と実際の考えが常に一致するわけではないため、固定的な要件はソフトウェア制作と容易にずれていく
- 聞くことの失敗は、最も価値の高い洞察を取り逃がし、収益機会と競争優位の喪失、誤解の蓄積によるtech debtの増加につながる
核心的主張
- ソフトウェアの現場では、人と人との会話の欠如よりも、より大きな核心は聞くことの不足であり、それをframeworkやsystemのような用語に置き換えて解決しようとするアプローチは、実際に必要な作業を避けるやり方である
- デザイナーやproduct担当者は、人との対話をengineeringが受け入れやすい表現へと変えようとしがちだが、より良い仕組みより必要なのは、人の話をきちんと聞くことだ
- 人と会話することよりも、人の話を聞くことのほうが難しいという前提のもとで、実際に聞くことを妨げる代表的な落とし穴を整理する
聞くことを妨げる代表的な落とし穴
-
言われた通りにやることと、聞くことは違う
- 誰かが望んでいると言ったことをそのまま実行することと、実際の要求を聞き取ることは同じではない
- このテーマに関する既存のアプローチとして、Jobs To Be Done、Outcome Driven Innovation、UX領域の empathy mapping に言及
-
専門性の効果によって自分の視点を過小評価する
- 特定分野を長く学ぶと、「これくらいは当然知っているはずだ」という前提が生まれやすい
- 相手がその分野の専門家であっても、同じ知識を持っているとは限らず、その代わりに別の知識を持っていることがある
- きちんと聞くには、相手が何を知っているのかをより深く理解する必要がある
-
technical を単一カテゴリとして見なす
- ソフトウェア開発者に特にありがちな落とし穴で、technicalは一つの性質ではなく、異質な知識領域からなる広いスペクトラムである
- 「technical / non-technical」という二分法で人を見ると洞察を逃し、きちんと聞けない可能性が高まる
-
誰もが同じ資源を持っていると仮定する
- 同じエネルギー、同じ技能、同じ余裕資金を誰もが持っていると考えると、誤った判断が生じる
- 同じ健康状態にある人でも、管理の仕方や実際に取れる行動はそれぞれ異なりうる
- 数学が得意な人、別の能力に優れた人、資金や余裕が少ないためよりリスク回避的に行動する人など、違いがある
-
一人の特性を集団全体に一般化する
- ある特性を持つ一人に出会ったからといって、他の人も同じだと考えてはいけない
- 例として、高齢者はコンピュータを理解できないと決めつける態度に言及
- 女性全体を、個人的な家族関係のイメージへ還元する態度も同じ誤りである
-
人や組織が固定されていると仮定する
- マクロな水準では、性格は時間とともに変化する
- ミクロな水準では、職場での persona と家庭での姿は異なり、ストレスや特定の条件下では判断も変わる
-
発言と考えが同じだと仮定する
- ある人は言った通りの意味で話すが、そうでない人もいる
- 自分では率直に話しているつもりでも、実際にはそうでない場合が多い
-
人を裁く
- 不十分に文書化された内容を誤解した人を嫌ったり dismiss したりすると、きちんと聞ける可能性は大きく下がる
- 相手が仕事ができない、あるいは人生を間違って生きていると決めつける態度も、聞くことを妨げる要因である
-
80人を80人の個別の人間ではなく、一つの集団として扱う
- B2BはB2Cよりも、むしろ人間的な側面が強く、関係性や力学、組織図の外にある soft power のような要素が働く
- 集団力学が加わることで、個人単位よりもさらに複雑な変数が生まれる
固定的な要件とソフトウェアのずれ
- 人や組織が変化するという事実のため、fixed project managementはソフトウェア制作に適していない
- 要件を最初に確定しておいても、その間に人は変わり、成果物ができたときに一致しているとしても、せいぜい開始時点の要求とだけである
- リリース時点には、もはや望んでいるものではないかもしれず、人は待つあいだにそれぞれ期待を上乗せするため、現実はそのすべての期待と一致しない
結果と影響
- 人の話をきちんと聞けなければ、最も価値のある洞察を取り逃がし、それは収益機会と競争優位の喪失につながる
- 誤解が積み重なるほど、後で一緒に扱わなければならないコードに新たな要素が追加され、一部のtech debtの原因を最小化することとも、聞くことは結びついている
- 聞けていない瞬間に気づけるほど、よりよく聞ける可能性が高まる
1件のコメント
Hacker Newsの意見
私はかなり精密に言葉を選ぶほうで、ある表現を使ったなら本当にその意味を意図している。ところが多くの人は、私から見るとまるでトーン・ポエムのように話し、手近な言葉で周辺をなぞって共通のニュアンスで理解されることを期待しているので、解釈そのものが疲れる。私が文章を書くときはすべての単語を意図的に選んでいるのに、職場でさえ私の表現が不正確だったかのように解釈されることがほとんど常に繰り返されていて、かなりつらい。スペクトラム傾向があるのかもしれないが、診断を受けたことはない。半年ほど前、別部署が長い作業を始められるように小さなRPCを作って文書を書いたのだが、1ページにも満たない分量ながら完全で正確かつ簡潔だった。ところがマネージャーが理由の説明もなくその文書をAIに通して転送し、私はその事実すら知らなかった。1日も経たないうちに筋の通らないフィードバックが殺到し、実際のリクエスト例を見るとエンドポイント改変が起きていた。単なるタイプミスではなく、完全にでっち上げられたアドレスで、文書ではエンドポイントも必須パラメータも全部間違っており、存在しない機能まで発明されていた。普段は忍耐強いほうだが、あのときほど怒ったことはなく、今でも腹が立つ。雇用市場の状況さえ違えば、すぐ辞めていたと思う。人が自分で読んで解釈すべき言語をAIに任せることは、厳密な言語の死のように感じられるし、生成AIが文明を滅ぼすある種のGreat Filterなのではないかと、ここ数か月かなり本気で考えている
このコメント欄を見ているだけでも、文章が指摘した問題をそのまま再現している人が多くて皮肉だと感じる。ここにいくつか付け加えたい。第一に、どれだけ知識と議論を積み重ねても、相手が受け入れたくないことは簡単には受け入れない。第二に、本当に耳を傾けることは、精神的にも身体的にも自分を脆弱な状態に置くことだ。自分の経験や信念、世界観と衝突する話を聞くことになるからであり、人を判断する態度はしばしば自己防衛の仕組みなので、それゆえかえってよく聞けなくなる。第三に、傾聴とはしばしば、すぐ解決策に飛びつくのではなく、相手の苦痛を吸収して処理することだ。たとえばProduct managerはすぐ新機能やチケットに還元しがちだが、本当はユースケースを聞いて痛点を見つけて解決すべきであって、ユーザーが求めた機能名だけを理解しようとしてはいけないと思う
問題意識には同意するが、この一覧はやや愚痴のようにも読めた。効果的なコミュニケーションは人類全体の中核問題に近く、この文章は開発者が傾聴できないと叱りつけるニュアンスがあって、少し高圧的に感じられた。根本的な問題は、人が自分が何を知らないのかを知らないことにある。最高のコミュニケーターは翻訳者のようなもので、メッセージが相手の理解の中で自明になったときに初めて人は耳を傾ける。みんなが耳を塞いだ幼児のように振る舞うことで起きる単純な崩壊だとは思わない。だから私たちはシステムやエンジニアリングを求め、システムの側にギャップ検知や翻訳フレームワークを組み込もうとする。完璧ではなくても、個人にもっとよく聞けと説教するより、チームや会社やシステムのレベルで環境を変えることのほうが重要だと思う
人が言っていることと実際に考えていることが同じだと簡単に仮定すべきではないと思う。逆に、話し手も聞き手が同じ対象を思い浮かべて理解していると錯覚しやすい。だからできる限り詳しく曖昧さなく書いておくことが重要だ。会議で誰かが6語の箇条書き1つで目標を説明しようとするなら、それは実質的に誰も目標を理解していないというサインだと感じる。1ページの文書もなしに会議に入ってくるなら、その人はまだそれを十分に理解していない状態であり、自分の進捗がその成果物に依存するなら、もっと鮮明な絵を要求すべきだと思う
私は主に顧客対応の役割を担っているので、最も重要なのは顧客の期待値の調整を現実に合わせることだと考える。何が可能か、どれくらい時間がかかるか、費用はいくらか、いつproductionに載せられるかを顧客の期待と一致させておけば、開始日や費用が気に入らなくても最終的には満足した顧客になる。特にコストはしばしば案件を壊す要素なので、おおよそのレンジを早い段階で合わせておく。どれだけよく聞いて共感しても、現実は現実であり、顧客もその制約を認めるか受け入れる必要がある。顧客の望むことに何でも相槌を打つ顧客担当者は、結局顧客をより不幸にし、よいインターフェース担当者は顧客と内部チームの両方の話を聞いて、実際に提供可能なものと顧客の期待が一致するようにするべきだと思う
もしかすると、私たちはコミュニケーションに時間をかけすぎているのかもしれない。時間を過剰に割り当てると集中力が散り、どうせ次回また明確にすればいいと先送りしやすくなる。不要な会議を減らしてminimum viable timeだけを割り当てれば、むしろ皆がもっとよく聞くようになると思う
この文章のspecialism effectの指摘はかなり過小評価されていると感じる。私も、ユーザーが自分が何年もかけて体得したものを理解できないことにもどかしさを覚えたことがあるが、すぐに問題は彼らに知識がないことではなく、別の場所に蓄積されていることなのだと気づいた。彼らも同じ時間をまったく別のことを深く学ぶのに費やしてきただけだ
人々が話さず、聞かないことが根本原因だという説明には完全には同意しない。漫画の比喩を借りるなら、多くの人は最初から道路そのものよりテープカットを望んでいて、結局それを手に入れたからこうなっているのだと思う
人は自分では言った通りの意味だと言いながら、実際にはそうでないことがある、というのを私はかなり滑稽な形で経験したことがある。相手の言葉をほとんどそのまま言い換えて理解確認をしたのに、返ってきた反応は、それは絶対に自分が言おうとしていたことではないという強い否定だった
非技術職と話すときに生じる多くの問題の核心は、彼らがコストの文脈なしに、ただXを追加してYを変えようと言うことにあると感じる。もちろん言われたことのほとんどは実現できるが、それぞれの要求にはコストがあり、それを理解しないままでは信頼できる製品リリースと両立しにくい