がるの健忘録

エンジニアでゲーマーで講師で占い師なおいちゃんのブログです。

「出来る」って、なに?

元ネタは
https://gallu.hatenadiary.jp/entry/2018/12/30/102130

ん………そもそもとして、まず「出来るか?」って質問に三軸あって。

のあたり。

この辺、割と大事だし重要なんで、ちょいと噛み砕いていきたいかなぁ、と。

「出来る」って単語は割と「便利な言葉 https://gallu.hatenadiary.jp/entry/20090714/p2 」なので。
ちゃんと噛み砕いていかないと、割と大きく齟齬が起きる上に、齟齬った時にあんまり幸せにならないので、ちょいと言及してみたい、かと思います。

先にまとめると
・技術的に可能か
・コスト(費用 / 工数)的に可能か
・期限的に可能か
の3軸があろうか、と思うのですが*1
その辺を、もう少しかみ砕いて。

技術者が考えがちなのが「技術的に可能か?」という軸。
ここはさらに細分化されて
 → そもそも「可能」か?
 → 「現実的」か?(重さとかメモリとか前提条件とか諸々)
ってのがあります。

まず「そもそも可能か」どうか。
「技術力が低いと可能なものでも不可能と断じる」方向のほかに「技術力が低いと本当は不可能なのに可能だと思ってしまう」ってのもあるので、色々と勉強やら学習やら修練やら仲間やら、必須科目は増えていく一方でございます。

もう一つ「技術的に不可能ではないんだけどものっそいCPU使ってメモリ食って処理時間が1年かかる」とかいういものを「できる」と言い切ると色々と齟齬があるので。
「現実的な範囲で可能かどうか」、或いは「どれくらいのスペックを前提にどれくらいの入力量であればどれくらいの処理時間で動くもんなのか」あたりは、ちゃんと明示しておいたほうが無難です。
入力データ量については。1kBのデータが処理できれば理論的には1EB*2の処理だって可能ではあるんでしょうが*3、あんまり現実的な数値にはなりませんよね?
分からなければ「不明なんで一回、簡単なプロトタイプ作って実験してみませんか」って持ちかけるのも一つの手段です。
相手によっては「プロトタイプで作ったコードは渡さないように気をつける」とか色々あるのですが、まぁ。

とまぁ、「技術」切り口でも、これくらいはあるのですが。

特に「営業さん」とか「顧客さん」とか「上司さん」とか「マネージャさん」とか「上流会社さん」とかが「できるかできないか」って質問の時は、どちらかというと「技術以外」のお話ががっつりと絡んでくるんですよねぇ。

割とありがちなのが
営業「出来ますか?」
技術「(技術的には)可能ですよ(お金、たっぷり追加がかかりますが)」
営業「(追加金額無しで)可能なんですね」
的な会話。
あんまり「幸せになれる」絵図は見えてこない感じですよねぇ正直。

出来る、って単語には「コスト(費用 / 工数)的に可能か?」って切り口が、これは必ず存在していて。
単純に「できる?」って聞かれた時は、コストの話が「入ってるのか入ってないのか」くらいは、確実に確認をしておいたほうがよいです。
んで。コストの話も「作成にかかる金額」だけではなく、場合によっては*4「納品にかかる工数」「運用とか保守とか引き継ぎとかまで見込んだ工数」まで見込んでおかないと、色々と面倒が厄介です。

あと、もう一つ。
・技術的に可能だし本人にそのスキルや知識もあるし
・お金も出る
んだけど
・作業者当人のタスクがパッツンパッツンで、今は手がでない
ケース、なんていうのもあるので注意。端的には「締め切り」ですね。
どっかでチームでやっていて上にPMさんがいれば大丈夫………だと思いたいのですが、例外的に「適切なマネジメントが十分に行われていたか? という観点に幾分の疑問があり*5、あんまり*6大丈夫ではなかった」事例が、ごくわずかに、誤差程度ですが、全く皆無とも言えない状況で*7
そんな時には、自衛手段として「自分のタスク量は自分で管理する」事が必要なケースも、無いわけではないのです。

いやまぁ「納品が10年先でよい」んならまた色々と考えてみてもよいんでしょうが*8
速度が割と大きく重視されるIT業界において、そこまで締め切りが延ばせるか? ってのは、なかなかに微妙なので*9

その辺を考えると
・締め切り日
・「そのタスクをアサインする人」の現在のタスク状況
ってのも、割と重要なんですよ。

その辺をすっ飛ばすと
営業「出来ますか?」
技術「(技術的には)出来ますよ(大体一ヶ月くらいかなぁ……」
 一週間後
営業「出来てますか?」
とかいう、やっぱりお互い幸せにはなれなさそうな会話が、ですね、えぇ。

ちなみに、こーゆーケースがあるのでおいちゃんがよく使うのは
「技術的には可能です。あとは工数(=追加金額)と納期(と、忙しかったら他のタスクとの兼ね合い)とのご相談ですかねぇ」
ってな感じのお話。それ以降は、営業さんがいればそっちにふったり、自分が営業も兼ねてるんならご予算と納期のお話に移ったり。

「技術的には可能です」だけだと「じゃぁナニが足りないんだろ?」ってのが伝わらなかったりするので、「お金と期間」って言う話をちゃんと明示するのがポイント、ですかねぇ。

なお、時々「技術的には可能なんですよね?」で妙に言質を取ろうとする営業さんが、少なくとも昔は「いた」ので。
「技術的には可能ですがお金と納期は別問題なんで言及していませんので具体的に実装をするのであればまずお金と納期の話を片付けましょう」までを、息継ぎ無しで*10一気にぶち込みましょう。

この辺。
「火傷をしてから覚える」でもよいんですが、火傷が時々、深達性II度熱傷とかIII度熱傷とかまで行くと色々とシャレにならないので。

*1:これ以外であったら突っ込んでください速攻で記事修正しますw

*2:エクサバイト………流石にまだ見た事がないですなぁこの単位w

*3:本当に可能か?? 処理内容にもよるだろうけど

*4:つまり、割と多くのケースにおいて

*5:つまり「出来ていない」

*6:物凄く

*7:つまり「しょっちゅう」

*8:内容次第だよねぇ、ってのはおいといて

*9:なお、おいちゃんは一度だけ「締め切り日が過去に設定された」事がありましてね………

*10:いや息継ぎしていいんだけどさ