SEの種類(職業SEと技術SE)

SE(プログラマー含む)は、大きく「職業SE」と「技術SE」の二つに分類できる。
但し、人によってどちら寄りかのバランスは異なる。
特に職業SEは、PCが普及した昨今、SE全体での比率として急増している。
昔(PC黎明期)にも居たとは思うが、希少な存在であったと推測する。
逆に言えば、SEという職業が市民権を得たということだろう。
さて、各SEの特徴は、私個人の経験を踏まえると、以下の通りである。

職業SE 観点 技術SE
この世にあまた存在する職種から、SEを選択した。 職種の選択動機 コンピュータ好きが高じて、その延長としてSEという職種を選択した。
コンピュータに関する知識は乏しい。 初期の技術知識 コンピュータに関する知識は豊富。
(ソフトウェアからハードウェアまで)
目標に対して真っ直ぐ突き進む
(目的は仕事の完遂、技術はその手段)
仕事への取り組み 技術スキル習得を優先する。
(目的は技術の習得、仕事は技術実践の場)
社交的な人が比較的多い。
考え方が柔軟。
性 格 内向的な人が多い。
凝り性または完璧主義。
大企業IT系向き
(型にハマった仕事)
適合する作業環境 ベンチャーIT系向き
(型にハマらない、新規性の強いもの)
評価は高い。 仕事上の評価 評価は低い。
コード量は多いものの、作業時間は比較的短い。 生産性(コード量) コード量は少ないが、作業時間が掛かる。
他のメンバーを巻き込んで問題解決に当たる。 問題発生時の対応 自分で抱え込む傾向にある。
備 考 プライドが高い傾向にある。

この記事は、どちらかを肯定または否定するためのものではない。
例えるなら「絵」に似ているだろう。
職業SEは「漫画」であり、必要最低限の線で、短期間に多くの絵を描く必要がる。
一方の技術SEは「絵画」であり、1枚の絵に対して魂と技術をつぎ込み、自分自身を表現するのだ。
つまり「絵」の特性に応じて、最適な表現方法(描き方)は異なる。
そういう意味で、どちらのSEもそれぞれに正しい。
なお、私自身は「技術SE」に偏っていると自覚している。

IT技術熟練度レベル

IT技術スキルに関して、熟練度を以下の7段階(レベル0~6)に定義する。
主としてプログラミングに関する理解度を対象とする。
また、レベル上位はレベル下位の基準を包括する。

レベル 俗称または別名 基準
0 赤ちゃん 知識の無い状態。技術そのものの存在を知らない。
1 頭でっかち 技術の存在を知っている。
概要は分かるが、実装は行えない。
2 初心者(入門者) サンプルコードやインターネットを用いて、簡単な実装が可能。
知識は都度インターネット検索、書籍に頼る。
3 門下生(修行者) 既存のコードを基にして、仕様通り(必要最低限)にコードが書ける。
知識は主要な命令またはコマンドに偏っている。
4 師範(指南役) 主要な命令を用いて、自力で1からコードが書ける。
また他人のコードから問題点を指摘できる。
その技術特有の知識を理解できる。
5 達人 技術の特性を理解した最適(※)な実装が可能。
※最適とは、実行速度の向上、コード量の軽減を表す。
知識は全ての命令を網羅しており、その技術に関する講演・執筆が可能。
6 技術の端々まで熟知している。
また、命令の機能拡張や創出、言語仕様の策定等、その技術の根幹に多大な影響を与える存在。