領域とその種類

多様化するエンジニア Vol.1

#エンジニアブログ

ひと口に「エンジニア」といっても、いろいろな職種があります。ネットワークを担うサーバーエンジニアや、Webサイトに特化したフロントエンドエンジニア、アプリ開発やゲーム開発に特化したゲームエンジニアなど、業界や手掛ける仕事はさまざまです。

 

この記事では前後編の2回にわけて「多様化するエンジニア」をテーマに、日本におけるエンジニアの職種や領域、エンジニアのキャリアパスや選択肢について紹介していきます。前編の今回は、エンジニアの職種の領域を俯瞰的に紹介します。

 

1.システムエンジニア

 

 

システムエンジニアは、コンピューターシステムの開発において、クライアントへの提案・設計・開発・テストに携わるエンジニアです。クライアントの要求を満たすシステムを、予算と納期の範囲内で、優先順位をつけて構築していく能力が求められます。

 

システム開発には多くの人が関わるため、コミュニケーション能力が必要です。要件定義書や設計書などの作成も多く、ロジカルに考える力や、文章力も求められます。また、開発メンバーのスケジュールや予算・納期の管理など、高い総合力を必要とされる職種です。

 

システムエンジニアに関連する資格として「基本情報技術者試験」「応用情報技術者試験」などがあり、クライアントの業界によっては、別途資格が必要になるケースもあります。(会計システムの開発の場合、簿記資格など)

 

2.システムエンジニアからの発展系

 

2-1.プロジェクトマネージャー

プロジェクト全体を管理し、クオリティに対して責任を持つ役職です。システムエンジニアとして経験を積んだエンジニアが、より広範囲のマネジメントを担当する場合、プロジェクトマネージャーと呼ばれる職種になるケースが多いようです。

システムエンジニアとしての経験と、プロジェクト全体を俯瞰する能力、強い責任感が求められます。

2-2.プロジェクトリーダー

プロジェクトの現場業務責任者です。プロジェクトマネージャーがクライアントとの折衝など対外関係全般に責任を持つのに対し、プロジェクトリーダーは現場業務の責任を負います。

会社やプロジェクトの規模によっては、プロジェクトマネージャーとプロジェクトリーダーを兼ねるケースもあります。

2-3.ブリッジSE(ブリッジシステムエンジニア)

ブリッジSEは、国内と海外の開発現場が協業するプロジェクトで橋渡し役となるSEです。国内の人件費高騰やエンジニア不足により、海外の人材を扱って現地で開発する「オフショア開発」が増えており、言語や文化、時差の壁を超えて、プロジェクトを成功に導く役目を担います。

日本と海外では仕事の進め方が異なり、設計書が現地におけるシステム開発の前提知識を省略して作成される場合も多いため、すべてのエンジニアに伝わるよう手を加える必要も出てきます。システムエンジニアとしての能力に加え、言語能力やコミュニケーション能力も必要になる職種です。

2-4.アプリケーションエンジニア

アプリケーションエンジニアの主な業務は、スマホアプリ、Webアプリ、業務系アプリの開発で、それらアプリケーションの保守・運用・メンテナンスも行います。

アプリの設計から開発、動作テストまで広く関わるため、幅広い知識が必要になります。役職によってはクライアントとの折衝も行うため、技術力とともに、コミュニケーション能力も求められます。

2-5.ゲームエンジニア

ゲームエンジニアは、ゲームの開発を専門に行い、デバッグ(バグ取り)も担当します。近年増えたスマホゲームやオンラインゲームの場合、リリース後も開発によるアップデートと、デバッグが続きます。

エンジニアとしての優れた能力はもちろん、ゲームクリエイターや、サウンドクリエイター、キャラクターデザイナーなど、多くの人と関わりながら開発を進めるため、多くのスタッフと円滑にコミュニケーションを取る能力も求められます。

 

3.開発エンジニア

 

 

3-1.プログラマー

システムエンジニアが作成した設計書を元に、プログラミング言語を用いて、さまざまなシステムやソフトウェアを作る仕事です。

どのようなものを、どのくらいの時間で完成させるかは、プログラマーの実力に左右されます。バグやエラーを出さず、クオリティの高いものを納期内で作りあげるための集中力が必要です。

活躍の場は広く、金融システムや物流システムのように大規模なものから、テレビやスマートフォン、IoT家電、スマホアプリやスマホゲームといった身近なものまで、ソフトウェアが必要な製品にはプログラマーが携わっています。

 

3-2.フロントエンドエンジニア

フロントエンドエンジニアは、ユーザーがwebサイトを閲覧したときに、目に見える部分を担当するエンジニアです。webデザイナーが起こしたデザインを元に、HTMLやCSS、JavaScript、PHPの設計・実装を行って、webサイトをカタチにしていきます。

近年はwebサイトをPCとスマートフォンの両方に対応させるケースがほとんどとなり、フロントエンドエンジニアの作業は複雑化しています。デバイスの変化・進化に伴いプログラミング言語やUIに関する知識のアップデートが必要で、デザイン的なセンスも求められる職種です。

 

3-3.組み込みエンジニア(エンベデッドエンジニア)

組み込みエンジニアとは、家電やスマートフォン、自動車など、さまざま製品で必要とされるソフトウェアを開発するエンジニアのことです。身の回りにある電気を使う製品のほとんどはソフトウェアによって制御されており、活躍の場は大変広いものとなります。

C/C++、Javaなどによるプログラミングのスキルが必要なのに加え、実際にソフトウェアを開発する製品・機械の仕組みへの知識も必要です。組み込みエンジニアは需要が高く、人材は不足傾向にあります。

 

4.インフラ系エンジニア

 

4-1.ネットワークエンジニア

ネットワークエンジニアは、機器同士を接続するルーターやスイッチを取り扱い、ネットワークシステムを構築するエンジニアです。システムの構築段階からプロジェクトに携わり、構築・保守・管理までを行います。

ネットワーク機器に対する専門的な知識・技術が求められるほか、クライアントから円滑にヒアリングを行えるコミュニケーションスキルも必要です。さまざまなネットワークサービスが登場する近年において、そのインフラを担う職種として需要が高まっています。

 

4-2.サーバーエンジニア

サーバーエンジニアとは、web上のサービスを提供するサーバーを、ゼロから構築・設計し、保守・管理までを行うエンジニアのことです。

運用に必要なサーバーのスペックや台数を検討し、プログラマーなどとの打ち合わせも適宜行ってサーバーの構築を行います。稼働が始まったら、サーバーの監視やセキュリティチェック、バックアップなどが主な任務になります。

サーバーエンジニアは、担当しているサーバーに障害が発生した場合、昼夜を問わず復旧作業を行うことになります。また、近年はサーバーをAWSなどのクラウドに置くケースも増えたため、クラウドに関する知識も必要です。

 

4-3.データベースエンジニア

データベースエンジニアは、インターネット上でデータを保守・管理している「データベース」の開発・設計、もしくは管理・運用を行うエンジニアです。情報システムを支えるために重要な仕事ですが、データベースを専門に扱うエンジニアは少なく希少性があります。

プログラマーやシステムエンジニアとして実務経験と、SQLに関する知識が必要です。さらに、他部門との協力が必須となる職種であることから、一定のコミュニケーション能力も求められます。

 

4-4.セキュリティエンジニア

セキュリティエンジニアとは、情報セキュリティに特化したエンジニアのことです。セキュリティに配慮したシステム構築・運用を行うスペシャリストとして、サイバー攻撃による被害を防ぐための対策・改善・調査を行います。

サイバー攻撃は日々巧妙さを増しており、高い情報収集能力が必要です。サイバー攻撃を受けると被害が甚大であることから、強い責任感も求められます。

スペシャリストではありますが、クライアントと意見を交わす機会も多く、一定のコミュニケーション能力や人柄も重視されます。

 

4-5.クラウドエンジニア

クラウドエンジニアとは、クラウド製品を利用したシステムの設計・構築・運用を専門に行うエンジニアのことを指します。オンプレミスからパブリッククラウドへの移行が増えるに伴って、クラウドエンジニアの存在感は大きくなっています。

業務では、利用するクラウドサービスの選定や、クラウド上でのシステムの構築も行いますが、いわゆるオンプレミスより構築が容易なクラウド環境では、運用・保守のウェイトが高くなります。

ネットワークやサーバーに関する知識が土台となることもあり、すでにネットワークエンジニアやサーバーエンジニアとして活躍しているエンジニアからの転身が多く、また、需要の高い職種でもあります。

 

4-6.バックエンドエンジニア

バックエンドエンジニアは、フロントエンドエンジニアとは逆で、webサイトを利用するユーザーには見えない部分の開発を担当します。具体的には、「サーバー構築」や「サーバーサイドプログラム開発」が主な仕事です。

webサイトの裏側(バックエンド)を一手に担うケースが多いため、webサービス全般への広い知識が必要です。また、「サーバー構築」や「サーバーサイドプログラム開発」を行いますが、前述のサーバーサイドエンジニアやデータベースエンジニアとは「webに特化している」という点で違いがあります。

 

5.そのほかのエンジニア

 

5-1.セールスエンジニア

セールス(営業)とエンジニア(技術職)の要素を兼ねた職種で、主に営業現場で活躍するエンジニアのことです。会社によっては、「サービスエンジニア」「プリセールスエンジニア」などと呼ばれることもあります。

実際の業務は営業寄りで、目標は「自社商品の販売・売上アップ」になります。商品やサービスを販売するために、自社商品を細部まで把握していることが必要で、顧客への詳細な説明のためにエンジニアとしての知識・経験が活きます。

営業に向いたコミュニケーション能力が重要なのはもちろん、エンジニアではない商談相手への売り込みのため、専門用語を易しく噛み砕いて相手に伝えるスキルも大切です。

 

5-2.サービスエンジニア

サービスエンジニアは、自社製品の保守・メンテナンスを行うエンジニアです。システムの保守・監視・運用に携わるほか、設計段階の一部や、テストに参加するケースもあります。

客先をまわりながらヒアリングやトラブルシューティングを行い、必要に応じてメンテナンスも行います。クレーム対応も業務の一部となり、お客様の意見・要望を蓄積することで、システムやサービスの改善につなげていきます。

お客様と直接関わる仕事のため、コミュニケーションスキルが必要です。また、お客様の疑問に素早く回答するためには、自社製品に対する深い理解も必要となります。

 

5-3.テストエンジニア

テストエンジニアは、製品のソフトウェアに問題がないかテスト・検証を行い、評価をするエンジニアです。システム開発において、製品の品質を守るための重要な役割となります。

システムの最終段階で行われるテスト業務は、システムエンジニアも行いますが、テストエンジニアはテスト工程のプロフェッショナルとして、第三者検証なども行います。

製品がリリースされてから不具合や欠陥が見つると被害は大きなものになるため、バグやエラーを確実に発見する集中力と、さまざまな状況を想定できる柔軟さも必要になります。

 

5-4.社内SE

社内SEは、自社システムの構築・運用・保守に関する業務を行う仕事です。社内SEという言葉が指す範囲は広く、自社システムの構築だけでなく、社内のパソコンに関する困りごとなどに広く対応するケースもあります。

必要なスキルはその会社によって異なるものの、一般的には幅広い知識と、社内のさまざまな部署とコミュニケーションを取って業務を進める社交性が必要です。

また、社内SEは納期があまり厳しくないケースも比較的多いため、エンジニアの中では残業が少ない傾向にあるのも特徴です。

 

まとめ

エンジニアにはさまざまな職種があり、必要とされるスキルも異なりますが、専門職であることから総じて需要が多く、将来性のある職業といえます。また、コミュニケーションスキルが求められるセールスエンジニアなどの職種では、40代から活躍している人も少なくありません。

後編では、エンジニアのキャリアの選択肢、キャリアパスについて、人材としてのバリューを高めるヒントと共に紹介していきます。

関連する記事