プログラミング学習

プログラミングについての私の考え
現職の給与では定年退職したあとの年金は大して見込めない額という事がわかり、老後のための貯蓄(定年後3000万は必要)も必要になることを考えるとiDeCoなどで資産運用したとしても足りない。なので今後現職を続けてもまともな将来が無いので、今売り手市場のプログラミングを習得して、プログラミング+αの職、若しくはフリーランスになろうと考えている。

私が考えている目的と学習言語について
Web系エンジニア:
年齢的にアラフォーなので、先ずは初心者でも人手不足で需要が高い分野を選ぶ。
私の学習予定内容
HTML/CSS→ウェブサイト制作等フロントエンドは必須
PHP→ウェブサイト作ったりするには必要。
MySQL→PHPのためのDBで使用可能。PHPとセットで学習したほうが便利
JavaScript→ウェブサイトを作るときに動きをつけるのに必要。+αでjqQuery
Kotlin→アンドロイド(世界シェア70%)アプリ開発に使用されるが、Javaの
    要素を持っており、今後Javaに代わってKotlinが幅広く使用される将
           来性があるため。

現在の自分の学習経過。2020年2月現在
HTML/CSSは一通り終了、JavaScriptは躓いていろいろやってみたが、うまくシステムが動かなかったので、1からまたやり直すことにしているが、一旦保留で、PHP勉強中。PHPは今のところ動かない、表示されなくて先に進めないということは無く順調。

学習方法について
現在、海外駐在なのと、ネット環境がよくないので、オンラインスクールにも通えないため独学しています。
利用コンテンツは動画サイト(無料、有料)
書籍(一つだけでなく、例えばウェブサイト全体を構成するのに必要な言語が複数入っているもの。つまづいたときは個別に1言語単位の書籍で更に理解度を深めるために詳しく勉強する。)
HTML/CSS→初めてプログラミングをするにあたり基礎中の基礎なので、
      動画サイトなどで無料で配信しているので、無料でも問題なく学
     習できる。できればスクールや塾をやっているユーザーの動画で
     学習したほうが良い。
PHP→同様にウェブサイトを作るにはサインインやユーザー登録のシステム
    を作ったりするときなどにもよく使われるので,PHPも無料動画サイト
   で勉強可。
MySQL→基本的な構造やシステムはサイトで勉強して、PHPと組み合わせて
    学習はほどほどにして会員登録やサインインのシステムを動画サイ
    トを見ながら(作り方の動画は結構落ちている)実際に作
    ってみる。動画の丸パクリはダメだが、自分で内容多少変えてみて
    いくつか作って練習したら、テンプレ化して、システムをストック
    すれば毎回1から作成する必要がなくなる。
JavaScript→Webサイトを作る時によく使用されるので、これも無料動画サイ
     トで勉強可能。
Kotlin→iOSアプリ開発のSwiftの講座はよく無料動画サイトに落ちているが、
   無料の動画教材はまだ少ないのとJavaや他のアンドロイドアプリ作成
   言語と抱き合わせの物や、Javaやアンドロイド作成言語を学習してい
   る人向けのものも多いので、Kotlinだけ学びたいのであればドットイ
   ンストールなどの有料動画で学ぶ。

学習でプログラムが表示されない、動かないなどで先に進めない場合
独学の場合
①Googleでエラー状況、エラー表示内容で検索して解決。
②動画サイトで同じカテゴリー、及び解決方法の動画をいくつか見て解決。
③”MENTA”などのオンラインチューターに相談して解決。※有料

勉強に使う時間について
よく初心者で未経験エンジニア転職を考えてる人は1日3時間勉強とか言っている動画インフルエンサーいますが、3時間も集中して勉強はなかなか難しい。いくら頑張って3時間勉強しても始めのと終わりでは集中力や頭に入る内容が全然違うため、何時間も続けて勉強するの非効率なのでお勧めしない。書籍で勉強するのであれば、各カテゴリー、項目のここまでやるとか、何ページまでやるとか小さなゴールを決めてやる。ちょっとでも集中力が途切れたらそれ以上やっても頭に入らないので、一旦ストップしてリフレッシュしてから再開等とやらないと、勉強の継続も難しい。
よく動画サイトのエンジニアインフルエンサーが時間単位で何百時間学習すればできるみたいな事を言っているが(スクール運営しているオーナーもこんなこと言ってます)、個人の能力や性質も関係あるので、項目の細分化をして何十時間でここからここまでできればよいという表現にしないと、ただ何百時間勉強したというだけではできるようになっているかどうかわからないので、時間単位での修得できる計算はあてにならない。

学習を終えたら
一旦自分でシステムを作って実践してみる。
動画なら”○○(言語)で○○(システム)を作ってみよう”のようなタイトルの動画をみて作成してみる。
書籍なら後半後ろのほうに”○○を作って動かしてみよう”のようなシステムを作る内容も書かれている書籍を選んで学習したほうが、身につきます。

初学者の始める年齢について、20代や比較的頭に入りやすいのと、失敗しても時間の余裕があるのとスクールで学ぶお金に余裕が無いという若者が多いので、先ずは独学で進めてみましょう。マスターするのに6か月ぐらいあればできるという様に言われていますが、独学だとつまずいたり挫折したりが多いので、習得までに倍以上の時間が必要になります。そんなことに時間を使うのであれば、スクールで3か月~6か月みっちりやってわからないことはスクールのチューターに個別質問してその都度解決していったほうが効率良いです。30代、40代は自分の事だけでなく、家族の面倒を見たりという時間がそういったものに奪われやすいのと、20代と比べて吸収する速さがちがうので、決まった時間にルーティン的にスクールで学習して問題はその場でその都度解決したほうがより効率的だと思います。
時間とコストの比較例
独学:6か月~1年半もしくはもっと※個人の能力による。 1日平均3時間使ったとして1年で365x3=1095時間 
学習費用:書籍の場合は一言語約2000円弱でHTML/CSS、JavaScript、PHP等4冊程度購入した場合8000円
スクール:3~6か月 1日平均3時間として3か月で30x3=90時間
     6か月で30x6=180時間
学習費用:十数万~70万程度。
内容はセット売りで3言語から4言語+αで目的に合った言語を選ぶための事前相談やカウンセリング、個別チューター付き、スクールによっては在学中にクラウドソーシングなどで受注、納品をして授業料を返済できるようなシステムがあるスクールがあったり、転職先を斡旋してくれたりする(最近はある程度の規模のスクールであれば常識化している)ので、便利。

学習後の転職先について
スクール学習の場合は企業への斡旋のシステムがあるので、比較的簡単ですが、スクールをでたばかりでは実践としてはまだ役に立つのに時間が掛かります。20代であれば未経験者でも雇ってくれるところは多いですが、30代後半からは未経験エンジニアはハードルが上がってくるので、実績を積むということであれば、最初はSES(System Engineering Service簡単に言ったらエンジニアの派遣会社)で実績を作ってから会社に転職するほうがよいでしょう。SESは業界的にブラックなところがおおいので、会社の情報収集をしてホワイトSES、若しくは派遣業者でも一部上場しているところがあり、IT系に特化している会社があるので、そういうところにエントリーして、まず1~2年位実績を作りましょう。SESの良いところはいろんなプロジェクトをこなすので、いろんな知識や経験が身につきます。正社員として1部署に所属した場合、同じ内容の事をずっとすることになるので、成長はなかなか難しいですが、安定を求めるのであれば、正社員の選択がよいでしょう。正社員プログラマーであれば、会社以外に時間に余裕があれば、他の言語等も勉強して、クラウドソーシング等を利用して副業して別言語の実績を作って個人を成長させるのもいいかもしれません。

派遣、正社員などである程度実績ができたら
フリーランスになるという選択肢もあります。
最初からフリーランスは未経験で実績もないし、お客さんも取り辛いので、順序的にはSES(派遣)で実績を積んで、派遣先のいろんな企業とつながりを持ってから独立フリーランスになったほうが良いと思います。優良SESのなかにはフリーランス支援やフリーランス契約してくれるところもあるので、売り上げが無い時期は契約して仕事をもらうという事をしたほうが良いかもしれません。
メリット
正社員契約のように無駄な経費が給料から引かれないという事と、フリーランスは自分が経営者なので直接契約となるので契約金がそのまま売り上げになり、手取りの額が正社員で同じ業務をした場合よりも増えます。
デメリット
確定申告は自分でしないといけません。
国民保険だけの積み立てでは社会保険の積み立て程年金はもらえないので、自分で資産運用する必要があります。なので、手取りが増えた分の何割かは資産運用する必要があります。資産が億以上持てるようになれば問題ないでしょうが、不労所得なども検討しているのであれば、資産運用は必要です。例:年利3%の投資信託で1億で回すなら、年300万の報酬で月割計算したら、25万。但し、元本割れの可能性もあるので、分散投資するのが良い。

まとめ
プログラミングの学習方法は年齢やその人の人生背景などもあるので、
プログラマーになることにご興味を持たれた方は、自分に合ったプログラミング言語、勉強方法をネットや書籍でお調べいただいて学習していただければと思います。プログラマーになりたい方は記事内にでてきたスクール情報、教材動画、参考書、プログラマー市場等については個人で検索してお調べいただいた上ご検討されるのが良いでしょう。これぐらいの事を調べる意欲が無いと多分続かないと思うので、調べられる方は今の稼げない環境を変えたいというのであればプログラマーになることをお勧めします。全く業界未経験のプログラミング未経験者もプログラミングは学習するべきだと思っています。今まで経験してきたこと知識とプログラミングを使って個人独自のサービスを開発することも可能なので、自分だけのビジネスをすることも可能です。他の可能性が広がるという意味でもプログラミングを学習するのは良いことだと思います。

私について
現在の日本社会は低迷をたどっているので、正社員で入れても、安定はあるが、搾取された状態での労働環境で、貯蓄する余裕もないのが現状です。ゆえに気づくのはちょっと遅いですが、今からでもプログラマー市場はまだエンジニアが全然足りていない状態で売り手市場なので、頑張れば稼げるし、正社員にこだわらなければ、フリーランスで更に稼げると思い、プログラミング学習を始めました。最初は学習してもどうやったら仕事につなげられるかという不安があったのと、金を稼ぐことにあまり執着してませんでしたが、今年の日本の経済力では年金生活もできない程危うい状況となり、金に執着するモードに考え方が切り替わりプログラマーになる決意をしました。
現職はITとは全く関係の無いアパレル系の品質管理の会社の海外拠点で駐在員してますが、かなりブラックなので、スクール学習できる程度の貯蓄ができたら、退職してプログラミングにフルコミットするつもりです。現職の前は大手消耗品メーカーの社内のキッティング、OSトラブルシューティング、システムの不具合の解消などのヘルプデスクをしていたり、某PC会社のBIOS、OS、ネットワークに関するトラブルシューティングや修理受付ののテクニカルテレフォンオペレーター、外資製薬会社のタブレット、PCのキッティングなどをしており、そのころに基本的なPCの知識を身に着け、PCの仕事が好きになったという背景もあり、金だけの事ではなく好きかどうかといえば好きなので、続けていく決意しました。

この記事が気に入ったらサポートをしてみませんか?