プログラマーへの転職を目指すためには資格は必要なのか、何をすれば良いのか疑問を抱いている方は多いのではないでしょうか。
プログラマーとして採用されるためには資格の取得は必須ではありません。プログラミング言語に対する知識をアピールできますが、採用を検討する際にはあまり考慮されないというのが現実です。
プログラマーへの転職を目指すのであれば、転職先で必要とされるプログラミング言語への知識と実績の提示が必要になります。この記事ではプログラマーの仕事内容や種類・学習方法について解説していきます。
目次
プログラマーとは
鈴木
鈴木
プログラマーの仕事内容
プログラマーの仕事内容は、プログラミング言語を用いてさまざまなシステムやソフトウェアを作ることです。システムやソフトウェアの開発のほかに、計画通りに稼働するかをテストしたり、意図しない動作が発生しないかどうかのテストを繰り返すといった作業も必要になります。
プログラマーの将来性
プログラマーは慢性的な人材不足なので常に需要があります。2019年のプログラマーを含めたIT技術職の求人倍率は約8倍と、非常に高い需要がある職業です。2030年のIT人材の需要と供給の差は16.4万人~78.7万人に達すると予測されており、将来性の高い職業と言えるでしょう。
参考:IT 人材需給に関する調査 https://www.meti.go.jp/policy/it_policy/jinzai/houkokusyo.pdf
プログラマーの年収
2019年プログラマーの平均年収は約420万円です。2018年の日本の平均年収約440万円とほぼ同じなので、他の職種との大きな差はないということになります。ただし、プログラマーの年収は、扱える言語や所属する企業によって大きく変わります。
2018年プログラミング言語別年収TOP5
順位 | 言語 | 年収中央値(万円) | 最大提示年収(万円) | 求人数(件) |
---|---|---|---|---|
1位 | GO | 600 | 1,600 | 2,202 |
2位 | Scalc | 600 | 1,300 | 1,489 |
3位 | Python | 575.1 | 1,499 | 9,344 |
4位 | Kotlin | 575 | 1,200 | 961 |
5位 | TypeScript | 575 | 1,200 | 667 |
システムやソフトウェアの開発には多くの人がかかわることもあり、元受け企業だけでは開発ができません。その場合には下請け・孫請け企業へ業務を委託することもあります。
IT業界は典型的なピラミッド構造なので、ピラミッドの上層で働くことができれば年収は多くなりますが、下層で頑張って働いても年収は増えないという現実があります。
参照1:職種別平均年収ランキング【最新版(2019年)】
参照2:プログラミング言語別年収中央値を発表
参照3:平成30年分民間給与実態統計調査結果について
※年収中央値が同じ場合は最大提示年収が高く、求人数が多いものの順位を上位とするプログラミング言語別年収:求人検索エンジン「スタンバイ」調べ
プログラマーの種類
プログラマーといっても開発するものによって主として使用する言語は全く変わります。
トレンドの言語は毎年変化があり、新言語が登場すれば覚える必要があるので、常に向上心をもって学習し続ける必要があります。
主なプログラマーの種類は以下の通りです。
ゲーム系プログラマー
アプリケーションプログラマー
組み込み系プログラマー
汎用系システムプログラマー
通信系プログラマー
プログラミングをおこなう会社は、主に制作するものが決まっています。WEBサイト制作会社はゲームアプリはおこなわないですし、ゲームアプリ制作会社は汎用系システムをおこなうことはありません。
つまり、就職する企業によって求められるプログラマーの種類は異なるということです。どの企業に転職するかを検討する前に、どのプログラマーを目指すのか、何を開発したいのかを決めておきましょう。
WEBプログラマー
WEBプログラマーは、WEBサイトやWEBサービスの開発をおこないます。WEBデザインのスキルやセキュリティに関する知識も必要になります。
フリーランスでWEBサイトを制作を請け負っている人も多いです。プログラマーの中では比較的に年収が低い傾向にあります。
ゲーム系プログラマー
ゲーム系プログラマーはスマホアプリなどのゲームを開発します。CGやVR、AIなどの最先端技術を利用して開発することが多く、新技術にいち早く触れることができる職業です。
アプリケーションプログラマー
アプリケーションプログラマーは、PCやスマホ、タブレットで利用できるアプリケーションを開発します。
アプリケーションを利用するデバイスによって使用する言語が変わるので、多岐にわたるプログラミング言語に対する知識とスキルが求められます。
組み込み系プログラマー
組み込み系プログラマーは、家電製品などを制御するプログラミングをおこないます。
日常生活で使うものから最先端機器まで組み込み系システムが使われている機器は多いので、幅広い企業からの需要がある職業です。
汎用系システムプログラマー
汎用系システムプログラマーは、大企業や政府機関などで使われる大型コンピューターのシステム開発をおこないます。
大企業や政府機関などで使われるシステムを開発するため、他のシステム開発と互換性がないので、特化した技術を求められる職業です。
通信系プログラマー
通信系プログラマーとは、通信に関するシステム開発をおこないます。クラウド型のサービスが増えているので、需要の多い職業です。
プログラミング言語の知識
プログラマーの仕事のほぼすべてがプログラミングです。システムやソフトウェアの開発をおこなうためには、プログラミング言語に関する知識と正確に稼働するコードが書けるスキルが必要になります。
プログラミング言語はどれかひとつだけ習得すれば良いわけではありません。作成するシステムやソフトウェアによって使われるプログラミング言語は違うので、業務に合わせて必要な言語を使い分けることになります。
そのため、幅広いプログラミング言語を使えるプログラマーは企業からの需要が高いです。
論理的思考力
プログラミング言語を使って求める処理を正確に実行するためには、コードが論理的に記述されている必要があります。
作成したシステムが想定通りに稼働しなければ、原因はどこにあるのか、どうすれば改善できるのかを論理的に考えて修正しなければいけません。
コミュニケーションスキル
プログラマーは一人で業務をおこなうことが多いですが、大きなプロジェクトであればチームを組んで作業を分担することもあります。
プロジェクトマネージャーからの指示に従い、チームのメンバーとコミュニケーションを取ることが大切です。
マネジメントスキル
プロジェクトを動かすためにはマネジメントスキルが重要になります。複数のプログラマーに対して的確に指示を与え、問題点があれば解決策を提示し、メンバーを効率よく動かす必要があります。プログラマーの多くは個人でおこなっているため、マネジメントスキルがある人材は貴重です。
未経験でもプログラマーに転職できる?
鈴木
鈴木
プログラマーは複数のプログラミング言語を扱う技術職です。他の職種と比較すると、未経験での転職はハードルが高くなっています。企業で仕事をした経験がなくても、独学でプログラミングを学習してソフトウェアなどの開発ができるなどのスキルがあれば、転職は可能です。
20代なら将来性に期待される
企業が20代のプログラマーを採用する場合には、即戦力として採用するというより使えるレベルになるまで教育しようと考えて採用します。そのため、20代の転職なら未経験でも大きな障害とはならないことが多いです。
30代・40代はスキルがないと難しい
プログラミングをおこなう企業は、30代・40代に対してゼロから教育する余裕がない場合がほとんどです。30代・40代でプログラマーとして転職を目指す場合には、プログラミング言語に関する知識やスキルを身に付けておく必要があります。
50代以降はマネジメントスキルが重視される
50代でプログラミングに関する知識や実績がなければ採用されるのは難しいです。プログラミングに関する知識や実績があり、マネジメントスキルがあれば採用される可能性があります。プロジェクトを動かすためにはマネジメントスキルが重要です。プログラマーでマネジメントスキルがある人は少ないのでマネジメントスキルがある人材は重宝されます。
学習すべきプログラミング言語の選び方
プログラミング言語といっても種類が非常に多いので、どの言語を学習すればよいのか分からないのではないでしょうか?学習する言語を適当に選んでしまうと、入社した会社では使わない可能性もあります。目的を明確にして学習するプログラミング言語を選びましょう。
目指す職種で使われる言語を選ぶ
プログラミングでは、なにを開発するかで使われる言語が変わります。
WEBサイト開発では、HTML・CSS・JavaScript・PHPが主に使われています。
特にPHPはWEBサイトに動きや変化をつけることができるため重要な言語です。iPhoneアプリ開発ではSwiftが重要な言語ですが、アンドロイドアプリ開発で使われることはありません。
このようにプログラマーの種類や就職する企業によって必要になるプログラミング言語は大きく変わるので、目指す職種や企業に合わせて学習する言語を決めましょう。
求人数の多い言語を選ぶ
特に目指す職種や企業があるわけでもなく、制作したいものが決まっているわけではないのであれば、人気のあるプログラミング言語から学習する言語を選ぶ方法もあります。
ただし、選んだ言語が自分に合うかどうかは分からないですし、その言語を使用する会社に就職できるとは限りません。
2019年の求人数TOP5
PHP
Ruby
C#/C#.net
JavaScript
参照:レバテックキャリア-プログラミング言語別求人ランキング【2019年6月発表】
プログラミング言語の学習方法
プログラミング言語の学習方法は主に以下の3種類です。
・書籍
・オンライン学習サイト
・プログラミングスクール
それぞれメリット・デメリットがあるので、自分の状況やかけられるお金と時間で学習方法を決めましょう。
書籍
書籍でプログラミング言語の学習をする方法は、理論は学べるけど実践ができない、多少お金がかかるという特徴があります。
プログラミングは理論より、どれだけコードを書けるかが重要です。書籍だけだと自分でコードを書きながら学習することが難しいので、自分で環境を準備してコードを書く練習をする必要があります。
オンライン学習サイト
オンライン学習サイトは、ネット環境だけでお手軽に始めることができて、お金がほぼ必要ない点が特徴です。画面を見ながら学習ができてコード入力の練習もできるので、プログラミング初心者でも始めやすい学習方法です。
毎日コツコツ自分のペースで学習できる人におすすめの学習方法です。途中で挫折したり、飽きてしまうことが多いことがデメリットになります。
プログラミングスクール
プログラミングスクールは、以下の特徴があります。
体系的なカリキュラムが用意されている
転職保証されるところもある
費用が高額(10万~数十万程度)
比較的まとまったお金が必要というデメリットがありますが、一番効率よく学習できる方法です。
プログラマーに資格は必要か
鈴木
鈴木
資格の取得はプログラマーへの転職で必須ではありません。ただし、プログラミングスキルを客観的に伝えられるので、資格の保有は有利に働くといえるでしょう。採用時に資格を重視するかは企業の考え方次第になります。
資格の取得はプログラマーへの転職で必須ではない
企業がプログラマーを採用する際に、プログラミングの資格があっても実務をおこなえるかどうかの判断ができません。
プログラミングの現場では、理論より実践できる能力が重要です。プログラミングの資格ではプログラミングの能力を判断できないので、転職では重視されていません。
プログラミングスキルを客観的に伝えられるので、資格の保有は有利に働く
プログラマーとしての実務経験もなく、他にプログラミングの能力を提示できる材料がない場合には、何もないよりは資格があった方が客観的な判断材料にはなります。
資格を重視するかは企業の考え方次第
プログラミングの資格には実質的な意味はないと考えるエンジニアが非常に多いです。求人募集でも言及されていることは稀なので、採用を担当する人も同様に考えるケースが多いようです。
ただし、資格の取得を昇進の条件としている企業もあるので、可能であればプログラミング学習をする仮定で資格の取得を目指してみましょう。
プログラマーへの転職で資格を取得するメリット
プログラミングの資格を取得するメリットは以下の3点になります。
・スキルやレベルを客観的に示すことができる
・体系的に習得できる
・やる気をアピールできる
スキルやレベルを客観的に示すことができる
プログラミングの資格を取得することで、プログラミングに関する知識やスキルを客観的に示すことができます。
自分がどれだけプログラミングの知識があるのか、スキルはどの程度なのかを口で説明することは非常に困難です。自分のスキルやレベルを相手に伝える方法として、資格の取得は有効な手段になります。
体系的に習得できる
プログラミングでは、幅広い範囲のスキルや知識が必要になります。資格を取得するためには基礎からしっかりと理解し、知識とスキルを身に付けることが必要です。資格の取得を目指すための学習の過程で、知識やスキルを体系的に学習できます。
やる気をアピールできる
資格を取得することは、新しいことにチャレンジしようとする成長意欲があると判断されるため、やる気をアピールできます。プログラミングの分野では新技術を必要とすることが多いので、成長意欲をアピールできることは重要な要素です。
プログラマーに関する資格
プログラミング初心者におすすめの資格は以下の6つです。
基本情報技術者試験
PHP技術者認定初級試験 初級
Ruby技術者認定試験 Silver
C言語プログラミング能力認定試験 2級
Javaプログラミング能力認定試験 3級
ITパスポート試験と基本情報技術者試験が国家資格で、ITに関する幅広い範囲の知識を認定する資格です。
その他の資格は民間資格で、プログラミング言語の知識とスキルを認定する資格となっています。
資格の難易度について
資格によっては等級が分かれているものもあり、自分の知識・スキルに合わせて選択できます。
上記で紹介した資格は、プログラミングの知識が全くなくても独学で挑戦できる難易度です。書籍やテキストを利用して約1~3か月の学習で取得できます。
ITパスポート試験
ITパスポートは、ITに関する基礎的な知識を証明する、経済産業省の国家試験です。ITに関する幅広い分野から基礎的な内容が出題されます。
受験資格
誰でも受験が可能です。
難易度
合格率は、2018年で51.7%、2019年で54.3%(参照:情報処理推進機構)となっています。
受験申込:独立行政法人情報処理推進機構 (lPA)
基本情報技術者試験
基本情報技術者試験は、情報セキュリティやネットワーク、データベースなどの基本的な知識やスキルを認定する、経済産業省の国家試験です。
受験資格
誰でも受験が可能です。
難易度
プログラミングの知識がない人の場合で、3か月~半年程度の勉強時間が必要です。
合格率は、2018年で28.9%、2019年で22.2%(参照:情報処理推進機構)となっています。
PHP技術者認定初級試験 初級
PHP技術者認定試験は、PHPの知識とスキルを証明する試験です。PHPに関する唯一の資格で、PHPのスキルを客観的に証明できます。
受験資格
誰でも受験が可能
難易度
7割正解で合格
Ruby技術者認定試験 Silver
Ruby技術者認定試験は、Rubyによるシステムの設計・開発・運用の習熟度を測定する認定試験です。
Rubyの開発者であるまつもとゆきひろ氏が理事長として就任している、非営利団体Ruby Associationによって運営されています。「Silver」「Gold 」の2種類に分かれており、「Silver」はRubyの文法知識・クラスとオブジェクト・標準ライブラリの知識などの基本的な技術レベルを認定します。
受験資格
誰でも受験が可能
難易度
正解率75%以上で合格
認定:Rubyアソシエーション
C言語プログラミング能力認定試験 2級
C言語プログラミング能力認定試験は、C言語のプログラミング技能を認定する試験です。
受験資格
誰でも受験が可能
難易度
2級の難易度:小規模のプログラムの作成、基本アルゴリズムの理解
1級の難易度:言語処理系、ユーティリティなどの応用プログラムの作成
認定:株式会社サーティファイ
Javaプログラミング能力認定試験 3級
Javaプログラミング能力認定試験とは、Javaに関する基本知識や、アプリケーションプログラムを作成できる能力を認定する資格です。
受験資格
誰でも受験が可能
難易度
2019年度平均合格率:64.7%(参照:株式会社サーティファイ)
認定:株式会社サーティファイ
まとめ
プログラマーへの転職を目指すのであれば、プログラミング言語を優先して学習する必要があります。転職採用担当者が重視するのは、プログラミング言語に関するスキルの高さです。
プログラミングに関する資格は採用に対する影響力がかなり低く優先して取得するのは効率が悪くなります。実務経験もプログラミングに関する知識もなくプログラマーへの転職を目指すのであれば、転職先で必要とされるプログラミング言語の学習をはじめましょう。