Java: The Good Parts

Java: The Good Parts

Java: The Good Parts

Javaを使って開発している。何度書いても納得しないことがある。システム開発において他人の作った負債ともいえるようなコードに悩まされ、自分はそういう負債を残したくないと思うのであれば、本書などを読んでみるといいと思いました。
 
ここから、本の話と全く関係ない話になりますが。。。
私も一応システム開発の仕事に従事しています。受託開発、いわゆるSIをずっとしています。Javaを積極的に自分から組織の中で、率先して使っていたというよりも、Javaしか選択肢がだんだんなくなってきたという環境で使いはじめています。Struts1系が出たころあたりから、ずっとWEBサイト開発というとほとんどJavaでやっていました。*1
10年ぐらいこの業界で仕事をしていて思うのは、SIはそれほど儲からないなあということ。人月で作業させられているというのもありますしね。もちろん全ての案件で儲からないかというと、そういう訳ではないんですが。*2
まあ、ローリスクかどうかはおいておいてリターンも低いです。案件がずっと続いていかないと厳しいというのもあります。
それに引き換えシステムを使って、何かしらのサービスを提供する側であれば、それに関わるリスクはサービスごとに違いますがリターンは成功すれば、人月換算どころではないでしょう。
エンジニアは、コードの美しさ、開発プロセス、きれいな設計に憧れるし、それがいい仕事で、そこを評価されたいと考えます。しかし、SIなどの受託案件だとその理想どおりじゃないことが多くなります。勿論全てがそうではないですが、プログラマ、エンジニアの悲哀は大体その辺に集約されます。
受託開発の職業プログラマは大なり、小なりそういった経験をしたことがあると思います。続けていくか、離れるか色々と意見があるかと思いますが、ビジネスとして成功する。先んじて成功するのであれば、昔からあるような業界、職種にいくよりは、これから伸びそうな分野にチャレンジして行く事の方が、特に若い人にとっては一般的にリターンは大きいと思います。
市場が大きくなったときに最初から関わっていた方が、優位性は保てそうです。もちろん会社が成長するなんていうタイミングでも、成長前からその会社にいれば、経験としてはたくさん積めるとも思います。
いずれにしろ、どんな分野でも成熟した環境の場所に行っても、伸びるチャンスというのはそれほどでもないのかもしれません。仮に、エンジニアにとって、理想的な仕事が達成できたとしても、それとビジネスとして成功するかは、また別の話なのかもしれません。
 
しかしながら、美しいコード、理想的な開発プロセスを踏んだ経験が別の場所で花が開くということもあるので、賢明な個人は、たとえひどい状況になっても、諦めずに何かしらアウトプットを残す努力をしていれば、次回以降か、遠い先にその経験が活かされるかもしれません。
 
最後に、エンジニアの需要が今後増えそうな分野として、今後は全体的にエンタープライズ系のWEBサイト開発を、SI企業に発注するというのは減っていき、徐々に自社で内製化する動きが出てくると思います。すぐになるかどうかは分かりませんが、その代わりソーシャルサイトなどに、アプリを作りたい。ゲームを作りたいなどという仕事は逆に増えて行くのではないかと思っています。今の若い人達は、その辺に目を付けてナレッジをためてみてはどうかなと思ったりします。

*1:最初に業界に入ったときは、WEBアプリというと、社内用の掲示板サイトなどをPerlで書かれたものを、入れて、設定したり、修正したりすることをやらされていました。2000年前後でしょうか。当時は、まだ自分が入っていた会社も、業務系のクラサバ系の案件がほとんどでした。

*2:業務系のシステム開発していたころ2000年からの数年は、SIでナレッジをためて、ソフトをパッケージ化して販売するとか、そういう会社が多かったと思います。今もそうなのかもしれませんが、業務系アプリなどは。