見出し画像

IT業界の業種?職種?全然わからん!

はじめに

お疲れ様です。ゼロカロリーです。

先日とうとう転職活動を始めたのですが、さっそく困ったことがありました

転職サイト「あなたの業種はなんですか?」
転職サイト「あなたの職種はなんですか?」
転職サイト「あなたのスキルはなんですか?」

チェックリスト
□ hogehoge
□ hogehoge
□ hogehoge
□ hogehoge

自分「この業種で合ってるんだっけ」
自分「職種種類ありすぎるけどこれかな?」
自分「スキル。。。あったっけ?」

ときちんと調べずにとりあえずで登録してしまい、そのまま忘れ、カジュアル面談で話の食い違いが発生してしまいました

転職の共通認識として、分類などを正しく理解できていないので、整理してみようかと思います
そして正しく自分をアピールしたい。。。


職種

システム開発(オープン・Web系)

はい、この記事を書いたきっかけです
謎にまとめられているオープン系とWeb系
このあたりの理解が間違っていて、テキトーな理解をしていました

■オープン系
オープン系システム開発とは、技術的な仕様やソースコードが公開されているソフトウェア・ハードウェアを組み合わせて構築・開発されるシステム開発のことです。
・ハードウェア
サーバ・ルーター・スイッチなどを含め、一般に入手できるもの

・ソフトウェア
仕様・ソースコードが公開されているパッケージ・アプリケーションのほか、ゼロベースからシステム開発するスクラッチも含む

【システム開発】オープン系とは?汎用系・Web系との違いを解説! | システム開発会社を探すなら「比較ビズ」 (biz.ne.jp)

■Web系
Web系システム開発とは、クライアントマシン(PC・モバイルデバイスなど)をインターネットに接続して利用することを前提に、Web環境にシステムを構築するシステム開発のことです。(中略)

・一般に入手できるハードウェア、オープンなソフトウェアを活用する
・ゼロベースのスクラッチ開発も含まれる

【システム開発】オープン系とは?汎用系・Web系との違いを解説! | システム開発会社を探すなら「比較ビズ」 (biz.ne.jp)

ということらしいです
この二つがまとめられているの直感に沿わないんですよね。。。

要は一般的なPCで開発している、ということだと思うんですが、それならそう書けばいいじゃないですか
一般的なPCかつ2つのパターンのシステム構成の開発がまとめられている

うーん、わかりづらい

システム開発(汎用機系)

記事を書いたきっかけその2です
自分はオープン系とWeb系と汎用機系がよくわかってなかったんですね

汎用機っていう言葉の響きだけで意味を解釈していたので、間違った理解をしていました

■汎用機系
汎用系システム開発とは、一般では入手できない「汎用機」と呼ばれる専用コピューターをベースに、ゼロからシステムをスクラッチ開発するシステム開発のことです。インターネット、イントラネット、社内LANなどで共有されるケースが一般的ですが、あくまでも汎用機という「クローズドな環境」で開発・構築されます。

【システム開発】オープン系とは?汎用系・Web系との違いを解説! | システム開発会社を探すなら「比較ビズ」 (biz.ne.jp)

オープン系とWeb系もですが、システム構成のひとつということですね
言葉が「汎用機」なのに一般では入手できないとは。。。?

システム構成まわりはいまいち腑に落ちないので、今度深掘ってみたいですね

システム開発(制御・ファームウェア・組込系)

これに関しては自分の理解に大きな差異はなかったです

■制御系
制御設計は機械を実際に動かす際に、各機能がどのように働くかをコントロールしています。

組み込み系と制御系の違いは?両者の役割と仕事内容 (levtech.jp)

■組込系
組み込み開発は、機器が動く仕組みの元となるソフトウェアを開発します。パソコンや携帯電話をはじめ、洗濯機やエアコン、デジタルカメラ、車など、電気を使っているさまざまな製品の中で使われており、幅広い業界で需要のある仕事です。

組み込み系と制御系の違いは?両者の役割と仕事内容 (levtech.jp)

■ファームウェアファームウェアとは、パソコン、携帯電話、家電製品などの電子機器(ハードウェア)を動かすためのソフトウェア

ファームウェア開発とは?ソフトウェアとの違いや使用する開発言語、求人・転職事情について解説【2024年最新版】 | システム幹事 (system-kanji.com)

ハードウェア寄りのシステム開発ということなんですよね
ただ、システム構成的にはオープン系もWeb系も汎用機系も兼ねる可能性がありそうですし、まとめられているってことは同じ領域なんでしょうか?

こういった区分になっている理由は気になりますね

パッケージソフト・OS開発

これのOS開発については、そのままだと思うので、理解できるんですが、パッケージ開発とは何ぞや? 状態だったので調べてみました

「パッケージソフト」は特定の業務や定型処理が簡単に行えるように作られた、既成品の「ソフトウェア」のことを言います。

~中略~

「パッケージソフト」は、処理の内容ごとに、以下の3種類に分類できます。
①「OS(オペレーティングシステム)」

「ミドルウェア」
「アプリケーションソフト」

パッケージソフトの3つの種類を解説【ソフトウェア業界研究向け】 | IT業界アンテナ (itjca30.com)

この記事によれば、OS開発もパッケージソフト開発も含まれるような。。。
この括りで言うとOS開発自体が大きいので特だししているんでしょうか?

基本的にソフトウェア開発をしている場合、このパッケージソフトウェアの領域のどれかには当てはまりそうな感じがしますね!

ネットワーク・サーバ・DB設計、運用

これはインフラ寄りの分類ですね

ネットワークは通信関連、サーバのキッティングや保守などもここに含まれそうです

DB設計もかなり広い範囲をカバーしている言葉なのかな? と思うので、バッグエンド側でソフトウェア開発をしていても、経歴掠るんじゃないでしょうか?

システムコンサルティング、プリセールス

これはビジネス寄りの職種なんですかね?
名前はよく聞くけど説明できないな、と思ったのでとりあえず検索!

システムコンサルタントとは、顧客企業が抱える様々な課題をIT/情報化戦略立案や実際のシステム導入までをマネジメントしながら解決していく役割を担います。

システムコンサルタントとは?仕事内容と必要な資格|IT業界・コンサル業界への転職ならムービン (movin.co.jp)

ちょっといまいちイメージが沸かないですが、具体的なシステムについて設計するSEのさらに上流のお仕事という感じでしょうか?

ソフトウェアではなくシステム単位で顧客に提案する、ビジネスレイヤーに近い立場にあるという理解で合っているといいなぁ。。。

システム運用・サポート、その他

これもまた範囲の広い言葉ですね!
どこからどこまでがシステム運用、サポートにあたるんでしょうか?

その他って、その他ですかね?(笑)
確認してみるとテクニカルサポートや社内SE、セールスエンジニアなどエンジニアが主導ではないような立ち位置なのかなという印象がありますね

ちなみにテクニカルサポートと似たものでよく聞くヘルプデスクは厳密には違うそうです

■テクニカルサポート
テクニカルサポートとは、ソフトウェア・ハードウェアなどIT関連製品に対するユーザーからの故障や不具合、操作方法などの技術的な問い合わせを受け、解決に導く職種です。

■ヘルプデスク
ヘルプデスクとは、ユーザーからの問い合わせに対してシステムやアプリケーションについての基本的な操作方法やプリンタ等の周辺機器の使い方、修理の手配などを行う職種です。

テクニカルサポートとは?ヘルプデスクとの違いは? (levtech.jp)

こういうのもまた細分化されていそうな印象です

プロジェクトマネジメント経験

これはそのまんまですね

PM, PL, ScrumMaster, PMO などのマネジメント層の経験の有無ですね

"プロジェクト"なので、"プロダクト"は含まないのか? というのは少し気になるところですね(笑)

経験分野

業種

これはどの業種のプロジェクトに参画したか、という項目になります。
IT業界特有のものではなく、一般的に分類される業種ですね

ただ、このプロジェクトがこの業種! というのはなかなか自己判断では難しいです。私は普通に間違えて理解をしていました

検索してみると、様々な「いかがだったでしょうか」記事がありますが、個人的には厚生労働省が公開している職業分類表が具体的な職種まで記載されてあってわかりやすかったので、参考にするといいかもしれません

https://www.mhlw.go.jp/content/11650000/001030651.pdf


業務形態

これはIT業界の契約形態ですね
既に働いている方はご存じと思いますが、IT業界では実質派遣みたいな働き方が主流となっているのかな、と思います

で、それぞれいろいろな契約形態があるのでそれが業務形態と言っているわけですね

自社で働いていて、自社のサービスなどを開発しているのが「自社開発
自社で働いていて、他の会社のサービスなどを開発しているのが「受託開発

他の会社で働いていて、160h~180hの幅で働いてね、働くときは指示を受ける人に気を付けてねというのが「客先常駐(準委任)
他の会社で働いていて、その会社の社員と同じ扱いという体なのが「客先常駐(派遣)

というのが自分の理解です
詳しく知りたい方はそれぞれの太字を検索していただければよい記事がたくさんあるので、読んでみるといいかもしれません

技術領域

これは技術分野といいかえてもいいかもしれません

Webサイト開発だったり、SNS、IoT、Windows/Macアプリケーション、ネットワークなどなど

個人的に具体的なイメージがわかなかったものをピックアップします

■EDI(Electronic Data Interchange)
企業間における契約書や、受発注をはじめとした商取引に関する文書を、専用回線または通信回線を用いてやり取りする仕組みのことです。

EDIとは?仕組みや種類、導入メリットまでわかりやすく解説|ITトレンド (it-trend.jp)

■自然言語処理
人が使用している自然言語をコンピュータで分析することです。大量のテキストデータの解析や非構造化データを処理できるため、マーケティング分野などで用いられます。

自然言語処理(NLP)とは?できることや活用事例をわかりやすく解説|ITトレンド (it-trend.jp)

■CTI(Computer Telephony Integration)
電話やFAXとコンピューターを連携させるシステムのことです。CTIシステムには、電話がかかってきた際に、相手の名前や着信履歴を確認できる機能があります。

CTIとは?機能や導入するメリット・種類|おすすめシステム7選 | BOXIL Magazine

■DWH(Data Ware House)
さまざまなシステムからデータを集めて整理する、データの「倉庫」です。DWHではデータを時系列で保存し過去のデータ履歴を確認可能にすると同時に、システムごとのデータを集約して全体データとして活用が可能になるため、企業の意思決定に有効活用できます。

DWH(データウェアハウス)とは?活用例などわかりやすく解説|ITトレンド (it-trend.jp)

なるほど、自分には関係なさそうだな、ということがわかりました
基本的にはBtoBビジネスの中なので、生活しているだけじゃ触れない技術分野なんですかね。。。

開発手法

これはソフトウェア開発の開発方法ですね。
スケジュールをどのように進めるか とか、リリースをどうするか とか、それぞれの手法に名前がついていたります

ウォーターフォールとかアジャイルとかだと聞いたことある方も多いんじゃないでしょうか

ここでもピックアップしたかったんですが、ほとんどわからなかったのでほぼ全部調べました

■ADSG(Application Development Standardization Guide)
ウォーターフォール・モデルは、ソフトウェア工学における古典的な[1][2]開発モデル。作業工程(局面、フェーズ)にトップダウンで分割する。

ウォーターフォール・モデル - Wikipedia

■DevOps(Development + Operations)
DevOpsに厳密な定義はありませんが、アプリの開発チームと運用チームが協力することにより、迅速かつ柔軟なサービス提供を行うための考え方や仕組みをDevOpsと呼びます。

DevOpsとは何かを図でわかりやすく解説!アジャイルとの違いは?|Udemy メディア (benesse.co.jp)

■SRE(Site Reliability Engineering)
2004年にGoogle社のBenjamin Treynor Sloss氏によって提唱されました。平たく言えば、大規模かつ複雑なシステムを運用するにあたって、安定性を確保するべく開発側のITエンジニアがシステムの運用に参画するための手法、あるいはそれを行うためのエンジニアチームや人

「SRE(サイト信頼性エンジニアリング)」とは? DevOpsとの違いは?|IT Insight|Rentec Insight|レンテック・インサイト|オリックス・レンテック株式会社 (orixrentec.jp)

■XP(extreme programing)
アジャイル開発手法の1種です。顧客の要望を取り入れながら、要件定義から設計、開発、テストの工程をイテレーションという単位で繰り返し、開発の品質を高めます。

エクストリームプログラミング(XP)とは?わかりやすく解説!|ITトレンド (it-trend.jp)

■リーンスタートアップ
無駄を省きながら、顧客をより満足させる製品やサービスを開発していくマネジメント手法です。
最低限の機能をもつ製品やサービスの試作品を短期間・低コストで作り、計測・学習のサイクルを繰り返すことで、スタートアップの成功率を飛躍的に高めます。

リーンスタートアップとは?MVPやアジャイルとの関係、事例を解説 - 株式会社モンスターラボ (monstar-lab.com)

ウォーターフォールモデルにこんな名前があることを知りませんでした

概要レベルだけささっと調べてみましたが、よくわからないなぁというのが正直なところです
ウォーターフォールとスクラム開発は経験があるので、他のも経験してみたいですね

開発環境

OS

これはどのOS(オペレーションシステム)で開発をしたのか? なので、めちゃくちゃわかりやすいですね!

WindowsやMac、Linuxなどが有名ですね
Linuxについてはさらに細分化されているので、種類はかなり多そうです

特に困ったところはないので、割愛します!

言語

プログラミングといったらコレ! じゃないでしょうか?
プログラミング言語ですね

これも種類が多いですが、困ったところはないので割愛します!

余談ですが、関数型言語としてElixir、競技プログラミングに触れるためにC++あたりが最近興味があります
仕事となると怖いので、時間をつくってどこかで触ってみたいですね

フレームワーク・APIなど

これもプログラミングする上でついてまわるものですね
基本的にはどこの案件でも使っているのではないでしょうか?
なかなかバニラのままつかうことはなさそう。。。

案件独自のフレームワークなどもあると聞いたことがあるので、言語以上の種類が存在していそうです

これも自分の技術分野が広くないおかげで、困ったところはないので割愛します!

汎用系・制御系

この項目は職種の項目でも触れたところですね
職種と同じような理解でよいと思います

汎用系はCOBOLなどで開発する昔のコンピュータの環境ですね

制御系については、汎用系と同じ括りにされていることが不思議なんですが、一般的にはロボットとか自動車などの機械を制御するものですかね

全然別ジャンルっぽいですが、使用する言語が似たところにあるんですかね?

ミドルウェア・サーバ

この項目は知ってはいたんですが、種類については全く知らなかったので、この機会にいくつかピックアップして調べてみました!
(全部は種類が多すぎて諦めました)

ActiveDirectory
windows Server で利用可能なユーザ、コンピュータ、共有フォルダなどの情報を管理するシステム
です。

【初心者向け】ActiveDirectory とは? #初心者向け - Qiita

■WildFly (JBoss Application Server)
オープンソースで開発されている有力なJava EEアプリケーションサーバの一つ。オープンソースとして公開されており、米レッドハット(Red Hat)社が企業向けの商用版「JBoss Enterprise Application Platform」(JBoss EAP)を販売している。

WildFly(JBoss Application Server)とは - 意味をわかりやすく - IT用語辞典 e-Words

■Microsoft Dynamics
Microsoft が提供するビジネスアプリケーションです。
(中略)企業活動を効率的に進めるために必要な業務システムを統合的に提供しています。
(中略)生産性向上や業務効率化の実現をサポートします。

Microsoft Dynamics 365とは?その概要を分かりやすく徹底解説! — Bizwind

■Zope
プログラミング言語Pythonで書かれた、オブジェクト指向ウェブアプリケーションサーバ、もしくはWebアプリケーションフレームワークである。

Zope - Wikipedia

もうお腹いっぱいです

ApatchやnginxやTomcatなどは聞いたことや掠る程度に触ったことはありますが、それ以外となるとさっぱりでした

クラウドコンピューティング

これはちょっとわかりませんでした
クラウドなのでインフラ系かな? と思って調べてみたら、

■クラウドコンピューティング
インターネットを介してITインフラやアプリケーションを提供するサービス形態のことです。クラウドサービスという呼称でも一般的に知られています。

【基礎】クラウドコンピューティングとは? メリットや例をわかりやすく紹介 (dsk-cloud.com)

と、まさしくでした

クラウドって言われてみれば略称だったんですね
意識したことなかったので、全く新しい言葉なのかと思い込んでいました(笑)

クラウドであれば、AWSだったり、Azureだったり、Herokuだったり、よく聞く主流なサービスばかりでイメージ通りなので、細かい種類の調査は割愛します

データベース

DBですね
アプリケーション開発であれば、だいたいデータの管理はDBでしていることも多いので、開発案件にいれば使用する機会は多くありそうですね

有名どころのOracle, MySQL, PostgreSQLなどで種類も限られているので細かい調査は割愛します

ツール、パッケージなど

これは業務効率化ツールや構成管理のツールなどのことですね

タスク管理のBacklogやredmine、チャットツールのChatworkやSlack、コンテナツール?のDocker、エンジニアブログのQiita、バージョン管理のGitなど、幅広く汎用的に使用されるツールを上げているみたいですね

こちらは必要に応じて導入するツールで、調査などなくても影響なさそうなので、割愛

参考資料

今回はエンジニアtypeで定義されている業種、職種について記載させていただきました。

マイページ>スキルシート を選択すると、上記業種や職種のチェック項目がズラっと並んでいます。。。
実際に自分が登録する時にかなり困ったのが、この記事を書いたきっかけだったりします。

さいごに

まず、ここまで読了していただいた方、
ありがとうございます

拙いなんちゃってまとめですが、少しでも活用できる方がいらっしゃれば幸いです
この投稿の元々の目的として、自身の経歴や技術分野をなるべく正確に整理したいという想いがありましたので、一応なんとか叶えられそうです
あとはこの内容を元に自分の経歴を棚卸するだけ。。。

今回の学びとして、インプットやアウトプットが多い記事を書くときは時間をかけて少しずつ進めるのがよさそう! というのがわかりました
というのも、記事の長さをみてもらえればわかるのですが、かなり長いですこの長さを1日で書き上げるのは到底できないです

いままでやってこなかった方法なので不安でしたが、無事投稿することができましたので、必要に応じてこの手段をとっていきたいな、と思いました

まだまだ業界に対する理解や自身のスキルすらも正確に表現できない状態ですが、今回の記事で1歩進んだと思って頑張っていきたいと思います!

ということで改めて、読んでいただきありがとうございました

この記事が気に入ったらサポートをしてみませんか?