たとえるなら
家づくりでいう「設計士」に近い役割です。お客さまの「こんな家に住みたい」という要望を聞き取り、図面(設計書)にまとめて、実際に建てる大工さん(プログラマー)に引き渡します。
もう少しくわしく
SE(エスイー)はシステムエンジニアの略で、お客さまの要望を聞き取り、システムの設計をまとめる技術者を指すことが多い言葉です。英語圏ではあまり通じない、主に日本で定着した呼び名です。プログラムを書く作業そのものよりも、「何を作るべきか」を決めて文書にまとめる仕事が中心になります。
具体的には、お客さまへの聞き取り(要件定義)、システムの構成や画面の設計、開発チームへの指示、テストの計画づくり、進み具合の管理などを担います。技術の知識に加えて、相手の話を整理して文書にする力や、調整ごとをまとめる力が問われる仕事です。
注意したいのは、この言葉の意味が会社によってかなり違うことです。設計専門の人をSEと呼ぶ会社もあれば、プログラムも書く技術者全般をSEと呼ぶ会社もあります。就職や転職で「SE募集」という求人を見たら、名前だけで判断せず、実際の仕事内容(設計中心なのか、開発も含むのか)を必ず確認しましょう。
現場での使われ方
「この案件はSEが2名、プログラマーが3名の体制です」
設計や顧客対応を担当する人と、プログラムを書く人を分けて数えた、チーム構成の説明です。
「まずはSEに要件を整理してもらおう」
お客さまの要望をシステムの言葉に翻訳して文書にまとめる作業を、SEに依頼する場面です。
よくある質問
SEとプログラマーはどちらが上ですか?
上下関係ではなく役割の違いです。日本では「プログラマーからSEへ」という昇進の順序を採る会社も歴史的に多かったのですが、現在はプログラムを書く専門家としてキャリアを深める道も広く認められています。
SEはプログラミングができなくてもなれますか?
会社によりますが、プログラムの仕組みを知らないと現実的な設計は難しいため、基礎的なプログラミング経験は求められるのが一般的です。書く量が少ない場合でも、読んで理解できる力は必要と考えておきましょう。