プログラミング言語は色々な種類があり、どれを学んだら良いのか判断しにくいですよね。
「今から始めて、一番早く稼げるようになりたい。」
「在宅でも仕事ができるほうが良い。」
そんなふうに思う人におすすめなのは、在宅リモート環境で仕事をしやすいWeb系のプログラミング言語。
中でもPHPが一押しです。
反対にC言語やJavaなど組み込み系言語はおすすめできません。
40才直前で脱サラしてフリーランスのプログラマになった僕が、稼ぎやすい言語と稼げにくい言語を紹介します。
在宅フリーランス希望の人が稼ぎやすいプログラミング言語はPHP
在宅フリーランス希望の人には、PHPがおすすめです。
理由は、他の言語と比べて報酬が高いからではありません。
稼ぐためには、報酬が高いことと、求人数が多いことという2つの条件が必要ですが、PHPは圧倒的に求人数が多いのです。
こちらは100以上の求人サイトのデータをもとに、プログラミング言語別・案件数と年収の関係を示したグラフです。縦軸が年収、横軸が案件数を示しています。
参考:HRog フロッグ「プログラミング言語別給与ランキング」
GoやKotlinなど、流行りの言語は確かに年収が高いものの案件数は少ない。
反対に圧倒的に案件数が多いのは、Java。
次いでPHPとJavaScriptいう結果になっています。
ただJavaは企業内で開発を進めることが多いので、在宅フリーランス向きではありません。
製品や基幹システムの開発に使われることが多く、研究所内など固定の場所で業務を行う必要があるからです。
またJavaScriptは、ブラウザ側で動作する言語。非常に汎用性が高く使えた方がよいのですが、JavaScriptだけできても仕事の幅は限られてしまいます。
PHPとセットで使いこなすことで、バックエンド側も含む報酬の高い仕事も請け負えるようになれます。
このあたりを含めて、PHPで稼ぐために必要な知識を解説していきますね。
PHPで稼ぐために必要な知識
Web系の仕事にはブラウザで動作する部分を制作する「フロントエンド」エンジニアと、サーバーで動作する部分を制作する「バックエンド」エンジニアがあります。
「フロントエンド」はお客様側、「バックエンド」は裏方というような意味。
PHPは「バックエンド」側で動かすのですが、バックエンドの作業をするには、まずはフロントエンドを知っておく必要があります。
その後にPHPを習得することで、Web案件の全体の流れを理解でき、実業務を進めやすくなります。
まずフロントエンドの技術学ぶ(HTML・CSS・JavaScript)
フロントエンドに必要な技術にはHTML・CSS・JavaScriptがあります。
フロントエンドは、パソコン・スマホ・タブレットなどのブラウザで動作します。
ウェブサイトの閲覧ユーザがブラウザでウェブサーバーにアクセスすると、サーバーで処理が行われ、その結果、ページを構成するHTML、CSS、JavaScriptファイルがサーバーからブラウザに送られてきます。
HTMLとCSSはWebページの文章やレイアウトなど、目に見える部分を構成します。
ちなみにHTMLやCSSはプログラミング言語ではなく、マークアップ言語と呼ばれます。
マークアップとは、コンピュータに仕事をさせる命令ではなく、レイアウトの指示を記述するイメージです。
プログラミングより簡単なので、1か月程度あれば理解できるようになれます。
JavaScriptはポップアップウィンドウやメニューの開閉など、サイトに動きをつけるのに使われます。JavaScriptはプログラミング言語です。
世の中にプログラミング言語はいっぱいありますが、ブラウザ上で動作させる言語はJavaScriptだけ。
Webプログラミングをするなら、まずはJavaScriptの基本動作はおさえておきましょう。
次にバックエンドの技術を学ぶ(PHP・Ruby)
フロントエンドの基本を押さえたら、本格的なWebプログラミング学習のスタート。
サーバー側で動くバックエンド用の言語に進みましょう。
バックエンド用の言語はサーバー内で動作して、成果物としてフロントエンドに送信するHTMLを生成します。サーバー内でプログラム言語が動作してるから、ウェブページは、アクセスするたびに表示内容を変えることができるんです。
サーバー側だけで実行されるから、バックエンド用のプログラミング言語はいろいろ選べます。
ただ、僕としてはやっぱりPHP押し。
Rubyを押す人もいますしRailsというフレームワークもあり良い言語ですが、在宅で可能な案件が少なく、また全体的な求人数もPHPより少なめです。
在宅フリーランス志望者は組み込み系プログラミング言語を避けるべき
次に、在宅のフリーランス志望者は避けたほうが良いプログラミング言語を解説します。
避けたほうが良い言語は、JavaやC言語、C++です。
理由は、組み込み系で使われることが多いため。
組み込み系とは、Webではなく、車や家電など製品の中にプログラミングが埋め込まれている状態のもの。
なぜ避けるべきか、2つの理由をお伝えします。
どのプログラミング言語を学ぶか検討するときに、ぜひ知っておいてほしい知識です。
組み込み系プログラミング言語は難易度が高い
ひとつめの理由は、組み込み系言語はWebプログラミング言語と比べると難しいからです。
なぜなら組み込み系は、「コンパイル」をする必要があるからです。
コンパイルとは、機械語に変換すること。
分かりやすく説明していきますね。
たとえば、ものすごく小さいゲーム機があるとします。
ここにプログラムを組み込むには、極限までプログラムを効率化して容量を小さくせねばなりません。
そのためには、機械しかわからない言語でコードを必要があるのです。
もちろん人間がそんなコードは組めないので、人間は人間が分かる言語で書く。
誤解を恐れず言えば、それがC言語です。
これを「コンパイル」して、機械語に変換してから製品に組み込むことになります。
あらかじめ機械語に変換することが前提なので、組み込み系の言語は厳密さを要求されます。
また、コンパイルして製品に埋め込むまで動作確認ができません。シミュレータなど偽物を使って動作確認もある程度できますが、実際に家電にプログラムを書き込んで動かさないとちゃんと動くかわからないんです。
さらに、制御対象の家電を動かす仕組みとプログラムを動作させるコントローラの構成も理解しておく必要があります。
例えば、出力ポートの3番に洗濯機の電源スイッチがつながっているとか、入力ポートの1番に水温センサーがつながっているとかいった製品の仕様を把握しておかねばならない。
結構大変です。
こういったことから、組み込み系言語は難易度が高いのです。
プログラムコードが実行されるとき、逐次機械語に変換されて実行されます。
組み込み系プログラミング言語は在宅フリーランス案件が少ない
2つ目の理由は、そもそも、在宅フリーランス向けの仕事があまりないからです。
発売前の新製品の情報が洩れたら一大事なので、組み込み系の開発環境は、セキュリティが厳しい。
また実際に製品上でテストするので、通常は社内で開発を進めます。
こういった事情で、在宅フリーランス向けの仕事が少ないのです。
組み込み系エンジニアだった僕がフリーランスで稼げるようになった理由
ここまでお伝えした内容は、実は、僕自身の実体験に基づいています。
実は僕は、車会社で組み込み系のエンジニアとして勤務していました。
プログラミング言語はC言語がメイン。
仕事に大きな不満はなかったものの、勤務時間が長すぎて疲れ果て、40才直前で脱サラを決意したのです。
プログラミングスキルがあったので何とか稼げるだろうと思っていましたが、甘かった…
先ほどお伝えしたとおり、組み込み系は在宅フリーランス向けの仕事が少なかったのです。
しばらく葛藤した末、僕は、いちからPHPを学ぶことにしました。
そのあとは、順調に稼げるようになっていきました。
こういった自分の経験からハッキリ断言できます。
在宅フリーのプログラマとして稼ぎたいなら、Web系、とくにPHPだと。
ちなみに僕の経歴は講座案内下に書いてあるので、もし詳しく知りたければ、目を通してみてくださいね。
補足
最後に少し補足します。
メーカーに転職希望の人には組み込み系言語も選択肢のひとつですし、フリーランスでも常駐(クライアントの会社で作業する)するのであれば有効な手段です。
また紹介した言語以外にも色々な言語があります。Webプログラミング用途にしても、Python(パイソン)やScala(スカラ)など、色々な言語があります。
その中でもPythonはAIや機械学習で使われる言語で、さらに、Webプログラミングにも使えるため、今後どんどん使われると思います。そういう意味で将来性があるものの、今の時点でいえば、市場は広くありません。
まずはPHPから始めるほうが、案件の多さからも無難です。
まとめ
今回は在宅のフリーランスプログラマとして稼ぎやすいプログラミング言語を紹介しました。
要点をまとめると
- 在宅フリーランスとして稼ぐならWeb系、中でもPHPが稼ぎやすい
- Web系がはじめてなら、まずはフロントエンドの知識を身に着けよう
- 組み込み系言語は在宅フリーランス志望には向かない
という感じです。
さっそく学ぼうと思ったら、↓下の記事も参考にしてみてください。
コメント