プロマネブログ

とあるSIerでプロマネやっているオッサンです。主にシステム開発ネタや仕事ネタ、気になった三面記事ネタの解説なんかしてたりします。

エンジニアも道具にこだわってもいいよ。成果出してくれるなら。

道具に拘るエンジニアはだいたい無能

 

 

おじさん、SIer勤めでプロマネやってるので、この増田の言いたいことはよく分かる。。。

要は、組織として生産性を最大にするためには、エンジニアはどのような点に気をつけるべきか、投資すべきかってことなんだけど。。。

けど、色々書きすぎているせいで、はてブのコメント欄が炎上しちゃっているね。。。

 

せっかくの話題の種なので、整理してみましょうか。。

 

 

さて、この話題に上がっている道具ってのは、要点をまとめると以下のとおり。

 

  • ノートPCやエディタなどツール類、環境
  • テンプレートやデザインパターンなど設計開発技法

かな。

 

それぞれについて考察するとこんな感じになるね。

 

ノートPCやエディタなどツール類、環境

これは、良いに越したことないです。プロジェクトを運営するとわかるけど、テスト時にネットワーク速度が遅くてなかなか画面をいじることができない、なんてことはままあります。

決定的ではないですが、よければ良いだけ確実に生産性を上げることができるファクトです。大規模プロジェクトだったりすると、ツールの良し悪しで1ヶ月ぐらい進捗が変化することもしばしば。

もちろん、最上流の設計(業務設計や仕様設計、機能設計など)を行う設計者にはあまり関係ないです。なので、上流設計者に限ってはあまり役立たないのは確かですけど、それでも用意されているに越したことはないです。

(触ってみて見つかる組織上の問題点が見つかることもあるし、いざ、コードレビューなどが必要になった場合も見やすいし)

 

この手の確実にプラスの影響を与える改善点については、予算が許す限り積極的に導入するようにしてます。

 

テンプレートやデザインパターンなど設計開発技法

おそらく、元記事で本当に言いたいのはこっちじゃないかな。。。

 

テンプレートやデザインパターンなど設計開発技法、あと、よく話題となるのはウォーターフォールアジャイルなどの開発手法、オンプレミスやクラウドなど基板構成など、これらのファクトは、決して新しいものが必ずしも優れていない、ということがよく問題となります。

 

例えば、デザインパターンについて。

設計を行っていると、あるデザインパターンが適応できそう、なんて自体はよくあります。

あまり経験のない若手のエンジニアだったりすると、「今回はデザインパターンを適用して開発コストを下げるようにしたいです」なんていうこともしばしば。。。

でも、その設計は実は他のプロジェクトの設計を頂いたもんなので、よそのソースをちょっくら拝借しようと思ってたんだよね~

コピペなら、リスク低くできることが判明しているし、対応工数も少ないし。

なので、若手のエンジニアの提案は却下することもまあ、ありがちです。

 

この手の話は以下のジョークがしっくりきます。

アメリカのNASAは、宇宙飛行士を最初に宇宙に送り込んだとき、
無重力状態ではボールペンで文字を書くことができないのを発見した。
これではボールペンを持って行っても役に立たない!
NASAの科学者たちはこの問題に立ち向かうべく、10年の歳月と120億ドルの開発費をかけて研究を重ねた。
その結果ついに、無重力でも上下逆にしても水の中でも氷点下でも摂氏300度でも、
どんな状況下でもどんな表面にでも書けるボールペンを開発した!!

一方、ソ連は鉛筆を使った。

 

何を比喩しているかは言わずもがな。

もちろん、素晴らしい技術を否定したりしませんが、ものには適材適所ってのがあります。使うべきタイミングで適切なものを利用するから技術は生きてくるわけです。

といったことで、デザインパターンなどが必要となる、適切な案件下では最新技術をバンバン使って開発するわけです。

 

で、新し目の技術が大好きな

手を動かす作業が早くなることが能力証明所詮コーダーのドカタさんorただの社二病 

 は、適材適所を理解せず、デザインパターンアジャイル、クラウドなんて「道具」に飛びつくわけです。

そいで、飛びついた結果、ろくでもないコード書いて、どうしようもない品質、保守性のものが出来上がるわけで。

 

また、以前別の記事でも似たようなことを書きましたが。。。

日本のエンジニアの地位が低い本当の理由 - プロマネブログ

 

きちんとした設計技術を持っているシステム屋であれば、開発の段階では中国人やベトナム人など、「だれでも作れるレベル」まで開発水準を下げる設計が可能です。

それこそ、シェルが理解できれば十分ですってレベルだったり、デザインパターンナシのベタ書きでも十分なプログラムでも生産性を下げずに済むように開発ができたり、とか。

やっぱり、先を見据えた構想や設計ができると、実際の開発物ははるかに小さく(場合によっては半分以下)できるわけですね。

 

故に元記事のような

道具に拘るのは無能の証

に話がつながるわけです。

 

まあ、プログラミングから設計、プロマネまで色々やってきた身からすると、上記の話は非常に実感できます。

 

 

てなわけで、元記事は感覚的にまあ外れないけど、って感じです。

 

ただ、論点をあまり明確にしちゃうとここまではてブのコメント欄盛り上がらないんだろうな~

 

 

以上