コの業界のあり方とか

昨日は、大学時代のひろき(まつ)とtaka hiroと秋葉原で飲んでました。秋葉原の店の閉まりの早さにびっくり!10時ラストオーダーとかが多くて、二次会の店を探すのが大変でした。

で、三人ともいわゆるコの(SIer)業界にいるので、自然と仕事の話も出ます。今日は、私とtaka hiroの間で白熱したことを、自分なりに考えてみようかと。


> 私の個人的な意見としては、一部の人(例えばアーキテクト)だけ、
> フレームワーク全体を把握していて、残りのメンバーは
>「限定されたことだけやっとけ」みたいなことは好きではありません。
大規模だと好き嫌いに関わらずこういったアプローチになるのでは?
アーキテクト以外の学習コストはむしろ減ると思いますが…

2008-02-15 - Hyper Great Creator やすを

taka hiroはまさにこういう考え方。勤めている会社が大手SIerの一角を担っているので、役割的にもそのような考えが求められているのでしょう。

きっとこのコメントを書いてくれた人は、本気でこう考えているんだと思いますが、私は、このようなアプローチが嫌いというだけではなく、効率が悪いと思っています。

一番の理由は、開発者のモチベーション。「限定されたことだけやっとけ」という状況で、開発者のモチベーションが上がるとは思えません。実際、モチベーションは下がるでしょうから、それにあわせて、生産性も落ちるでしょう。

二番目の理由は、開発者が成長しないこと。開発者というのは、いろんなプロジェクトに参加し、いろんな経験をつみながら成長していくものです。それが、いつも、「限定されたことだけやっとけ」では、成長していくことができません。

2008-02-15 - Hyper Great Creator やすを

私はひがさんと同じ意見。上記に加えて、(スキルが著しく低い人を含めて)万人が同じように作業できるフレームワークを作ることは、コスト的に見て非現実的ではないかと考えているのもあります。そんな夢のようなフレームワークを作る労力で、もっと有用なものが作れるのではと。

ですが、それらだけでは反対意見に対して弱いなというのも感じています。「モチベーション」とか「開発者が成長しない」とか、心情的には理解できるのですが、それで(技術が分からない)マネージメント層を説得できるかというと微妙な気が。それよりは、「誰でも同じように作業できるフレームワークを作って、実際の開発者は限定されたことだけやればいいようにして交換可能としておき、開発者一人当たりの単価を下げる」というのが分かりやすいのも確かだと思います。

実際には、モチベーションとか開発者の成長とかを考慮していないと、(短期的にはよくとも)長期的に立ち行かなくなっていくものだと思っています。が、それを定量的に示せといわれると、難しい話。


つまるところ、目指している世界が違うという意見には落ち着いたのですが。

taka hiroは、スキルが低い人でも均一的に作業をこなせる世界。それに対して、私は(ある程度の)スキルを持った人たちが集中して作業をこなしていく世界。

taka hiro:プログラムなんて、誰がやっても同じ(な世界を作れる)よね。
私:いや、誰がやっても同じなんてあり得ないし、(例えばフレームワークで)その世界を強制しようというのは非現実的だよ。

という会話に、お互いが目指している世界の違いが凝縮されています。

もちろん、両極端でもやっていけないので、どこかに落としどころはあるはずです。それを探りながら…といったところでしょうか。


居酒屋で話したこと・感じたことをつらつら書いていたら、いつも通りとりとめもない話になってしまいましたと…。