支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡


はじめに

IT、AIなどの人気に伴いプログラミングが注目されるようになりました。さらに働き方改革などによって企業に勤めずクライアントと個人で契約し、仕事をもらう働き方「フリーランス」も世間に認められてきました。

今回の記事では「プログラミングを仕事にするには、どうしたらいいか」「フリーランスの仕事の取り方はどうやるのか」この2つに触れつつ、様々なプログラミングの仕事を紹介していきます。

プログラミングとは

プログラミングとは、プログラミング言語で書かれたコンピューターの説明書きのようなものです。コンピューターにして欲しい動作・処理を書き、複数のプログラムを組み合わせ、複雑でさらに、多機能な処理を行うシステムを作り上げます。プログラミングは私たちの生活の中にたくさん存在します。例えば、SNS・CGM・スマホアプリ・ゲームなどです。

プログラミングの仕事とは

プログラミングを使う職業として、次のものが挙げられます。システムエンジニア・フロントエンジニア・サーバーサイドエンジニア・AIエンジニア・組み込みエンジニア・ゲームエンジニア・データベースエンジニアなどです。まずは1つずつ仕事内容と必須スキル、年収を見ていきましょう。

システムエンジニア

仕事内容は、クライアントの意向に沿いシステムの詳細をまとめながら条件を満たしたサービスの設計図を作ります。必要なスキルは、JavaやPythonなどのプログラミング言語ですが、あまり完璧に使いこなす必要はないようです。最低でも1つ習得すれば十分でしょう。平均年収は約422万円です。プログラマーと比較すると少し高いです。上流工程に関わっているか、マネジメントに多く関わっているか、どのような言語を使っているかが収入アップに繋がります。

フロントエンジニア

仕事内容は、Webアプリの開発・Webサイトを制御するシステムの作成をし、SNSサイトやECサイトを作ることです。必要なスキルは、JavaやHTML/CSS、Pythonなどのプログラミング言語です。平均年収は約450万円でシステムエンジニアより多少高くなります。

サーバーサイドエンジニア

仕事内容はサーバー側の処理やプログラムの開発、サーバーで扱うデータ管理などです。Web上では目にすることのできない、裏の開発や保守をしています。サーバーサイドエンジニアにはサーバーサイド言語が必要不可欠です。またデータベースの知識、フレームワークを学習しておく事で効率化にも繋がります。年収は約380万〜660万です。中でも40代と50代は、20代と30代に比べ100万円程年収が変わってきます。

AIエンジニア

仕事内容は、最先端技術であるAIの開発や蓄積されたデータの分析などです。AI技術の研究や海外論文のリサーチ・アルゴリズムの開発・精度向上のチューニング・学習用データの構造化・整理です。必要なスキルは、Python・R・Juliaなどのプログラミング言語、英語力も求められる時もあります。最先端の研究をしているので、常に日々のスキルアップが求められます。平均年収は約595万円と高収入となっています。

組み込みエンジニア

仕事内容は、自動車や家電などハードウェアに使用される制御システムや組み込みソフトウェアの開発です。必要なスキルはC・C++・Java・Microsoft Visual Basic・アセンブラ言語、英語力も求められる時もあります。専門性が高くなるので、担当する機器への深い知識が求められます。平均年収は約550万〜600万です。特にC言語の習熟度で収入が変動すると言われています。

ゲームエンジニア

仕事内容は、ゲームソフトメーカーのプログラミングです。デザインやサウンド系の分野も仕事の一つです。必要なスキルは、C#・Swift・JavaScript・C++・Luaで平均年収は約500万円です。ゲームプログラマーの平均年収440万〜480万円と比べると、多少エンジニアの方が高い事がわかります。

データベースエンジニア

仕事内容は、データベースの開発・設計・運用・管理を行います。企業の情報システムを支えるには、必要不可欠です。必要なスキルは、プログラマーやシステムエンジニアの実務経験です。平均年収は約500万円です。

プログラミング言語ごとの年収

1位「GO」600万(サーバーサイド言語の一つ、メルカリも使用)
2位「Scala」600万(難易度が高く、TwitterやLinkedlnも使用)
3位「Python」575.1万(AI分野で取り入れられている)
4位「Kotlin」575万(静的型付のオブジェクト指向)
5位「TypeScript」575万(省略も可能な静的型付でクラスベースオブジェクト指向)
6位「R」574.8(オープンソース・フリーソフトウェアの統計解析向け)
7位「Ruby」550万(IEC認証。オブジェクト指向)
8位「Swift」550万(アップルで利用可能。WWDCで発表された)
9位「Perl」525万(実用性と多様性に長けている)
10位「C」525万(コンパイル型)

フリーランスになりやすい言語

1位は「Java」です。主にシステムエンジニアで使われ、安定性が高く開発も容易です。2位は「PHP」です。サーバーサイド、フロントエンジニアなどで使われ、手軽です。3位は「JavaScript」です。サーバーサイド、フロントエンジニアなどで使われ、Web開発に強く環境構築が不要です。

1位の「Java」はWeb開発、アプリケーション開発、システム開発どの環境でも利用することができるため昔から根強い人気があります。うまく使いこなすことができれば仕事がなくなることはないでしょう。

2位の「PHP」も汎用的で様々な開発で使用されており比較的に初心者の方が学びやすい、シンプルな言語のため昔から根強い人気があります。

3位の「JavaScript」はブラウザ上で動くプログラミング言語です。サーバーサイドで動くプログラミング言語はいくつもありますが、ブラウザ上で動く言語はJavaScriptだけです。

フリーランスの仕事の取り方

初めは仕事を取るのが困難だと言われています。そこで、これから5つ仕事のフリーランスの仕事の取り方を紹介します。

ポートフォリオを作成する

自分が今までどのような経験をしてきたか、どのような仕事をしてきたのか、実力を一目で理解できます。ポートフォリオが無ければどれだけの経験や技術を持ち合わせていてもそれを示すことができないので、必ず作成するようにしましょう。フリーランスで仕事を取る上で最も重要な大切なことです。

エージェントを使用する

自分のやりたい案件を営業代行で紹介してもらう事ができます。一度案件を受けると継続的に仕事を受けられる可能性が高いです。信頼を得るためにも丁寧に仕事に取り組みましょう。

紹介してもらう

今までの人脈、横のつながりで仕事を紹介してもらうことがあります。フリーランス特有の方法です。紹介するクライアントは、あなたの実力や経験を把握済みのため知人や周りに伝えてもらう事ができます。

営業パートナーを持つ

自分で全て仕事を回すことは大変です。フリーランスの場合、案件を進めながらも次の仕事を取っていかなければ、終了次第仕事がなくなってしまいます。そこで、次の案件への準備も含めて手伝ってもらえるパートナーを持つと仕事も効率的になるでしょう。

とりあえず応募する

世の中には数え切れないほどの案件が存在します。とりあえずたくさん応募しましょう。「数打ちゃ当たる 」戦法です。どれだけ優秀な人でも一度に複数の案件に応募しています。もしあなたが実務未経験なら、もっと多く応募する必要があるでしょう。応募しないことには始まりません。

仕事を取る際の注意点

フリーランスが仕事を受ける際に注意すべき点をいくつか紹介します。

単価が低すぎる案件

クライアントの中には、実務未経験のフリーランスを狙って、低単価で仕事をしてもらおうとする人います。低単価で仕事を受けてしまうと、時間をかけて制作する割に報酬が少ないということになってしまいます。「まず実務経験を積みたいから報酬は気にしない」と考えるのであれば低単価でも受けてみましょう。しかし低単価で仕事を提供する企業の中には理不尽な要求を言ってくることもあり得ますので、十分に気をつけましょう。

曖昧なまま仕事を進める

仕事内容を事細かに確認し、定義する事が重要です。わからないままだと逐一尋ねることになり、効率が悪く印象も悪くなってしまいます。後々、意見を変えられたなどと言われないように、案件に入る前にしっかりとした説明を受けましょう。

まとめ

プログラミングの仕事はこのように様々な職種があります。フリーランスの仕事を受けるのは困難ですが、人脈と売り込みが重要となる事がわかりました。プログラミングを仕事にする際は、自分に合った案件で自分に合った言語を学ぶ事が大切となってきますね。