#前提
私はエンジニアに転職をしようと勉強している者です。
そこで学んでいた時にどんなエンジニアになりたいのか考えていたのですが、調べれば調べるほど多岐に渡っていたので整理してみようと思い記事にしました。
こんなのもあるよ、その認識はちょっと違うかもなどありましたらご教授頂けますと幸いです。
#追記
2021年11月24日
@hisuie08 さん より
#フルスタックエンジニア
定義は非常に曖昧ですが主にWeb実装面で用いられる括りのため、Webで重要スキルである
・フロントエンド
・バックエンド
・データベース
・インフラ
のスキルを持つことが必要要件かなと思われます。
賛否ありそうですがSEOやセキュリティにまでは精通していなくとも最小限フルスタックを名のれる気がします(精通しているに越したことはありませんが)。
#データエンジニア/データ分析エンジニア
データベースエンジニアと名前が似ていますが全く別物です。アクセス数や利用者情報など煩雑なデータを整理・取捨選択して必要な情報を割り出すエンジニアです。やや専門的な気もしますが、近年はPythonやビッグデータ概念の普及で比重が増しているように思います。
#ハードウエアエンジニア
組み込みエンジニアが中身ならハードウエアエンジニアはガワを作る人達です。
こちらは回路、特に論理回路や集積回路に深い理解が必要な仕事です。
組み込みプログラムとハードウエアは依存関係が特に強い上ハードウエアの性能による制約も生じるため、組み込みとの綿密な連携が必要となります。どちらかがハードとソフトを兼務することも少なくないそうです。
#デザイナー
エンジニアと名前は付きませんが、私は「インターフェイスエンジニア」と呼んでも良いくらい他のエンジニアに劣らぬ重要なポジションだと思います。
訪問者の心を掴むランディングページ、利用者が直感的に利用できる操作画面などは彼らの仕事なしには実現不可能でしょう。
##------------------------------------------------------------------------------
#エンジニア
大辞林で調べると下記の内容でした。
機械・電気・土木などの技術者。技師。
もう少し詳しく書くと
エンジニアリング(工学)の専門的な知識やスキルを持った人材
かなと思います。
#システムエンジニア
コンピューターのシステム開発に関する業務を一貫して行うエンジニア。
この中からフロントエンド
やバックエンド
などに別れたり、発展してPM
などになる認識です。
#フロントエンドエンジニア
Webサイトの閲覧や操作などのユーザーが直接見たり、触れたりする部分を開発するエンジニア
#マークアップエンジニア
主にHTMLによるマークアップを担当するエンジニア
フロントエンドとの違いはJavaScriptなどの言語を扱うか、マークアップ言語を扱うかの違い
#バックエンドエンジニア
Webサイトを利用するユーザーには見えない部分を担当
主にサーバー側のシステム要件定義、設計、開発するエンジニア
アプリケーションエンジニア
・データベースエンジニア
・サーバーエンジニア
に分けていけるみたいです。
#アプリケーションエンジニア
恐らく多くの人がイメージするエンジニア像
システム開発の一連の作業を担当し、情報システムにおける設計、プログラムの開発、開発したシステムの動作テストなどを担うエンジニア
#組み込みエンジニア
家電製品・携帯電話・自動車など様々な機器の機能を正常に作動させるコンピュータシステムを開発するエンジニアです。
ハードウェアに関する知識、また力学など物理の知識も必要とされる。
#データベースエンジニア
データベースを構築・維持管理・運用をするエンジニア
SQLなどを扱うソフトウェアエンジニア
とストレージやサーバーなどを扱うハードウェアエンジニア
に分かれる
#プログラマー
システムエンジニアが製作した仕様書を元にプログラムを書いて実装していく人
#テストエンジニア
テストエンジニアとは、テストの計画から改善提案までの工程を請け負うエンジニア
テスト計画書やテストプログラムを与えられテストを実施していく人はテスター
と呼ばれるそうです。
テスター(実施する人)とテストエンジニア(計画・仕様書から担当)の違いは担当範囲で分かれるようです。
#インフラエンジニア
ITインフラの設定や管理を行っているエンジニア
この中からサーバーエンジニア
とネットワークエンジニア
に分かれるそうです。
ITインフラの監視やメンテナンスもインフラエンジニアが対応します。
#サーバーエンジニア
サーバーの選定や設計、構築、テストなど運用業務全般を行なうエンジニア。
クラウド化も進んでいるのでクラウドの知識も必要とされる
#ネットワークエンジニア
コンピューターやサーバーを接続し、データを送受信できる環境を作るエンジニア
#セキュリティエンジニア
個人情報の漏洩対策や企業の情報セキュリティなど情報セキュリティ専門のエンジニア
IT犯罪に対処するために知識や高い技術レベルが必要であり、様々な企業機密案件に触れることも多いため高い倫理観が求められる
#ミドルウェアエンジニア
ミドルウェア
というのは、システムソフトウェアの一種
ミドルウェア単体では動作せず、アプリケーションを正常に動作させるために必要なソフトウェアの事です。
ミドルウェアは〇〇Server
と付くものが多数あるのが特長だそうです、身近なものだどMySQL
(DB管理サーバー)などもここに当てはまるらしいです。
これらを設計、実装、運用などを担当するエンジニア
#SEOエンジニア
検索エンジンを実験・研究し、SEO実行計画の策定や指示、実務をするエンジニア
SEO:検索をかけた際、自分のWebサイトがページの上位に表示されるように工夫するための技術
サーチエンジンのアルゴリズムに適応し、顧客ニーズに応える必要があります。
#セールスエンジニア
顧客が自分たちの商品を正しく活用できるように製品・機器の仕様等の技術的な説明し営業をサポートするエンジニア
#サポートエンジニア
企業などに導入した情報システムの顧客に、様々なサポートをして、IT製品の仕様や技術的な問題に関する問い合わせに対応するエンジニア
#フィールドエンジニア
顧客先に出向いて、コンピュータの設置や保守・点検、修理などを担うエンジニア
#まとめ
色々と調べていても整理されるどころか逆にこんがらがるぐらい種類がありますね・・・
自分の思うエンジニア像はありましたでしょうか??
何をやりたいのか明確にできると企業ともミスマッチもリスクは格段に減ると思うので参考にして頂けますと幸いです。