技術的に優秀なプログラマーって(SIerの実務系では)それほど必要ない件

http://d.hatena.ne.jp/fromdusktildawn/20081026/p1
こちらを読んで思い立ったのでメモ。


SIer的な仕事では、たぶんそう。

  • 素晴らしい機能を持った巧緻な、一本のプログラム
  • 凡庸な機能と性能しか持たない、幾つかのツール

最後に残るのはたぶん後者。仕事の仕方は数ヶ月もすると変わってしまうから。
技術的に高度なプログラムを直すには優秀なプログラマーが必要。そして優秀なプログラマーを押さえるのは、まあ無理。普通に無理。


それより、構造も使い方も理解しやすいツールをうまく組み合わせて仕事を回すほうが、柔軟性・残存性が高い。その辺りの線引きを、現場と共に考えられるプログラマーが一番貴重な戦力のはず*1


仕事で使う道具は「単純で丈夫」が一番。
どの技術レベルを単純とするかは色々だろうけれども、大抵の場合はそう。


だからプログラマーの技術力話って、あんまり仕事に絡めて話しちゃいけないと思うんですよね。確かにOSとかフレームワークとか高度なパッケージを作るのには技術力というのは非常に重要なんだけれども、それって割合で言えば全プログラマーの数%でしょう。ほとんどの人はそんな高度な仕事してないはず。いやそういう数字があるか知らないけれど。


もちろん個々人ではより高度なレベルを目指すべきなんだけれども「高度なプログラム能力がないプログラマーは仕事をして行く資格が無い」みたいなのはいやだなあー。なんつーかヒットラーさんみたいで。技術力の最低ラインって、現場ごとにマネージャが引くもんだと思います。


こんな軟弱者な思考をしているとセイラさんにぶたれる「インド人がやってくるぞ」と脅されたりしますが、1億対10億。どっちみち単純な技術力じゃ勝ち目ないし。
彼らの土俵に乗らないよう、たとえば日本人の得意技であると言われている「現場力」とやらに潜り込んでいくしか、日本のプログラマーが生きて行く道がないのかなあ・・・


などと漠然と考えてたら不安になってきたので今宵はここまでに致しとうございます。

*1:この判断を現場を知らない上の人とかコンサルとかコード書けないSEとかがやると現場が死ぬ。プログラマーが現場に潜らないと重要な詳細を取りこぼす。