はじめましてブロックチェーン事業部の和田です。
普段はエンジニアでもディレクターでもない存在としてその時々の様々な業務で日々をしのいでおります。そんな存在を許してくれているテコテックという会社の懐の深さに感謝ですね、いやほんとに。
そんな私ですので技術技術したものを語ることは出来ませんが代わりに「開発で悲しい事態を引き起こさない」為にすべきことでも語ろうかと思います。
前提としてそもそも納期やら予算やらで不可能な案件については残念ながら無視します。だってどうしようもないですし...
結論
「チームでコミュニケーションをしっかりとる」以上です。
馬鹿にしてるのか?と思った皆様、私はいたって本気です。
少なくとも不可能案件ではないものの炎上理由の9割以上はこれが出来てないからだと私は思っています。
コミュニケーションとは何か
私の言うコミュニケーションとはわいわい会話することや飲みに行くとかとは別の話であり「意図を正確に伝える」と「意図を正確に受け取る」ことです。
「そんなもの俺は出来ている」とお思いの皆様、その時点でほぼ確実に出来てないです。なぜならコミュニケーションとは自分一人でやるものではないからです。相手に伝わって初めて「出来ている」になることを意識していきましょう。
そして私含めてそれが完璧に出来る人なんて多分ほとんどいません。もしみんなが本当に出来ているならば世の中もっと素晴らしいものになっているはずです。多分。
コミュニケーションによりリスクを減らそう
●仕様書に書いていないことを思い込みにより確認せず実装
「この画面は○○のリストを表示するんか。初期表示の並び順書いてないけどまぁ多分××やろ」→違いました
書いてない方もよくないが聞かなければ正解がわからないことはすぐに聞こう。そうすれば聞かれた方は次から「こういうのも書かなきゃな」となり仕様書の質も上がりお互い得するはず。
99%の自信があろうとも100%にする方法があるのにそれを選ばないのはただのギャンブル。ギャンブルに自分以外を巻き込むのはよくない。
「常識」などという言葉を都合よく使うのもやめましょう。自分以外の人の常識なんてわかるわけがないんですから。
●仕様変更時の影響範囲漏れ
「○○を××に変えておいて」→仕様変更の理由によりほかにも変更が必要な個所があった
「こうこうこういう理由で仕様が変わるので○○を××に変更しますが何か懸念点ありますか?」ぐらいまで最初から伝えるべき。できればそこの実装以外の人にも。
伝える側は前提やらなにやら理解しているが伝えられる側は何も知らないことを意識しておきましょう。
せっかくチームで開発しているのだからみんなの頭を使ってリスクを減らしていきましょう。
そして小さなことでもいいから気づいたことは言おう。「まぁ大丈夫か」もギャンブルでしかない。ギャンブルよくない。
議論と論争を間違えないようにしよう
チームでも意見が割れることは多々あると思いますがそこで行うのべきは論争ではなく議論です。論争は相手に勝つために行うものですが議論は同じ目的のために決着点を探すことなのでそこをはき違えるのはやめましょう。
議論はコミュニケーションですが論争は別物と私は思います。
あなたと意見が対立している人は勘違いしがちですが敵ではなくて味方です。
そしてお客さんも味方のはずです。多分。
こういう事や税金などのお金の話をもっとしっかり義務教育で教えるべきな気はしますね。
ゴールを間違えないようにしよう
仕様書を作る事や担当の実装を終わらせることはゴールでは無いと私は思ってます。
あくまでも開発をしっかり終わらせることがゴールのはずです。
せっかくのチームなのだからゴールまで全員でたどり着きましょう。
別に「俺の仕事はそこまでだけ」と思う人がいてもいいと思いますがそれは最初に皆にちゃんと伝えときましょう。
余談
開発での悲しみを避けるために行うべきことはだいたい伝え終わったものの思っていたよりだいぶボリュームが少なかったのでここからは私の考える「社会で生きる上で持っておいて損はなさそうな視点」でも話そうかと思います。
※完全に個人の感想であり効果効能を保証するものではございません
●自分と他人は全くの別物だと意識する
「自分の100%を相手に伝えよ」
こんな問題が出たら誰でも不可能と答えるでしょう。しかしながら「あの人はこういう人だから」とか「どうして自分のことを理解してくれないんだ」みたいな事を言う人はまぁまぁ多い印象です。自分が出来ないことを相手に求めるのはやめましょう。
これは相手を理解したり自分を伝える努力が無駄と言っているわけでは無いのでそこは勘違いしないでくださいね。それはめちゃくちゃ大事なことですが傲慢な思い込みはなくしましょうという話です。
●社会の中には「本当の自分」より「他者から見える自分」の方が圧倒的に多い
社会には自分よりも他者の方が圧倒的に多いので当然の話ですが意識していないと忘れがちですし、そもそもこの発想が無い人も多い印象です。
「本当の自分」を探す人がよく旅に出るのは多分他者の目を減らすためだと私は考えてます。見つけたとしてそこからどうするのかが疑問ですが。
●むやみやたらに敵認定するのはやめよう
上でも触れましたが自分が生きる世界の範囲には案外敵なんて少ないものです。一時の感情で即認定はやめといた方が幸せになれる気はします。
いないとは言わないので出会った場合は「逃げる」をお勧めします。人生はそこまで辛いものでもないし暇ではないはずです。
●「正しさ」バトルはやめておこう
こちらも上で触れましたが「正しさ」や「常識」は自分だけではなくて相手も持っているものです。むやみやたらに持ち出すと議論ではなく論争になるのでお勧めしません。あくまでも自分の行動の規範にするだけにとどめておきましょう。
極端な言い方になりますが他者はあなたの正しさにほとんど興味はありません。だってあなたも他者の正しさにそんなに興味はないでしょ?
どうしても戦う場合は多数決バトルが始まるだけなので念入りに準備してから行った方が泣きを見ずに済む可能性が高くなります。
●人と会話してショートカットしよう
誰しも生きてきた知識や知恵を持っています。
それを一気にショートカットして会得できる可能性があると考えると「会話」とは恐ろしくチートなスキルと思います。
嫌な言い方かもしれませんがぜひ有効に活用しましょう。
終わりに
ここまでお読みいただきありがとうございます。
偉そうに長々と書きましたが私もまだまだ未熟なので精進の日々です。
これを読んでくれた皆様の何かが変わり人生がより良いものになってくれれば幸いです。
私やテコテックに興味を持っていただけた方は下記リンクよりぜひご連絡ください。