プログラマーとSEの違いを知っていますか?! 一緒の職場にいるけど『やること』が違います。

仕事・働き方
スポンサーリンク

小学校でもプログラミングの授業が始まるそうですね。IT業界は空前の人材不足です。これからもプログラマーやシステムエンジニア(SE)の募集は増え続けると思います。

プログラマーとSEって同じ職場で働いているので違いが分からない人が多いんです。中小SIer会社(システム構築会社)の経営者も良くわかっていないことがあります。SEとプログラマーは求められる役割が、違うんです。そうすると必要なスキルが全然、違います。

客先常駐で開発をしている人はほとんどがプログラマーです。良くても上級プログラマー。SEではありません。

中小、零細SIer会社に所属してSEと名乗っている人のうち、半数以上がSE作業が出来ないのが現実です。

冒頭にもお話しましたが、IT業界は空前の人材不足。プログラマーやSEとして就職するのは簡単です。『未経験者OK』などの求人もあります。「プログラマーやSEになりたい」と思うのであれば、プログラマーとSEの違いを知っておくと良いと思います。

客先常駐で開発をしている中小、零細SIer会社の経営者もプログラマーとSEの違いを知りません。現役でIT業界で働いている私が、プログラマーとSEの違いを解説します。

プログラマーとSEの違い

プログラマーもSEも同じプロジェクトで一緒に仕事をしています。なので混同してしまうのも理解できます。ちなみに

プロジェクトとは
一つのシステムを開発するときに立ち上げ、納品するまで一緒に仕事をするメンバーの集まりです。

プロジェクトは、ひとつのシステムを構築すると解散し、また違うシステムを構築するときにメンバーを募集して立ち上げて行きます。同じメンバーのときもあるし、違うメンバーのときもあります。

そのプロジェクトの中でプログラマーとSEでは役割が違います。

プロジェクト、SE、プログラマーを分かりやすくするために

  • 家を建てる(プロジェクト)
  • 建築士(SE)
  • 大工(プログラマー)

に例えてお話しますね。その方がイメージが湧きやすいと思います。

プロジェクトは『システムを構築する』ことが目的ですが『家(建物)を立てること』と似ています。家の設計図を描くのが建築士、システムの設計書を作るのがSE。実際に家を建てるのは大工さんとか職人さんですよね。システムの構築をする場合に実際にプログラムを組むのがプログラマーなんです。

こうやって例えるとプログラマーがSEになるのって難しいと思いませんか? 大工さんが建築士になるのって難しいですよね? 必要なスキルが違うから。

プログラマーがSEになるのは難しいんですよ。役割が違うので必要なスキルが違いすぎます。そこが分かっていない経営者が多いんですよ。

プロジェクトでの役割

IT業界では、システム構築の仕事があるとプロジェクトを立ち上げ、そのプロジェクトに数人~数百人の人が参加してシステム構築を行います。そのプロジェクトは

  1. 要件定義(SE)
    顧客の要望ヒヤリング、仕様検討。
  2. 見積り(SE)
    システム構築にいくら掛かるか見積もり。
  3. 設計(SE)
    どうやって実現をするか仕様書を書く。
  4. プログラミング(プログラマー)
    仕様を基にプログラムを作る。
  5. テスト(プログラマー)
    仕様通りに動くかをテスト。
  6. 運用テスト(SE)
    顧客の要求通りに動くかテスト。
  7. 納品、本番配置、サポート
    納品して実稼働

の流れで動きます。

家を建てるときも一緒ですよね。

【要件定義】「どんな家を建てたいの?」「じゃあ、こんなコンセプトで建てましょう」

ある程度、お客さんの意見を取り入れつつ、見積りをしますよね。

【見積り】「いくら位で立てることが出来ますよ」

予算とあったら図面を起こします。

【設計】「こんな動線で、こんな間取りにすれば」(図面を書きます)

図面が出来たら、家を建て始めます。

【プログラミング】(大工さん)「良し、頑張って建てるぜ」

家が出来たらドアの閉まり具合や水道が出るかなど確認します。

【テスト】(大工さん)「OKだね」

図面通りに出来ているか確認しますよね。

【運用テスト】「OKだね」

完成したらお客さんに引き渡します。

【納品、本番配置、サポート】「完成!!」

本来ならお客さんと建築士はもっと意見を交換したり、苦情を聞き入れたりすると思います。システム構築も一緒です。その辺は端折らせてください(笑)

SEの役割、作業

プロジェクトの大まかな流れは理解でしましたよね。システム構築のプロジェクトは色々な工程があります。その中でSEが活躍するタスクは『要件定義』『見積り』『設計』『運用テスト』『納品』『本番配置』『サポート』。

SEの仕事はどちらかというとお客さん(システムを使う人)に近い作業が多いんです。SEの役割は、どんなシステムを構築すれば、お客さんのやりたいことが実現できるかを考えること。

究極の話をするとSEはプログラミングをどうやって作るかは知らなくても良い。もちろんプログラミングの知識があった方が良いんですが、なくても大丈夫なんです。

SEは構築するシステムが最終的にどう動くかを決めて(設計して)最後にその設計通りに動くかを確認し、納品することが主な作業になります。

プログラマーの役割、作業

プロジェクトでプログラマーが活躍するタスクは『プログラミング』『テスト』です。

SEの中には、プログラミングを行えるSEもいますが、プログラマーで要件定義(どんなシステムを構築して欲しいかをヒヤリング)したり、見積りをしたり、設計ができるプログラマーは少ない。

そうですよね。プログラマーとSEの役割が違いすぎるのでプログラマーとして働いていてもSEの作業については学べません、本気で「SEになりたい」と思うならプログラマーとして働きながらSEの作業について勉強しなければいけません。

でも、多くのプログラマーは、プログラミングの勉強をすることが自己啓発だと思っています。SEの作業について勉強をしないんです。

プログラミングの技術は3年もしたら、新しい技術に置き換わってしまいます。プログラマーはプログラミングの技術について行くだけで大変なんです。設計思想などを勉強している時間がない。

プログラマーとして新しい勉強をしないと今の作業が出来なくなってしまうから。

得意分野、得意システムも違う

因みにですが、SEもプログラマーも得意なシステムや分野が違います。

大きなビルの設計が得意な建築士もいるし、木造一軒家の設計が得意な建築士もいますよね。それと一緒でSEやプログラマーも得意分野が違います。この事実を知らない人が多いんですよね。

電子レンジのプログラムを作ることが得意なプログラマーやSEはスマホのプログラムは分からないんです。逆もそうです。ホームページを作っている人が、Wi-Fiのプログラムを組める訳がないんですよ。

違いを知らない経営者も多い

プログラマーとSEは、同じプロジェクトで働いていますがやることが全然違うのが分かってもらえたでしょうか?

特に大手のSIer会社はSE作業と営業だけを専門にしていることが多く、中小SIerは下請け、孫請けの作業なのでプログラマーの作業がメインなんです。中小SIer会社で”SE”を名乗っている人の大半はSEじゃない理由はココにあります。

中小SIer会社でSEを名乗っている人は実際に要件定義や見積りをしたことがありません

そんなエセSEはたくさんいます。そんな人たちは見積りはしたことあると言いますが、作業量の見積りであってシステム全体の見積りはしたことがない。「設計をしてるし」と言うけれどシステム全体の設計ではなくて機能の設計しかしたことがないんです。

実際にプログラマーを何十年やろうがSEにはなれないんです。プログラマーがSEになるには、それなりに勉強や経験が必要になります。

プログラマーからSEへの転身

SEとしてシステムを構築する手段を設計できるプログラマーなんて少ない。本来なら会社がお金を使ってでも教育をしなければ育つハズありませんよね?

大工さんが家の設計図を描けるようになるために「たくさん家を建てています」ではムリなのと一緒なんです。でも、IT業界の経営者の多くはソレを理解していない。

中にはセンスが良く出来るようになるプログラマーをいます。でも多くの人はプログラマーとして仕事をしていてもSEの仕事ができるようにはなりません。プログラマーがSEに転身するためには、それなりに学ばなければいけないんです。

プログラマーがSEに転身するのは、大工さんが建築士になるくらい難しいんです。

SIer会社には気をつけて

IT業界で『未経験者OK』と求人している会社の多くは、中小SIer会社が多い。客先常駐で開発を行っているような下請け、孫請けのSIer会社だと思います。

そんな会社の経営者は、就活の面接などで

最初はプログラマーとしてプロジェクトの流れを理解し、将来はSEとして活躍して欲しい

とあまい考えを伝えてきます。実際そのための教育をしている会社は少ない。その会社の従業員は、ほとんどが客先常駐をしているのでSE教育なんて出来ないんですよね。

客先常駐で『IT土方』

そんな会社で客先常駐を行っているとSEになるためのスキルを身に付けることは出来ません。なぜならSE作業は大手SIer会社が行い、プログラマーとして派遣されるから。

いくつになっても、プログラマーとして働くことになります。中小SIer会社でプログラマーとして働くと高確率で『IT土方』と呼ばれる一生こき使われるプログラマーになってしまいます。先ほど話したプロジェクトの流れを見てもらえると分かりますがプログラマーよりSEの方が作業量も多く、SEの方がスキルを求められます。そうすると必然的にプログラマーよりSEの方が給料も良くなります。

中小SIer会社にプログラマーとして就職すると普通に仕事をしている限り、一生SEにはなれません

実際に50歳を過ぎてもプログラマーとして働いている人たちも多い。残業をしてプログラミングしている、いわゆる『IT土方』です。本来なら年功序列でSEやその上のプロジェクトマネージャーに昇進しないといけない年齢でもプログラマーとして働き続けるしかない。

スキルを磨き、転職or転身

プログラミングスキルを高め、プログラマーとして生きて行くのもアリです。アメリカやヨーロッパはSEだけではなく、プログラマーにも、たくさんの賃金が払われています。外資系のSIer会社やスタートアップ企業などは、SEが上プログラマーが下という上下関係はありません。

プログラマーの地位が築き上げられているからです。でも、多くの日本の中小SIer会社は、客先常駐を行う下請け、孫請け会社が多い。そうするとSEとプログラマーの賃金はSEの方が多く、プログラマーが少なくなっています。

たくさんの給料が欲しいのであれば、プログラミングスキルを高め、外資系やスタートアップを得意としている会社に転職をするか、SEとしての知識を身に付けなければなりません。

中小SIer会社には優秀な技術者は残らない

IT業界は他の業界より転職に対するネガティブなイメージが少ないんです。さらに業界全体として人材不足です。出来るプログラマーはSEとして転身したり、良い条件の会社に転職をします。

そりゃそうですよね。同じ作業をするのであれば給料が良い方が良いに決まっています。また、中小SIer会社ではSEとして活躍する場がありません。

中小SIer企業は歴史がある会社でも従業員の年齢が若い理由は、出来るようになった人から辞めてしまうからなんです。ひと昔前のように”会社のために”なんて働く人が少ない。特に中小SIer会社は下請け、孫請けの作業が多く、出来る人からしたら面白くないですよね。

IT業界ではさらに人材が不足すると予想されています。そうすると中小SIer会社はどんどん倒産するのではないでしょうか? 意識の低いプログラマーだけしか残らないのでは未来はありませんよね。

プログラマーが一生『IT土方』にならないためにもSEへの転身、転職が必要になのではないでしょうか。

最後までお読みくださりありがとうございます。
この記事が気に入っていただけたらシェアしてくれると嬉しいです。

ひらめをフォローする
スポンサーリンク
第18研究室

コメント

タイトルとURLをコピーしました