見出し画像

IT古典良書を読み解く《第16回》透明のインクで赤い線を引く方法

第16回 The Expert (Short Comedy Sketch)「透明のインクで赤い線を引く方法」


3階が欲しいんだ!

こんにちは。スクラムマスターの伊藤です。
古代インドで高層階が流行ったことがあったそうで、ある富豪は大工に「俺は3階が付いている家が欲しいんだ。作ってくれ」と頼みます。そこで、大工は基礎を作り、1階を作り始めますが、それを見た依頼主は「何やっているんだ。俺は3階が欲しいんだ。早く3階を作ってくれ!」と言ったそうです。(筆者の超意訳)

この寓話は仏典に出てくるそうなのですが、上辺ばかりで本質が見えていない人への教訓なのでしょうが、IT業界の人ほど大工さんに共感してしまい笑えない気がします…。

今回は古典良書ではなく、エンジニアが置かれる理不尽な状況を描いた古典動画?を元にどう対応するのがいいのか考えていきたいと思います。

《よもやま話》
現在は、住宅の建築方法も進化し、事前にパーツを作って現場ではプラモデルのように組み立てる手法が主流になりつつあるようです。3Dプリンタが活用されると聞くと、何だか凄い時代になったなと感じます。ソフトウェアでいうとコンポーネント化でしょうか。この手法なら古代インドの富豪もニッコリ?かもしれません。


透明のインクで赤い線を引いてくれ!

何やら理不尽な見出しですが、この業界に10年ぐらい在籍している方は思い出す方もいるかもしれません。話題になったあの動画です。(秀逸な日本語字幕が付いているので、英語が苦手な方でも楽しめ…胃が痛みます。いつの間にやら2700万再生!)


動画を見ている時間が無い方は以下のサイトでも大枠がわかります。
https://nlab.itmedia.co.jp/nl/articles/1404/07/news118.html

ITに詳しくない、お客様やデザイナー(場合によってはコンサルも)と会話すると往々にして発生するシチュエーションでコメント欄の共感1位が、

You know you're an engineer when this doesn't feel like a joke anymore.
(これがジョークだと感じられなくなったら、あなたはエンジニアです。)

と真理が書かれています。

私が最初にこの動画を見た感想は、「日本だけじゃないんだ!」でした。世界中のエンジニアは、まるで火星人とコミュニケーションを取るような苦行を強いられているんだと、少しホッとしました。

この業界にいる方であれば、多かれ少なかれ「透明のインクで赤い線を引いてくれ」と言われた方も多いかと思います。

全て画像で出来ているWebページを見かけると、「あぁ、デザイナーが凝りに凝ったデザインを用意して実装するとブラウザ間の微妙なレイアウトずれが許せなかったんだなと共感してしまいます。 (デザイナーがMac、エンジニアがWindows使っていると更に再現度アップ。私も学生時代にWebサイト作成のアルバイトをしていて、凝ったデザインをCSSを駆使して実装しWindows版のIE、Netscape(当時のブラウザは事実上この2種類)で動作確認したのですが今は亡きMac版のIE、Netscapeでグチャグチャになっていました)

スマートフォンのアプリが流行すると、知識の無い依頼主が増え、サーバーが無いと実現できないことを説明したり、ランニングコストがかかること、あのアプリのこの機能を付けてと、まるでレゴみたいにアプリが作れると思われていたり、iOSのバージョンがあがって不具合が発生すること、Appleがアプリの審査をリジェクトすることの説明には骨が折れました。
よくよく考えると、「Appleに抗議しに行け」と言われたときはシリコンバレーまでの旅費をいただいて行くだけ行けば良かったですね(スティーブ・ジョブズ存命中でした)

さて、このような理不尽な要求にエンジニアはどう答えるのがいいのでしょうか。

《よもやま話》
本動画を検索するときに、うろ覚えで「透明のボールペン」で検索していたためボールペンの紹介ページばかりヒットしてなかなか見つかりませんでした。透明のインクだったか…。


できないとは言わない、できると言った後にどうやるかを考える

動画でもアンダーソンは話が通じないと察し、最後は何でも出来ますと答えていますが、ある意味正しいかもしれません。
エンジニアはNoと言わずにYesと答えて、但しこの条件が付きますと答えることがベターと考えます。

似たような例ですが、仕事を依頼して「出来ません」と言われた経験がある方いらっしゃいますでしょうか。お客様ではなくて、チームメンバーに言われると、少し心が折れます。

これは私の経験ですが、メンバーに「いついつまでにこの仕事をお願いします」と依頼したところ「無理です」と言われてしまいました。十分できるはずなのにと思い、詳細を聞いてみると、やろうとしていることが非常に非効率で時間がかかるため、その日までには終わらないということでした。そこで、こうしたら出来るかと聞いたところ(例えると、全部手作業でやろうとしていた人にExcelのVLOOKUP関数やピボットテーブルを使ってと言った感じです)を、「それならば出来ます」と話は180度変わりました。

ここに少しヒントがあるようです。この場合、彼は「無理です」のNoではなく「出来ますが、時間がかかります」と条件付きのYesを答えておけば心証は悪くならなかったはずです。そして、そのボトルネックを話し合うことで解決策や妥協点が見出だせたはずです。

つまり理不尽な要求への対応策はYesと答え、それを実現するための条件を協議しましょうというのが回答になります。

実はこれは、弊社の行動指針(クレド)の1つにある「できないとは言わない、できると言った後にどうやるかを考える」と一致しています。

ちなみに代表の丹下による書籍のタイトルにもなっています。


書影

とは言っても、理不尽な要求に何でもYesと答えて大丈夫なのか、いくつかのパターンを想定して考えていきたいと思います。

《よもやま話》
弊社の行動指針(クレド)は、とてもエンジニアに合致していて共感できる部分が多いですが、個人的に実行に至らない点があります。それは正直者?なので、すぐ顔に出てしまうということです。無意識ですが嫌そうな表情でYesと答えるのは改めなくては…。


理不尽な要求から仕事を取る

理不尽な要求が来たときの対処法をQ&A形式で解説していきたいと思います。

Q.1 枝葉末節に話が行き過ぎている場合

A. まずは本当に必要なものを作成するようにする
なにやら、どうでもいいような細かいこと(子猫を書いてくれなど)で理不尽な要求をされたときに有効です。

それを実現するには調査などに時間がかかるため、まずはスモールスタート(ちなみに横文字は一部の人にはとても有効です。見極めて使いましょう。端的に言うと、ややプライドが高く知ったかぶりしてしまうような方です。以前、書きましたが優先度を聞いても教えてくれませんが、ファーストプライオリティはどれですか聞くと教えてくれるという笑い話?があります)でミニマム(最低限)の機能だけ作りませんかと提案しOKしてもらえれば本質を見極めて、理不尽な要求は後回しとしましょう。

顧客の要求をきちんと整理し「こうですよね」と提案するのはエンジニアの腕の見せ所です。顧客が、どういうシステムが欲しいのかよく分からないという声も聞きますが、顧客はシステムが欲しいのでなく、現在の課題を解決するためにシステムを作成しようとしているので、そのプロブレム(課題・問題)でしたら、こちらのソリューション(解決策)が最適ですとスマートに決めましょう。決して以下の図に陥らないように注意すると共に、動くものを見てみないと顧客はどうしても、それで正しいのかイメージがわかないため、アジャイル開発で進めることを推奨します。

そして、ミニマムのリリース後に、あの機能作りましょうかと聞くと、「ひとまずは、いいかな」的な回答が返ってきます。動くものをみたことで、あの機能は不要だったことに気付くようです。

顧客が本当に必要だったもの

引用元:https://dic.nicovideo.jp/a/顧客が本当に必要だったもの


Q.2 超短納期
A. お金がかかります
続いては、ありえないほどの短納期を要求された場合です。話を単純化しますが、明日までに1ヶ月離島で作業させるために100人のエンジニアを派遣してくれと言われた場合、正攻法では無理でしょうが一月の単金を1,000万円で募集をかければ定員オーバーするかもしれません。

可能ですが、それに間に合わせるためには、これぐらいのリソースが必要なため高コストになりますが構いませんかと回答すれば、依頼主は基本的にお金には敏感なため、交渉テーブルに付いて今回の例では納期(明日)や規模(100人)、品質(エンジニアのスキル)といった点について実現可能な条件を見出すことになるかと思われます。

Q.3 予算不足
A. その予算でしたらここまで出来ます(予算分の成果物を渡す)

以前から付き合いがある顧客とはよく発生する事例ですが、この機能追加を1,000万円(本来は3,000万円ぐらい)でやって欲しいというものです。こちらを正直に受けると必ず炎上してしまうので、戦略的な受注(ここで損をするけど後で大きく得が出来るなど)で無い限りは、予算範囲内で収まるように機能や、サポート範囲をシュリンク(縮小)しましょう。それが出来ないから困っているんじゃないかという声が聞こえそうですが、顧客も無理を言っていることは承知なので、「出来ますが、サポートブラウザは1種類とさせてください」
「納期にお時間を頂きます(生産性が低いが低単価で作成するなど)」といった妥協案を提案していきましょう。

Q.4 実現不可
A. 可能だと思いますが調査が必要です

今回のテーマでもある透明のインクで赤い線を引いて下さいが、顧客が欲しい物だった場合です。まずは、1度出来ますとお答えする訳ですが、可能だと思うが、その実現方法がすぐに分からないので調査が必要なことを伝えましょう。後日、3パターンぐらいの妥協案を提示して選んでいただく、もしくは、そこから更に新しい案を協議する形にします。

例えば、
「透明のインクが赤く見える眼鏡の開発にて実現」
「透明なインクを引くと、線が赤くなる紙を用意して実現」
「赤いインクで赤い線を引くという妥協案」といった感じです。それぞれコストと納期を提示することで顧客に納得してもらう交渉が出来るはずです。
なにはともあれ、「できないとは言わない、できると言った後にどうやるかを考える」を基軸にして理不尽要求からデスマーチにならない実現可能な仕事を獲得していきましょう。

《よもやま話》
透明のインクで赤い線を引く方法ですが、この動画が話題になった際に、幾人かの猛者がチャレンジして一定の回答を出しています。エキスパートって凄いですね。詳細はリンク先をご確認下さい。これもよくよく考えれば条件付きで実現している訳です…。ただ、これは顧客が本当に欲しかったものかというと違いそうですが(特に子猫など) 個人的には直角や線の定義を変更するところから始めると良さそうです。
https://nlab.itmedia.co.jp/nl/articles/1404/08/news124.html


《合わせて読みたいシリーズ》 IT古典良書を読み解く

_________________________________

執筆者プロフィール:伊藤 慶紀
大手SIerにて業務用アプリケーションの開発に従事。ウォーターフォールは何故炎上するのか疑問を感じ、アジャイルに目覚め、一時期、休職してアメリカに語学留学。
Facebookの勢いを目の当たりにしたのち、帰国後、クラウド関連のサービス・プロダクト企画・立ち上げを行う。
その後、ベンチャーに転職し、個人向けアプリ・WebサービスのPM、社内システム刷新など様々なプロジェクト経験を経てSHIFTに入社。
趣味は将棋、ドライブ、ラーメン、読書など

お問合せはお気軽に
https://service.shiftinc.jp/contact/

SHIFTについて(コーポレートサイト)
https://www.shiftinc.jp/

SHIFTのサービスについて(サービスサイト)
https://service.shiftinc.jp/

SHIFTの導入事例
https://service.shiftinc.jp/case/

お役立ち資料はこちら
https://service.shiftinc.jp/resources/

SHIFTの採用情報はこちら
https://recruit.shiftinc.jp/career/