20代で転職を検討されている方へ


今IT技術者に興味ある人が知っておくべきポイント

2017年に「なってみたい職業」のアンケート調査がネット上で行われました。この時、No1になったのがIT技術者です。アンケートに答えた人が「IT技術者」と選択した際に、具体的にどんな仕事をする人だと想像したかは多岐に渡ります。一言に「IT技術者」といっても、「システムエンジニア」のように要件定義や設計を主に行うような人や、「プログラマ」のようにプログラミングをする人もいる等、大変広い意味で捉えることができてしまう単語なのです。IT技術者には具体的にどんな職種があるのかを紐解いてみます。

様々な分野のIT技術者達について

システムエンジニア

顧客の要望をヒアリングし、システム化要件としてまとめて要件定義書や設計書を作成するのが主な仕事です。所属する会社によっては、プロジェクトマネージメントやプログラミングをしたり、テストをすることもあり、システムの運用・保守まで担う場合もあります。IT技術者と同様に広い意味で受け取れてしまう職種ですが、一般的には上流工程を主とするエンジニアを指します。

プログラマ

コンピューターを動かす「プログラム言語」をコーディング(記述)して、ソフトウェアを作るのが主な仕事です。コーディング以外にも、詳細設計書の記載、デバッグ、ソフトウェアテスト、プログラムモジュールの設置・設定、プログラム解説書の作成やシステムマニュアル作成等を行います。

サーバサイドエンジニア

サービスを提供するサーバシステムに関する設計・構築や保守を行うエンジニアです。具体的にはWebサーバやメールサーバなどを構築し、サーバ上で動作するシステムをプログラミングします。システムを利用するユーザから直接的に見えない裏舞台の仕掛けを作ることあから「バックエンドエンジニア」と呼ばれることもあります。

フロントサイドエンジニア

システムを利用するユーザが直接的に見て・操作する画面イメージを設計したり、画面の動きをプログラミングします。例えば、PCとスマートフォンのそれぞれの環境において、機能的で使いやすい画面フォームを提供しようとしたとき、高度な技術や複数のプログラミング言語の習得が必要になることもあります。最近では画面の見た目の奇麗さや、スタイリッシュ感などが求められることも多く、単純なコーティング力以外にもデザインセンスが求められるようになってきています。

セキュリティエンジニア

システムはとりあえず動けばいいというものではありません。システム上で扱う情報を正しく管理し、不正に利用されたり、情報を抜き取られないように対策を行っておく必要があります。たとえば、「個人情報の漏洩」などが起こらないように、コンピュータウイルスや情報漏洩の防止のためのセキュリティ管理ツールを導入・設定・保守します。フロント・サーバエンジニアが製造したシステム上にセキュリティホールがないかを確認・テストするようなことも行います。ネットワーク、サーバー、アプリケーションのそれぞれの部分に潜む脆弱性をみつけるための幅広い知識や技術が要求される職種です。

インフラエンジニア

ネットワークやサーバ、ストレージやデータベースといったシステムインフラ全般の設計・構築を行います。昨今はインフラがクラウド環境にある場合も増えており、クラウドエンジニアもインフラエンジニアの中の1種という考え方に近いです。

 

今、IT技術者は不足しています

IT技術者は慢性的に不足しています。その背景として、目まぐるしく進化・変化する技術への対応するために、新たな環境の構築や、新環境で動くシステムの構築・調整が必要になるため、新しいことができる技術者が常に求められます。一方、新しい環境へすぐに移行できない・しないというユーザも多数いるため、旧来の技術に対応できる技術者も必要です。IT技術者が対応する範囲が日々増えているのです。

また、IT技術者として育つには、技術習得や経験が不可欠です。一朝一夕でIT技術者が増えないことや、途中で挫折してしまう人がいるのも事実です。Web化の波や、スマートフォンへの対応、クラウドの普及、ビッグデータやIoT、ARやAIといった流行りの部分においては特に需要が供給を上回っているのです。

IT技術者に必要なスキル・資格とは

人材不足の状況もあり、未経験者でも募集をかけている企業は多数あります。研修制度によって必要な技術者を育てていくという考えを持っている企業もあれば、簡単な作業から始めて少しずつステップアップを促すとい企業もあります。それでも、未経験の方は自分でもできるのか不安があると思います。目指す職種がプログラマか、インフラエンジニアかでは必要される技術やスキルにも違いがあるため、IT技術者になる前、または、なってから早くに習得しておくべき汎用的なオススメの資格を3つ紹介します。

基本情報技術者試験

独立行政法人情報処理推進機構(IPA)が実施する国家資格である情報処理技術者の資格はIT技術者の多くの人が取得している資格です。基礎、応用、スペシャリストと段階が分かれているため、自身の現在の知識やスキルに合わせて取得資格目標を設定することが可能です。基礎知識が不足している状況であれば、まずは基本情報技術者を目指しましょう。

応用情報技術者試験

基本情報技術者資格をすでに保有している、または、情報課等がある大学や専門学校などを卒業しているような場合には、応用情報技術者資格をおすすめします。その先のスペシャリスト資格については実際にIT技術者となって、職種や求められるスキルが明確になった上で方向性を考えてからでも遅くはありません。

ITILファンデーション

ITILは、Information Technology Infrastructure Libraryの略で、「アイティル」と読みます。英国の政府機関から出版された、ITシステム運用管理のためのフレームワークのことで、ITILの理解を証明する入門編の資格としてITILファンデーションがあります。システムエンジニアやインフラエンジニアには特におすすめの資格ですが、プログラマにとってもシステム運用管理の基礎知識・お作法として是非取得しておいてもらいたい資格です。

 

目的別!おすすめのプログラミング言語

プログラミング言語は多数あり、どれを最初に覚えたらいいのかはよく悩みます。ここでは、どんなことをやりたいかの目的別でおすすめ言語を紹介します。

スマートフォンのアプリケーションやWebシステムを作りたい

「クックパッド」、「Hulu」、「Gunony」、「価格.com」、「クラウドワークス」、「食べログ」のWebページを見たことがあるでしょうか?また、これらはスマートフォン用のアプリも公開しており、使いやすいサイトやアプリを提供していることで有名です。これらを実現するのに用いられている言語が「Ruby」です。Rubyは日本人開発者のまつもとゆきひろ氏によって1995年に開発・発表された言語で、シンプルで直観的な文法なのが特徴です。2004年にはRubyをより使いやすくするためのフレームワーク「Ruby On Rails」が発表され、開発効率の高さから現代においてもプロジェクトに採用される機会が多いです。言語のコンセプトとして、知識の少ないプログラミング初心者にも分かりやすく楽しく快適に記述することができるように作られていることから、これから言語を覚えていく人の入門言語

としても適しています。

Webシステムのカスタマイズやアドオンでレベルアップしていきたい

当記事の冒頭で2017年のネットアンケートで「なってみたい職業」にてIT技術者をNo1にしたのはドラマの主人公がIT技術者であった影響と言われていま。その主役が主に用いていた言語が実は「PHP」です。「PHP」で構築されている有名なサイトが「Yahoo!」「Wikipedia」「ニコニコ動画」「Pixiv」です。他にもブログで有名な「WordPress」がPHPで構成されています。各種ブログサイトは「WordPress」を「PHP」で使って独自改良し、ブログ記事に工夫を凝らして運営しているのです。このため「WordPress」を独自カスタマイズする案件は数多くあります。私たちがよく目にする大半のブログの裏側で「PHP」が活躍しているのです。

上記で述べてきた「PHP」とは、Webサービスを開発できるサーバサイドで動作するスクリプト言語です。有名なWebサービスを開発できるスクリプト言語である「JavaScript」との違いは、「JavaScript」がクライアントサイドで動作するということです。「PHP」はサーバサイドで利用する「Java」などの言語と比べると簡単に習得することができ、プログラミング初心者であってもはじめやすい言語です。インターネット上にサンプルや解説が多数あり、情報収集がしやすいというのもメリットです。大小さまざまなシステムがPHPで構築されていることもあり、案件も小さいものから大きいものが多彩にあるため自身の技術レベルや経験値に沿って案件をレベルアップしていくようなことも可能です。

組み込みアプリ開発やディープラーニングをやってみたい

昨今、AI(人口知能)の話題には事欠きません。人口知能に関係する仕事に携わってみたいが、具体的に何から学んでいけばよいのか悩む人も多いと思います。そんなAI初学者にオススメなのが「Python」です。「Python」は最近になって日本でも脚光を浴びてきていますが、これまでは欧米で人気がある言語でした。このため、欧米におけるAI分野において「Python」が多く活用されているのです。「Python」は「Google」や「NASA」が関与する一部でも利用されていることから、「Python」ができるエンジニアをGoogleが募集してることも有名です。例えば、Googleが開発したディープラーニングのフレームワークであるTensorFlowは「Python」で記述されています。TensorFlowはオープンソース化されているため、TensorFlowをカスタマイズしながら自社のAI利用に活用する企業も増えています。