受託開発に未来はない?
私は1年以上、エンタープライズの世界(企業向けSIとか)から離れ、ずっとGoogle App Engineをやっています。今は、Google App Engine + Webkitベースのブラウザで動くHTML5を使ったグローバルな新サービスを提供しようとしていて、新規事業立ち上げのために日々奮闘しているので、エンタープライズな世界に戻ってくることは、基本無いでしょう。
私は、受託開発に未来はないと思っているので、自分でサービスを提供する側に回ろうとしているわけです。受託開発に未来はないといっても、文字通り未来はないという意味で、すぐになくなるわけではないし、生きてくために必要な部分も多々あると思います(うちの会社もSIerだし)が、今後は撤退すべきだろうという判断です。
受託開発になぜ未来がないかというと、世の中の動きがかなり速くなっているので、その中で素早くチャンスを捕まえたものが生き残ると思うからです。受動的に待ってるだけじゃ、じり貧なだけ。受託開発は、受動的なビジネスなので、生き残っていけないだろうということです。
生き残るためには、素早く動いたほうがいい。過去の延長で、なんとなく生きているのが、今は、最もリスクが高いと思う。
これは、個人にも企業にも言えます。
後、サービスは最初からグローバルな市場を狙ったほうがいい(これは受託には直接関係ないけど)。Smart Phoneがメインなので余計そう感じるんだろうけど、国内だけじゃマーケットが小さい。最初は国内からからはじめ、成功したら海外と考えがち(自分もそう)だけど、多くの場合、甘えであることが多いので、最初から覚悟を決めてグローバルな市場を狙うべき。
もちろん、これは私の個人的な感覚で、押し付ける気持ちはありません。
エンタープライズな世界にかかわらないといっても、Seasar2は別。既存ユーザーが安心して使っていただけるように今後もメンテナンスし続けます。
Seasar3の開発が中止になり、Seasar2.5の企画もSeasar-dev MLでの話し合いによりなくなったので、Seasar2.4は最終版として安心してお使いください。
慣れって生産性を向上させるのには、かなり重要です。Seasar2に慣れている開発者の方は、慣れをさらに重ねることで生産性を向上させることができます。
はっきりいって、エンタープライズJavaの世界で、Seasar2(+それを取り巻くフレームワーク群)以外の部分は、多少進化しているでしょうが、Seasar2と比べて生産性が著しく高いというものは殆ど無いでしょう。
新たな機能/仕様というのは、きちんと使いこなせるようになるまで時間がかかるし、慣れてないので、一時的に生産性が落ちるリスクもあります。
エンタープライズJavaの世界は、ほとんど動きのない世界なので、果敢にチャレンジしてもメリットよりリスクが大きく、慣れを重視したほうがいいということです。
今後どうしても受託をやるならforce.comのような少数精鋭で付加価値をつけられるようなやり方がいいと思います。仕様を決める人がその場でプログラミングをして組み立てていく感じ。
大量に人を投入し、上流下流にわけて分業するようなSIは不幸を増やすだけ。下請けは不幸になりがちだし、大手SIerは一時的に儲かるかもしれないけど、技術力もなく、あいまいな仕様しか決められず、人に作業を振るだけのだめ社員だけになって会社が先細ってしまいます。