2009年10月27日火曜日

システムエンジニアとは何か

SE(システムエンジニア)という意味は実は曖昧なものです。
昔は、システムの設計者というのが、日本での認識の大勢だったかと思います。
それで、設計はできるがプログラミングはできないというSEも少なくありませんでした。そんなSEには、プログラミングは下々の仕事であるという言い方をする人もよくいたと思います。

私は、プログラミングのある程度の腕前を持たない者が良い設計者になれるとは思っていません。
そこで、SEとは、「設計もできるプログラマ」程度として良いのではないかと思います。
ただし、自分をプログラマだと言う者にだって、設計くらいできる人もいます。

早い話が、技術者としてSEとプログラマの区別なんて実際にはありません。

私が、実感として最も納得しやすいSEの仕事とは「お客様のわがままを聞くこと」です。
これは、企業の業務システムの開発の場合に特に当てはまります。
こういった仕事は技術者のものではなく営業の仕事だと言われるかもしれませんが、それは違います。システム開発の基本を知らない営業がお客様のわがままを聞いてきたら、プロジェクトは必ず破綻します。
理想を言えば、お客様のわがままを聞き、それをうまく調整できてこそ本物の技術者です。だって、お客様があってのシステムですからね。
でも、それはあくまで理想。
そして、システムの開発手法なんて、お客様のわがままの中の不要な部分を取り去るためのものではないかと思うことがあります。