更新日:
SE(システムエンジニア)は、IT業界で非常に人気の高い職種です。しかし、実際にこの仕事を目指そうと考えたとき、具体的な役割や作業内容を知らないという人は、意外に多いのではないかと思います。また、「そもそもシステムって何だろう?」と疑問を抱くこともあるでしょう。
そこでこのガイドでは、多くの人が憧れるSE(システムエンジニア)について、その定義や仕事内容、なり方、必要資格などを解説していきます。
SE(システムエンジニア)とは?
SEとは、システム開発に欠かせない仕様書や設計書の作成や、開発、テストなどをおこなう職種です。ここでいうシステムとは、コンピュータで制御される以下のような仕組みの総称となります。
≒ 銀行ATM
≒ 自動改札
≒ 医療機器
≒ 工場内の生産設備 など
SEが携わる分野には、ATMのように、一般ユーザを対象とした暮らしに欠かせないものから、生産設備や顧客感知といった、企業内で使用される業務系まで幅広い種類があります。また、業務系以外にもWebシステム開発もSEの仕事範囲に含まれます(Webシステム開発に関わる人材は、Webエンジニアと呼ばれることもあります)。
SE(システムエンジニア)とプログラマーは同じ職種?
システム開発にも携わるプログラマー(PG)は、SEと混同されやすい職種です。ですが、この両者の担当業務には、大きな違いがあります。
プログラマーの仕事内容は、SEがつくった仕様書や設計書をもとに、特定の言語を使ってプログラムを書く「製造の作業」になります。そして開発分野では、設計などをおこなうSEの作業領域を上流工程、プログラマー側を下流工程と呼びます。
ただし、少人数で開発をする小規模プロジェクトでは、SEもプログラミングや管理業務まで幅広い仕事に携わる場合があります。
SE(システムエンジニア)の仕事内容
SEは、以下のようにシステム開発の幅広い工程に携わります。
要件定義
お客様の悩みや現状の問題を聞き、どのようなシステムをつくったら良いかを具体化する作業です。ここでシステム開発に必要な動作環境や人員数、費用、作業期間などを算出し、お客様に出す見積もりを完成させます。そして合意を得たあと、本格的な開発に入っていきます。
基本設計
お客様が求める以下の事項を、設計書にまとめる作業です。そうすることで、「どのような機能を持つシステムをつくるべきか?」という概要が明確になります。
≒ 画面
≒ 機能
≒ 帳票
≒ 他システムとの連携 など
たとえば、企業のヘルプデスクで使うCRMシステムの開発では、お客様の情報を蓄積する基本機能の他に、作業履歴や購買履歴といった他部署のシステムとのデータ連携を求められる場合もあります。また、基本設計では、入力画面の必要項目や帳票レイアウトなども決めていきます。
詳細設計
入力時のボタン操作やデータ連携の基本設計ができたら、それらを実現するためにコンピュータ側で必要な処理や具体的な仕組みを考えていきます。たとえば、先述のCRMシステムの入力画面で、更新ボタンを押したときに動くプログラムの指示内容を決めるのも、詳細設計の作業です。そしてプログラマーは、SEがつくった設計書や仕様書をもとに、プログラミングを進めていきます。
テスト
プログラマーによる製造作業が終わったら、完成したパーツ単体や結合、実際の運用に合ったテストを進めていきます。テストによってバグと呼ばれる欠陥が見つかったり、予想どおりに処理が進まなかったりする問題に気付いたときには、プログラムの修正が必要です。
この一連の作業をデバッグと呼びます。修正箇所が少ない場合は、プログラマーにフィードバックをせずにSE自身が修正作業をすることもあります。
保守運用
完成したシステムの定期メンテナンスやトラブル対応も、場合によってはSEが担当することがあります。たとえば、消費税率変更や法改正が決まった場合は、その開始時期に合わせてプログラム修正やマスタ設定などの準備もしなければなりません。
ですから、お客様に長く使っていただくシステムをつくった場合、開発完了ですべてが終わりではなく、時代のニーズに合った修正や仕様変更が求められるわけです。
こちらもチェック:
システムエンジニアの平均年収はどれくらい?年収アップの方法を解説
SE(システムエンジニア)になるには?
未経験者がSEを目指す場合は、以下のいずれかの道のりを選択するのが一般的です。
プログラマーからSEを目指す
システム開発全体に携わるSEには、プログラミングのスキル・知識が不可欠です。そのため、大手のシステム開発会社では、新卒で1~2年程度のプログラマー経験を積んだあと、少しずつ上流工程の仕事を覚えてSEにステップアップしていくのが一般的となります。
したがって、新卒からSEを目指す人は、学生時代に理系学部などでプログラミング経験を積んでおいたほうが、IT企業への就職も有利になるでしょう。
未経験者歓迎の求人に応募する
プログラミング経験のない転職者の場合は、未経験者OKかつ研修が充実している企業に応募するのがおすすめです。こうした求人では、学歴不問の会社も多い傾向があります。
この道のりを選択すると、働きながらシステム開発の基礎知識やプログラミングなどを覚えられます。未経験者歓迎求人で採用してもらうには、新しいことへの挑戦やIT知識などを覚える積極性をアピールするといいでしょう。
SE(システムエンジニア)に必要な資格はある?
SEは、資格がなくても従事できる職種です。しかし、システム開発の現場でキャリアアップをするには、在学中や仕事をしながら以下のような資格を取得していくのが理想となります。
基本情報技術者試験
IT業界の登竜門ともいえる国家資格です。2019年の実績では、学生・社会人ともに25%弱の人が合格しています。ソフトウェア設計やプロジェクトマネジメントといったシステム開発に役立つ領域の他に、ネットワークやデータベースなどからの出題もあります。
これからSEになるためにIT業界の全体像をつかむうえでも、非常に役立つ内容の試験となるでしょう。
応用情報技術者試験
基本情報技術者試験の上位に位置づけられる資格です。試験は午前、午後の二部制になっています。
午前 | 午後 | |
試験時間 | 9:30~12:00(150分) | 13:00~15:30(150分) |
出題形式 | 多肢選択式(四肢択一) | 記述式 |
出題数 解答数 |
出題数:80問 解答数:80問 |
出題数:11問 解答数:5問 |
出典:IPA 独立行政法人 情報処理推進機構:制度の概要:応用情報技術者試験
午前の問題では、以下のように非常に本格的な内容が出題されます。
≒ テクノロジ系:IT技術に関する幅広い知識(計算問題が出ることもある)
≒ マネジメント系:プロジェクトやサービスのマネジメント、システム監査
≒ ストラテジ系:システム企画や戦略、法務
また、応用情報技術者試験の場合、午後の問題が記述式であるところも大きな特徴です。
システムアーキテクト試験
高度IT人材として確立した専門知識や、情報システムの開発を主導できる能力を認定する試験です。この試験では、SEの仕事内容である要件定義や基本設計、システムテストなどの知識も問われます。
また、保守運用やシステム企画、要件定義については、記述式や論述式の問題になる可能性もありますので、自分の携わる仕事について客観的に説明できるだけの経験やスキルが求められることでしょう。
オラクルマスター
Oracle Databaseシリーズを扱うエンジニア向けの認定資格です。開発元である日本オラクル社が運営しています。以下4つのランクがあり、Silver以上は世界共通基準のオラクル資格との連携も取れるようになっています。
1. ORACLE MASTER Bronze
2. ORACLE MASTER Silver
3. ORACLE MASTER Gold
4. ORACLE MASTER Platinum
他システムとのデータ連携などをおこなう機会の多い人は、オラクルマスターのようなデータベース専門資格を持っていたほうが、要件定義や詳細設計などの作業も進めやすくなると思います。
また、オラクルマスターのプラチナを取得すれば、SEからデータベースエンジニアへのキャリアアップも進めやすくなるでしょう。
プロジェクトマネージャ試験
開発プロジェクト全体の意思決定を実行し、QCD(品質・費用・納期)に全責任を持つプロジェクトマネージャー向けの試験です。IPA(情報処理推進機構)の国家資格のなかで最も難易度の高いスキルレベル4に設定されています。
試験は、午前Ⅰ・Ⅱ、午後Ⅰ・Ⅱの4部構成となっており、後半は記述式と論述式での出題になりますので、知識や経験があっても、文章力が低ければ合格は難しいです。
ですから、過去問題などを通して、小論文の練習もおこなうようにしてください。
こちらもチェック:
システムエンジニアが取得しておきたい資格とは?勉強方法も解説
まとめ
SE(システムエンジニア)は、システム開発における設計などの上流工程の仕事を担当する職種です。SEになるには、プログラマーから徐々にステップアップするか、未経験者歓迎の求人に応募するなどの道のりがあります。
また、SEから上位職種へのキャリアアップを予定する人は、転職にも役立つ資格取得にもぜひ挑戦してみてください。