- ・お金が欲しい。
- ・稼ぎたい。
- ・そのためにプログラミングを学びたい
そんな目的でプログラミングを学ぼうとされているのであれ、戦略をしっかりと定めてから進むべきです。
今回は
「プログラムを書ける」だけでは仕事にならない
「実務経験が長い=収入が高い」ではない
オススメのプログラミング言語
オススメのプログラミング学習方法
といったテーマでお話をしていきます。
目次
「プログラムを書ける」だけでは仕事にならない
プログラミングを仕事とするのであれば、基本的な仕組みや書き方を学ぶことは当然必要です。
今は無料サービスなどが多数ありますね。
最初の第一歩として、そういったサービスで基本的なことを学ぶステップは有効です。
ですが、無料サービスの全部のコースを制覇したり、何周も繰り返しされる方がいますが、ほとんど意味がありません。
どれだけ時間をかけても「現場」で求められているスキルは身につかないからです。
では、「現場」で求められるスキルとはなんでしょうか。
現場で求められていること
では、現場で求められていることとはなんでしょうか。
ここでは3つに分類してみていきます。
プログラミング力
当然、技術力は必要です。
- 自走できる力
- より短時間で求められているものを作る力
- 求められている機能を実装できる力
こういった力が現場では必要です。
チーム開発
現場で複数人での開発には「環境構築」や「バージョン管理」といったことが必要になります。
※このあたりをご説明すると長くなるので、また別の機会にご紹介します。
環境構築ができないと、そもそもプログラミングをする環境が作れませんし、バージョン管理ができないと各自がプログラミングしたデータをチーム間でひとつに統合することができません。
このあたりは独学で勉強するには限界があります。
ある程度基本を習得する必要はありますが、あとは現場で経験を積むしかないです。
これは、経験者が優遇される理由のひとつでもあります。
ビジネス力
お金(給与)をもらう=ビジネスです。
どんなに技術力があってもこの観点がないとダメです。
ひとくくりに「ビジネス力」といっても多岐にわたりますが、「遅刻・欠勤をしない」といった基本中の基本のことから、顧客折衝力・マネジメント力といったものも必要となります。
「実務経験が長い=収入が高い」ではない
傾向としては、実務経験が長い人の方が、より収入が高くなる傾向があります。
ですが、実際には経験年数がそんなになくても、10年20年のベテランより高収入の人はいます。
その違いはどこからでてくるのでしょうか?
収入額を決めるのは誰?
エンジニアになったとして、あなたの収入を決めるのは誰でしょうか。
- 組織で働くのであれば組織の上長
- 個人で案件を獲得するのであればクライアント(顧客)
ですよね。
つまり、収入をあげるためには「あなたの収入を決める人」から高い評価をしてもらう必要があります。
であれば、まずはそういった人から「何を求められているか」を把握する必要がありますよね。
「収入額を決める人」に評価されるには?
あなたが会社の社長であったら、どういった人に高い報酬を払いたいと思うか?
結局、「利益をあげてくれる人」に対して、見合った報酬を払いたいと思いませんか?
会社とは「営利」を求める必要があります。
お金の流れは大きく分けると「収支を増やす」「コストを削る」「投資する」のいずれかです。
あなたの「収入額を決める人」は上記のどこに力をいれようとしているのか。
いつまでにどれくらいの目標を設定しているのか。
また、現在どんな問題があり、それに対する課題は何か?
そこを正確に把握し貢献さえすれば、当然「この人は役に立つなぁ」と評価されます。
(もちろん貢献し結果をだしたのであれば、それを上手にアピールすることも必要です)
ただの「人材」から「人財」にランクアップできるということです。
そして「人財」だと認めてもらえれば、収入アップの交渉も可能となりますよね。
実務経験が長いけれども、そんなに収入が増えていないのは、上記の観点が抜けているからです。
「技術力さえあれば評価されるはず。」と思い込んでいる。
そして「なぜ俺の評価がこんなに低いんだ」と不満に思っている。
実際は、売上に貢献できていないか、あるいは貢献しているけれどもアピールができていないか。
そのどちらかがほとんどなのです。
プログラミングはそのための手段のひとつでしかない、ということをまず理解していただきたいです。
また、需要は高いが供給が少ない技術を身につけていることも、自分自身の価値をあげることにもなります。
「人財」になるためには
では、どうすればそういった「人財」になれるのか。
そのために必要な「考え方・やり方」といったものがあります。
もし、あなたが現状(の収入)に満足できていないのであれば、
ただ単にその「考え方・やり方」を知らないだけかもしれません。
もしくは、知ったとしても、「非常識」だと感じて「胡散臭い」「怪しい」と拒絶してしまうかもしれません。
もちろん「考え方・やり方」は知っているだけでは意味がありません。実践して磨くことなく身につくことはないからです。
そこで何も変えずに今までのやり方でいくのか。
あるいは「知らなかったこと」「非常識」を取り入れて行動に移し、力をつけるのか。
そこが、大きな人生の分かれ道となります。
オススメのプログラミング言語
「稼ぐ」ことを目的とするのであれば、上記のように「人財」となる必要がありますが、それと同時に「どの言語を選択するか」も同じく重要です。
ここでは以下の言語学習の習得をオススメします。
- ・HTML・CSS
- ・JavaScript
- ・PHP
PHPについては、よくネット上で議論の対象となり、この点について迷われている方も多いでしょう。
バックエンド言語としては、PHPの他に
- Ruby
- Python
- Java
などがあり、「どの言語が優れているか議論」は昔からよくあるからです。
しかし冒頭でお伝えしたとおり、あくまでもプログラミングは手段です。
「どの言語が優れているか議論」は、あまり重要ではありません。
あなたの目的は「稼ぎたい」のはずです。
であれば、「PHP」一択ですね。
ここでPHPをオススメする理由ですが
- まだまだ需要が高い
- 個人での受託業務が取りやすい(多様性が高い)
- WordPressを使う際に必要
という点です。
Rubyも人気の言語ですが、現在プログラミングスクールは多数あり、Rubyを学習している人が今はものすごく多くなっています。
つまり、「かなり競争が激しくなっている」ということですね。
一生企業内で安定してエンジニアをしたい?
そうであれば、Javaの方が安定性があるかもしれません。
ですが、Javaは大規模で堅牢なシステム開発で使われる傾向がありますので、大きな組織の中で働くことが多いです。
その中で急に抜擢をされて年収を大きく増やすことも、また個人での受託といった選択も難しいでしょう。
「稼ぐ」ことを目的とするのであれば、サラリーマンの考え方のままでは絶対に無理です。
「自分は商売をしている」というマインドが必要ですし、そのために必要な考え方・やり方を知り、実践する必要があります。
オススメのプログラミング学習方法
学習方法としては大きく分けて以下の3つでしょうか。
- 独学
- 教えてもらう
- 学習サービスを利用する
「早く稼ぐ力をつける」ことを目的としているのであれば、「3」一択です。
本記事でお伝えしたように、
- 「実践的なことが学べるカリキュラムとなっている」
- 「ただなんとなく作れるようになる」ではなく「仕組みが理解できる」
- 「稼ぐための考え方・やり方が学べる」
この3点を満たしているところを探してみてください。
エンジニアになることが最終目的としているスクールが多数ですが、そこで学べるのはあくまでも技術のみでしょう。
間違っても「転職保証」を謳っているようなところは避けるべきです。
(その仕組みがどう成り立つのかを考えればわかりますよね)
「1週間でプログラミングをマスターできる」という宣伝文句も眉唾ものです。
一睡もせずに1週間ぶっ続けでできたとしても168時間。とうてい現実的な数字とは思えません。
「2」もありですが、教えてくれる人は「実際に稼いでいる人」にしましょう。
稼げない人から教えてもらうと、「稼げない考え方」がうつってしまうからです。
「1」を選択する場合は下記リンクを参照ください。
プログラミングを独学で始める!勉強法や注意点をまとめました【初心者向け】ただしどうしても「3」に比べると時間はかかるというデメリットはあります。
まとめ
今回は「稼ぐ」を目的として学習を進めるために
「プログラムを書ける」だけでは仕事にならない
「実務経験が長い=収入が高い」ではない
オススメのプログラミング言語
オススメのプログラミング学習方法
についてお話をいたしました。
あなたのこれからのチャレンジの参考にしてみてください。