ITエンジニアという職業では仕事の効率化を図る為に、開発の分業化・専門化が進んでいる。
そのため同じITエンジニアであってもシステムエンジニア、プログラマ、プロジェクトマネージャーのように専門的職種に分類されていて、職種によって求められるスキルも異なるのだ。
例えば、プログラマ(PG)はプログラミング言語を用いてプログラムの作成・導入をするのが仕事なので、最低1つはscalaやJavaなど得意なプログラミング言語を持つ必要がある。
プログラミング言語の種類は200以上、良く使用されるのは10~20種類だがそれでも数が多い。
JavaやC言語のような定番の言語を採用する企業もあれば、scalaやSwiftのようなトレンドの言語を採用する企業もあり、企業によって求められるプログラミング言語も異なる。
このように専門的職種ごとで求められるスキルが異なるのはもちろん、プログラマのように同じ職種であっても求められるスキルが異なる場合があるのだ。
またシステムエンジニアやプロジェクトマネージャーの場合、技術的なスキルだけでなくコミュニケーションスキルも重要視される。
プロジェクトマネージャーは開発の責任者として予算・人材の管理、他部署との折衝を行い、システムエンジニアはクライアントと意見交換をしてシステムの設計書を作成するのが主な仕事だ。
システム開発はチームで行われるのでPGにもコミュニケーションスキルは求められるが、システムエンジニアやプロジェクトマネージャーのように交渉・意見交換の機会は少ない。