技術はシステムエンジニアとプログラマを一体化するほうに進化する
設計書だけ書いてプログラムを書けないSEはいらない、という話がよくあります。
その是非はともかくとして、ドッグイヤーのIT業界はSEとPGを統合する方向に技術は進化しています、って話です。
知っていますか?
昔は、プログラムといえば、パンチカードに穴をあけてやっていたらしいです。僕は知らないですが。
それが進化して、アセンブリでプログラムできるようになったらしいです。CPUのレジスタAの値をレジスタBからコピーしてレジスタBの値をクリアする、みたいな頭痛いプログラムをガリガリ書いたとか。
さらに、「高級言語」のCが登場して、コンパイラを前提にした効率的なプログラムが可能に。構造体も出現。
さらに、C++でクラスが出現。
さらに、C#とかJavaでガベージコレクションなどが当たり前に。
さらに、特定の開発に特化したフレームワークができてきて、開発スピードがぐんとアップしました。
ここで次の2つの作業があったとします。
(1)こんなシステムを作りたい、それを資料に書く(SEの仕事)
(2)資料に書かれた内容からプログラムする(PGの仕事)
昔は、
(1)SEの作業が10だとしたら、
(2)PGの作業は100ぐらいあったんですよ。きっと。
なので、システムエンジニアとプログラマを分けて作業するのが効率的だった。
今は、たぶん、
(1)SEの作業が10のまま、
(2)PGの作業だけが20-30ぐらいまでに減ってしまった。
その結果、プログラマがいらなくなった!のではなく、(1)と(2)の作業を分けないで、1つの作業として、もうそのままプログラムしたほうが早いのでね?となったようです。
(1)SEの作業に1人、(2)PGの作業に3人雇うよりも、
(1)(2)合わせて3人雇う(設計書はいらん)
そのほうが効率的なプロジェクトが増えたのだと思います。
たぶん、PGとSEを一体化したほうがいいかの判断は、業界、開発の規模、使用する開発環境にもよると思います。
でも、ここで重要なことは、この技術の進化はまだ当分続くだろう、と思われることです。
今の状況がすぐに変わることはないと思いますが、長くこの業界で働こうという方は気を付けたほうが良さげです。