エンジニアという職業を思い浮かべる時、パソコンに向かって黙々と作業しているイメージが強いというのは誰もが思い浮かべるのではないでしょうか。
しかし、エンジニアの仕事は非常に多岐にわたり、働き方も全く異なることから、未経験からエンジニアを目指したい人にとっては自分がどういったエンジニアになりたいのかをある程度イメージしておくことはとても重要です。
また、プログラミングスクールに通ってエンジニアを目指そうと考えている人も行きたい企業によって習得すべきプログラミング言語も異なってきます。
そこで今回はITエンジニアの仕事とはそもそもなんぞやということで、エンジニアの仕事に興味がある人に向けて最低限知っておいた方が良い知識について解説したいと思います。
ITエンジニアとは
ITエンジニアとはITに関わる技術者全般の人達のことを言います。
そのため、IT業界で働く技術者の人達は皆このカテゴリーに属しているというわけです。
そのカテゴリーをさらに細かく分類すると以下のようになります。
・システムエンジニア(SE)
・開発エンジニア
まず、エンジニアの仕事の流れとしては
①要件定義→②設計→③開発→④テスト→⑤運用保守といったように分かれており、各工程に応じてエンジニアとして任される仕事内容も異なります。
ただ、どの企業でも上記のように必ずしも明確に定義されているというわけではありません。
例えば、企業によってはシステムエンジニアと開発エンジニアといった区分けが存在せず、両方とも携わるエンジニアもいますので、就職活動の際は求人票をしっかりと確認しておきましょう。
では、まずはシステムエンジニアから解説します。
システムエンジニア(SE)
システムエンジニアとは顧客の要望をヒアリングしながら、システムの設計書を作成するエンジニアのことを言います。
上記の工程の項目としては主に①②にあたりますが、企業によっては①〜⑤の全てを任されるところもあります。
いわゆるSEと呼ばれる人達ですが、具体的にはクライアントからどんなシステムが必要なのかをヒアリングし、そのシステムを開発するためにはどういった機能が必要になるのか、また期限をいつまでに設定し、人員や予算をどれほどに抑えるのかといった業務もとりまとめて行います。
エンジニアと聞くとパソコンに向かって黙々と作業を行うイメージが強いかもしれませんが、システムエンジニアは顧客とのやり取りが必要なので、クライアントの要望を正確に汲み取るための高いコミュニケーション能力が求められます。
さらにクライアントの要望に沿った設計書を作成するための文章力や論理的思考力も必要となるでしょう。
また、経験年数が上がるにつれてプロジェクトリーダー、プロジェクトマネージャーといったように仕事を先導したり、管理するような立場も任されるのが特徴です。
そのため、社内で黙々と作業するよりかは外に出て顧客とのやり取りも行いたいという人にとってはシステムエンジニアがオススメかもしれません。
開発エンジニア
開発エンジニアはシステムエンジニアから指示された設計書をもとに開発を行い、機能を実装していくという仕事がメインになります。
上記の工程の項目としては主に③ですね。
一般的にはプログラマーと呼ばれますが、さらに細かく分類するとフロントエンドエンジニアやサーバサイドエンジニアといったように担当する機能によって求められるスキルも異なります。
フロントエンドエンジニアとは、HTMLやCSS、Javascriptといった言語を用いることで画面部分を実装していく仕事になります。
一方で、サーバサイドエンジニアとは画面の裏側の見えない部分を担当する仕事です。(例えばログイン機能など)
いわゆるRubyやPHP,Javaといったプログラミング言語を用いてコードを書いていくのですが、Webサイトを作成する場合はフレームワークといってWebサイトを効率的に作成するためのツールを用いて実装していくことが多いです。
例えば、Rubyのフレームワークはruby on rails、PHPはLalavelといったものがあります。
上記で挙げた仕事は客先に出向いて仕事をするようなことはあまりなく、社内で開発を行うケースがほとんどです。
そのため、顧客対応がないため、服装や髪型も自由なところが多くラフな雰囲気で仕事したいと考えている人にとっては開発エンジニアを目指すのがオススメでしょう。
WEBエンジニア
開発エンジニアの中でもWEBサイトのようなWEBアプリケーションサービスを開発するエンジニアのこと全般を言います。
具体的にはメルカリやGoogleといった自社でサービスを提供しているような企業を思い浮かべるとイメージしやすいのではないでしょうか。
上記でも少し述べましたが、フロントエンドやサーバサイドだけでなく、ネットワークやデータベースの知識、運用や保守といったように求められる工程も幅広いです。
スマホの普及もあり、WEBアプリケーションサービスも急速に増えていることからWEBエンジニアの需要は今後ますます拡大していくのではないかと考えられます。
未経験から入社するにはWeb系企業は非常にハードルが高いですが、一度入って経験を積んでさえしまえばエンジニアとしての市場価値はグッと高まります。
特にリモートワークを行いたい人や、将来フリーランスエンジニアを目指したい人にとってはオススメです。
また、有料プログラミングスクールで学習するカリキュラムはWeb系企業で働くことを前提にしている場合が多いです。
そのため、もし仮に行きたい企業が具体的に決まっているようであればその企業で求められるプログラミング言語やスキルに沿ったスクールを選んでおくのがベストでしょう。
インフラエンジニア
ネットワークやサーバを構築したり運用することでシステムを正常に稼働させるためのエンジニアを言います。
つまり、普段PCやスマートフォンで利用しているサービスを下支えする役割を担っているのです。
インフラエンジニアにはさらにサーバエンジニアとネットワークエンジニアに分類されますが、少しややこしいのでここでは割愛します。
フロントエンドやサーバサイドといった仕事に比べると人気度はやや劣りますが、需要は非常に高く今後もさらに伸びるのではないかと考えられます。
仕事内容は全く異なる
いかがでしたでしょうか
厳密に分類するとさらに細かくなりますが、未経験からIT業界にエンジニアとして入社するために知っておく知識としてはだいたい上記のいずれかに分類されることになるかと考えられます。
ITエンジニアと言っても働き方も仕事内容も様々です。
これからプログラミングを学習し、エンジニアを目指そうと考えている場合はぜひ自分の将来のエンジニア像も見据えながら取り組んでみてはいかがでしょうか。
では今日はこのへんで!
Warning: Trying to access array offset on value of type bool in /home/byksi/lifebyksi.com/public_html/wp-content/themes/jin/cta.php on line 8
Warning: Trying to access array offset on value of type bool in /home/byksi/lifebyksi.com/public_html/wp-content/themes/jin/cta.php on line 9