Masayan tech blog.

  1. ブログ記事一覧>
  2. 主なエンジニアの職種、キャリアパスまとめ

主なエンジニアの職種、キャリアパスまとめ

公開日

この記事を読むと理解できること

  • エンジニアのキャリアパスの種類が理解できる
  • キャリアパスごとに求められるスキル、経験が理解できる

※まだ一部のみのため、順次更新予定

キャリアパス分類

技術系キャリアパス

  • システムアーキテクト
  • データエンジニア
  • データサイエンティスト
  • 機械学習エンジニア
  • インフラエンジニア
  • セキュリティエンジニア
  • DevOpsエンジニア
  • SRE (Site Reliability Engineer)
  • フルスタックエンジニア
  • フロントエンドエンジニア
  • バックエンドエンジニア
  • IoTエンジニア
  • ロボットエンジニア
  • 社内SE
  • アプリエンジニア
  • QA

ビジネス系キャリアパス

  • プロジェクトマネージャー
  • プロジェクトリーダー
  • プロダクトマネージャー
  • テクニカルリード / テックリード
  • チーフテクノロジーオフィサー (CTO)
  • エンジニアリングマネージャー
  • ビジネスアナリスト
  • コンサルタント
  • エンタープライズアーキテクト
  • セールスエンジニア

その他キャリアパス

  • 技術ライター / コンテンツクリエイター
  • 教育者 / トレーナー
  • 起業家 / スタートアップ創業者
  • ユーザーエクスペリエンス (UX) デザイナー
  • UIデザイナー

上記以外にもありそうですが、主だったものだけ挙げています

技術系キャリアパス

システムアーキテクト

概要

  • 上流工程
  • 経営戦略・ビジネス戦略をもとに、システム企画を立案し、技術的な実現に向けた全体像をデザイン・設計する
  • 開発効率、組織のパフォーマンス向上/品質向上の促進
  • システムアーキテクト専門で募集している要項は割と少なめ
  • 募集内容はまちまち。実装やテストなどの下流の業務内容とセットで募集しているものもあれば、設計とPM業務してくださいという募集もあったりする

求められるスキル/経験

  • クライアントのビジネスとアイデア、構想に沿った適切なアーキテクチャを実現できる(フロントエンド、バックエンド、インフラ、ミドルウェア
  • 業界ごとのビジネス、ドメインに対する豊富な知識、理解
  • 技術選定
  • クライアントとのコミュニケーションスキル
  • 他のSaaSとの組み合わせ、連携に関する知識
  • 幅広い分野で技術的な知見、経験が必要
  • 下流工程の経験が必要
  • 業界標準、ベストプラクティスの理解、定期的なアップデート
  • 緊急時の開発、実装スキル
  • プロジェクト管理、メンバー管理、スケジュール管理スキル
  • リーダーシップ

参考

データエンジニア

特徴

  • データ活用のための基盤作成、データ分析のための下準備
  • データウェアハウス、データベースの設計、構築、管理
  • データを「収集」「蓄積」「加工」「分析」するためのパイプラインを構築
  • ETLプロセスの実装(データソースから、データの抽出(Extract)・変換(Transform)・書き出し(Load)を行い、DWH(データウェアハウス)に保存)
  • データサイエンティストが問題なくデータを取り出し分析に使えるよう、データを格納
  • データクレンジングで不正確なデータ(欠損したデータ、重複したデータなど)を特定して修正、データの品質を向上させる
  • 機械学習やAIの分野における、学習データの作成
  • 上記のような基盤構築のためのインフラやシステムの構築
  • データサイエンティストとセットでの募集が多い印象(データエンジニア単体の募集は少ない印象)

スキル

  • 基本的なプログラミングスキル
  • データベースに関する知識/経験(SQL,RDB, NoSQL)
  • インフラやクラウドに関する知識(特にデータウェアハウス関連の「Amazon RedShift」「Google BigQuery」)
  • サーバーやネットワークの知識、分散処理(膨大なデータを複数のサーバーに分散して処理)に関する知識
  • BIツールの知識/経験(ダッシュボードによるデータの可視化など)
  • データセキュリティ、コンプライアンスの知識

参考

データサイエンティスト

特徴

  • 膨大なデータを分析し、その結果をもとにビジネスの意思決定を支援する
  • データの分析、グラフやダッシュボードで可視化、機械学習を用いたトレンド・パターン予測
  • データ分析を通じて、経営やマーケティング、営業などビジネス上の課題を特定し、解決策を提案する

スキル

  • PythonやRなどの、データ分析や機械学習に適した言語の知識や、基本的なNumPyやPandasなどのライブラリの経験
  • 統計学(回帰分析や仮説検定)や数学の知識
  • 機械学習アルゴリズムに関する知識
  • データベース, SQLに関する知識
  • Tableauなどのデータ可視化ツールの利用経験
  • ビジネス、ドメイン知識の理解

参考

機械学習エンジニア

特徴

  • 機械学習アルゴリズムの設計、実装、モデルのトレーニング
  • 機械学習に用いるデータの収集、整形
  • システムへのモデルの組み込み
  • 最新技術の調査

スキル

  • Python、RやJava、C++
  • Pythonのライブラリ(TensorFlow、PyTorch、scikit-learnなど)の理解
  • 数学と統計
  • 微分積分、確率論、統計学の知識
  • データサイエンス
    • データの前処理や探索的データ分析のスキル。Pandas、NumPyなどを用いてデータを操作するスキル
  • 機械学習アルゴリズム
    • 回帰、分類、クラスタリング、ディープラーニングなどの主要なアルゴリズムやモデルの理解。モデルの選定やチューニング、評価のスキル
  • データベース管理
    • SQLやNoSQLのデータベースを扱うスキル、データ取得やデータベースとの連携
  • 機械学習モデルの設計、開発、テスト、デプロイまの経験
  • モデルの精度を向上させるための経験

参考

インフラエンジニア

特徴

  • システムを利用するためのサーバーやネットワーク、データベース、ストレージなどのIT基盤構築・運用・管理
  • システムのパフォーマンスや障害の監視、障害発生時の対応
  • バックアップやリカバリープロセスの管理
  • セキュリティ対策
  • オンプレミス又はクラウド
  • 自動化

スキル

  • サーバー、OS (Linux, Windowsなど)周りの知識
  • ネットワークの知識(TCP/IP、DNS、HTTPなど)
  • プログラミング(バッチファイルやシェル、サーバレス関数
  • クラウドプラットフォームの知識・スキル(AzureやAWS、GCP
  • セキュリティに関する知識 (ファイアウォール、VPN、認証技術など)
  • シェルスクリプト、Terraformなどの自動化スキル
  • SQL、データベース周りのスキル
  • 障害を想定した設計
  • セキュリティ対策

参考

セキュリティエンジニア

特徴

  • 情報セキュリティを専門に担当するエンジニア
  • サーバーやネットワーク、システムに対して行われるサイバー攻撃等によって生じるセキュリティリスクを排除・軽減
  • 情報セキュリティマネジメントシステム(ISMS)やプライバシーマーク取得のための支援
  • 障害発生時の復旧対応や、不正アクセスの調査
  • セキュリティに配慮したシステムの設計、運用
  • セキュリティ事故発生時の被害や脅威の予測と事前の対策検討、実施
  • 脆弱性診断
    • 潜在的な脆弱性を発見するために疑似攻撃を行ったり、テストを実施
  • 組織のセキュリティガイドラインやポリシーを作成、体制づくり
  • ファイアウォール、暗号化技術、ID管理システムなどのセキュリティツールの導入と運用
  • 社内の全従業員に対して、セキュリティのベストプラクティスやフィッシング対策などのトレーニングを提供
  • 業界標準や法的要件(例: ISO 27001)に基づき、監査やコンプライアンス対応を行う
  • 最新の攻撃手法に対する敏感さを保ち、常に学び続ける姿勢が必要

スキル

  • TCP/IP、ファイアウォール、VPN、IDS/IPS、SSL/TLSなどのネットワーク技術に関する知識
  • 最新のセキュリティガイドラインやベストプラクティスを理解し、実装できる能力
  • 暗号化やデータ保護に関する技術的な知識(例: RSA、AES、ハッシュ関数)を持ち、それを適用できるスキル
  • リスクアセスメントやセキュリティの脅威に対する評価、予防策の策定
  • セキュリティツールのカスタマイズや自動化のためにPython、Bash、PowerShellなどのプログラミングスキル
  • ツールを使った脆弱性評価

参考

セキュリティエンジニアとしての求人は少ない印象。インフラエンジニアや、社内SEといった求人が多い。また、具体的な業務内容は他の職種に比べて明記されていない印象

DevOpsエンジニア, SRE (Site Reliability Engineer)

特徴

  • 「development(開発)」と「operations(運用)」を組み合わせた言葉
  • 運用チームと開発チームとの協働を高める
  • 開発からリリース、運用までの工程円滑かつ、迅速に進めるための仕組みを設計/構築する職種
  • SREとDevOpsの違い(SREを提唱するGoogleによると)
    • class SRE implements DevOps(=DevOpsという概念を実現するための方法がSRE)
  • リリース後のフィードバックの取り込みを迅速に行うことができるように、自動化、仕組み化を行う
  • インフラ周りの構築・整備も行う(インフラエンジニア的な側面もある)
  • CI/CDの構築
  • 非効率な部分の自動化(リリース、定型業務
  • システムの監視やアラートの設定、ログの収集、トレーシング
  • インフラのコード化 Infrastructure as Code
  • システム信頼性エンジニア(SRE)
  • サービスレベル指標(SLO)などの指標に基づいて、サーバーの稼働率を安定させるために可用性を担保するための仕組みの構築

スキル

  • プログラミングスキル
  • ソフトウェアの開発経験
  • Jenkins, GithubActionsなどのCI/CDの経験
  • システムの監視やアラートの設定、ログの収集、トレーシングに関する経験
  • 自動化ツールの知見
  • インフラやネットワーク、クラウド、セキュリティの知識

参考

まとめ

いかがでしたでしょうか。本記事では、主なエンジニアの職種、キャリアパスを紹介しています。漠然とエンジニアになったものの中長期的なキャリアパスをまだ描けていないという方は、ぜひ参考にしてご自身のキャリア形成の助けにしてもらえればと思います。