牛山くんと猫田さんは、今日も雑談ばかりしています。
ねぇねぇ、牛山くん。エンジニアっていっぱい種類があるじゃん? なんとかエンジニアみたいな
あぁ、たまに聞きますねぇ
牛山くんはどんなエンジニアを目指しているの?
そう聞かれると困りますね。 僕は一体、なにエンジニアを目指しているんだろう?
二人がそんな話をしているとキャニット先生がやってきました。
おやおや? 自分がどんなエンジニアを目指しているのかわからないのでは、困りますねぇ
そうなんですよ。今猫田さんに言われてハッとしました
では、今回の講義ではエンジニアの種類や業務内容を紹介しましょうか。どんなエンジニアがいて、どんな仕事をしているのかを知れば、きっと牛山くんの目指す方向も決まりそうです
ITエンジニアの種類をわかりやすく解説
そもそも、エンジニアにどんな種類があるのかよくわからないのよね
ひとことで『エンジニア』と言っても、いろいろな働き方がありますからね。でも大きく分けると、この3つに大別できると思いますよ
- 開発エンジニア
- インフラエンジニア
- セールスエンジニア
エンジニアの種類①:開発エンジニア
まずは、開発エンジニアを紹介しようと思いますが、開発エンジニアも大きく3つに分けられます。フロントエンジニアとバックエンドエンジニア、そして組み込みエンジニアですね
フロントエンドエンジニアとバックエンドエンジニア
フロントエンドエンジニアは、webサイトの中でもユーザーから見える範囲を扱うことに特化したエンジニアです。反対に、ユーザーからは見えない範囲を扱うエンジニアをバックエンドエンジニアと呼びます。
WEBサイトの見た目や、サイト上でのアニメーション再生など、みなさんがwebサイトを閲覧している際に体験することは概ねフロントエンドエンジニアの業務範囲となっています。
近年はWEBサイトをスマートフォンから閲覧するユーザーが急激に増加しているため、サイトをスマートフォン表示に対応させるためフロントエンドエンジニアの需要も急増中です。
今聞いたかぎりだと、フロントエンジニアが僕が思っていたエンジニアのイメージに近いですね
そうですね。駆け出しエンジニアの皆さんが漠然と想像しているエンジニアにもっとも近いのが、フロントエンジニアだと思いますよ。でも、実際はいろいろなエンジニアがいます
組み込みエンジニア
続いて、組み込みエンジニアです
組み込みエンジニアとは「組み込みシステム」を開発するITエンジニアの総称です。組み込みシステムは、家電製品や工場に設置されたセンサーなど、独立した機械の中に組み込んである小さなコンピューター(マイコン)を制御します。近年IoT化が普及するなかで、需要が高まっている職種です。
パソコン上で動く一般的なシステムとの大きな違いは、CPUやメモリなどのリソースが潤沢ではないため、コンパクトなプログラミングが求められる点です。
そっか。機械はプログラミングで動いているから、そこを扱うエンジニアはもちろんいるよね
そうなんです。エンジニアの仕事はネット上のシステムに限ったものではないんですよ
エンジニアの種類②:インフラエンジニア
次は、インフラエンジニアですね。これはまぁ、名称のとおり企業のITインフラに関わるエンジニアです
インフラエンジニアは、主にIT基盤(インフラストラクチャ)の構築を担当する職種を示します。データベースエンジニアやサーバーエンジニア、ネットワークエンジニアなど、システムの基盤を扱うエンジニアの総称です。設計、構築、運用し、さらにはメンテナンスから保守まで求められます。
ITシステムやWebサービス運用でのインフラ業務のほか、サーバーやネットワークなど物理機器の構築をおこなう技術者もインフラエンジニアに含まれます。業務が多岐にわたるのが特徴となります。
インフラエンジニアも総称なんですね。実際はもっと細かく分かれていると……
あれもこれもと多くの役割を任されることも少なくないようです
エンジニアの種類③:セールスエンジニア
最後セールスエンジニアです。これはわかりやすいですよ。営業もするエンジニアですね
エンジニアとしての技術を持ちながら営業の役割も兼ねるエンジニアを、セールスエンジニアと呼びます。製品の専門的な部分を理解しつつ、営業としてわかりやすく説明しながら売り込んでいくポジションです。自社製品を導入した企業のアフターフォローを行う場合もあります。
「営業もしなければいけない」という点で煩雑さを感じる方もいらっしゃるかもしれませんが「ユーザーに直接関わることが出来る」点では非常にやりがいのある仕事です。
技術者のなかでも、よりクライアントに近い立場で仕事がしたい方や、コミュニケーションスキルに長けた方がセールスエンジニアに転身するパターンが多いようです。
営業の仕事は営業に任せておけばいいじゃん
もちろん、そういう企業もありますけどね。エンジニアが営業をしたほうが説得力があるケースも少なくありません
あぁ、たしかにそうですね。何か質問されても、すぐに答えられるでしょうし
そうですそうです。やっぱりものを売り込むなら、相応の知識があったほうがいいんですよ
ITエンジニアの業務内容をわかりやすく解説
それでは、各エンジニアの業務内容をもっと掘り下げていきましょう
①:開発エンジニアの業務内容
フロントエンジニアの業務内容
フロントエンドエンジニアは、Webデザイナーのデザインをもとに、HTML、CSS、JavaScript(jQuery)、PHPの設計や実装、WordPressなどのCMS(コンテンツマネジメントシステム)構築やカスタマイズを担当します。
HTMLの設計を主に行うのが、マークアップエンジニアです。対して、フロントエンドエンジニアはHTMLの他にCSSやJavaScript、PHPのコーディングを行います。
デザインはすべてWebデザイナーに任せるという企業もあれば、デザインの一部をフロントエンドエンジニアに任せる企業もあります。そのため、デザインについても関心を持っておくと良いでしょう。
直接デザインに関与しなくてもデザイナーと連携する機会があることは少なくありません。そのため、PhotoshopやIllustratorなどの画像編集ソフトのスキルが求められるケースも多いです。
HTML、CSS、javascript……やはり多くの人が思い描くエンジニアにいちばん近いのが、フロントエンジニアぽいですね
しかし、photoshopやillustratorの知識まで求められるのか……大変だなぁ
そのあたりは、けっしてマストではありませんよ。でも、武器は多ければ多いほうが需要が高いのは当然ですよね
組み込みエンジニアの業務内容
組み込みエンジニアの仕事の流れは、一般的なWebシステムやパッケージソフトを開発するITエンジニアと同様の仕事内容です。ただ、案件によっては、ソフトウェアだけでなく組み込まれるコンピューター(ハードウェア)自体の設計も必要になります。
新人の組み込みエンジニアは、デバッグやテスト・保守から仕事を学んでいき、徐々に実装や設計の工程も任される。そのような傾向のようです。製品の企画やシステム設計は、クライアントとのコミュニケーションが多くなるため、実務経験が求められるでしょう。次に説明するインフラエンジニアと仕事内容が被る部分もあります。
②:インフラエンジニアの業務内容
インフラエンジニアの業務内容は、大きく分けると設計、構築、運用、この3つです
設計
自社内部や外部クライアントなどのITの専門家でない人たちから、どんなシステムを作りたいのかという要求定義があります。それをインフラエンジニアが設計書に落とし込みます。
設計書はドキュメントとして保存され、それを土台にして実作業が行われます。そのため、この要件定義の設計作業の段階で、プログラミングのイメージが必要です。実際の動作フローやエラーハンドリングも、設計書の内容に組み込む必要があります。
ITやプログラミングをよくわかっていない人の「こんなことがやりたいんですけどー」の夢を叶えるために、設計書を作るわけです
なるほど。なかなか大変そうですね
構築
設計書が完成したら、設計に基づいたハードウエア・ソフトウエアを揃えます。もちろん必要に応じてプログラミングを行うこともあるでしょう。ハードウエアの運搬や組付け、設置も構築作業に含まれます。
すべての設置と接続が終わったら、ソフトウエアのインストールと設定を行い、動作確認と負荷テストを行うのです。
先ほどの設計を元にして、必要なものを揃えていく……これが構築ですね
運用
すべての構築とテストが終わったら運用開始です。原則として一度運用を開始したら、止めることなく運用し続けます。24時間365日動作させ続けるために動作を監視し、必要に応じて保守し、万が一のトラブルの際には即応体制で対処しなければなりません。
ひぃいいいいいい、これは大変だ
みなさんが何気なく使っているいろいろなシステムは、たくさんのエンジニア達の努力のおかげだと、よくわかりますよね
③:セールスエンジニアの業務内容
自社の営業戦略を技術的な側面から支え、システム導入時の管理やサポート、時にはクライアント先のシステムのリプレース(システムの入れ替え)について提案するコンサルタント的な役割を担うのがセールスエンジニアの業務内容です。セールスエンジニアの仕事は多岐にわたるため、複数の業務を並行して処理しながら仕事を進めます。
セールスエンジニアは営業に同行して企業訪問をする機会も多いため、さまざまな企業と接点を持てるでしょう。技術職でありながらクライアント目線でも仕事ができる。その点にやりがいを感じられる人も少なくありません。ただ、業務内容が広いため多忙になる可能性があります。
エンジニアの業務内容:まとめ
というわけで、今回はエンジニアの業務内容を紹介しました
なんか、どれも大変そうだなー
無意識のうちにフロントエンジニアを目指していたことがわかりました
それなら、牛山くんはフロントエンジニアに必要なスキルを身につけるべきですね。このように目指すものがわかれば、自分に何が必要なのかも見えてきます。だから、プログラミング学習と並行してエンジニアの業務内容を調べるのは、とても意味のあることなんですよ