今からプログラミングはもう遅い?【心配な人に知ってほしい1つの真実】

今からプログラミングはもう遅い?【心配な人に知ってほしい1つの真実】 エンジニアの紹介
今からプログラミングはもう遅い?【心配な人に知ってほしい1つの真実】

こんにちは。

この記事を読んでいるあなたは、

「これからプログラミングを勉強してプログラマーになりたいんだけど、もう遅いかな?」
「これからプログラミングの勉強をして、ちゃんと結果出るのかな?」

このように思っているのではないでしょうか?

もしあなたが30代、40代やそれ以上の場合、もっと若いうちからプログラミングを勉強してきた人に大きく遅れていることになります。

その状態で、長い時間と労力をかけてプログラミングを勉強して、ちゃんとプログラマーになれるのか心配ですよね。

そこでこの記事では、そんなあなたに向けて、以下の内容をまとめます。

この記事を読んでわかること
・今からプログラミングを始めても遅くない理由
・今からプログラミングを始める場合、どのレベルを目標とするのがいいか?
・プログラミングを最短で身につけてプログラマーになるための方法

この記事を最後まで読むことで、今からプログラミングの勉強をすることの漠然とした不安が解消されます

さらに、僕のプログラマー経験を踏まえつつ、最短距離でプログラマーになるための方法までお伝えします。

  1. これからプログラミングを勉強しても、決して遅くない (この記事の信頼性)
    1. 今からプログラマーを目指す条件1: 普通レベルのプログラマーを目指す (トップレベルのプログラマーは目指さない)
    2. 今からプログラマーを目指す条件2: 最短距離でプログラミングスキルを身につけたり、採用されるための工夫を行う
  2. [僕の実体験]世の中のプログラマーにはスキル的にイマイチ人も多い。今からでも、そんな人を追い抜くことができる。
  3. 「プログラミングを勉強するのはもう遅いと思ってしまう理由
    1. プログラミングの習得に時間がかかるから
    2. 同年代の他の人はすでにプログラマーとして活躍しており、その差が開きすぎている
    3. この歳からプログラマーとして採用してくれる企業が少ない
    4. プログラミングで稼げる時代は終わったから、あるいはライバルとなるプログラマーが増えすぎたから
  4. プログラマーごとのレベル分けと、今からでも普通レベルのプログラマーを目指せる理由
    1. 現在のプログラマーのレベルごとの分類
      1. 上位の20%: 優秀なプログラマー
      2. 中央の60%: 普通レベルのプログラマー
      3. 下位の20%: 無能でポンコツなプログラマー
    2. これからプログラミングを勉強するあなたが目指すべきレベル = 普通レベルのプログラマー
  5. 今からプログラミングを勉強して、普通レベルのプログラマーになる方法
    1. どのようなプログラマーを目指すか?の作戦をたてる
    2. フロントエンドやバックエンド、スマホアプリのいずれかに集中し、一点突破で勉強する
    3. プログラミング以外でアピールできるポイントを探す
    4. プログラマーとして必要なスキルを学ぶ
  6. [最後に]プログラミング学習の一歩目を踏み出すのは、あなたの決意が必要

これからプログラミングを勉強しても、決して遅くない (この記事の信頼性)

これからプログラミングを勉強しても、決して遅くない (この記事の信頼性)

それではまず、結論をお伝えしたいと思います。

これからプログラミングを始めたとしても、プログラマーになることはできます!

世の中には30代、40代で思い立ってプログラマーに転職した人はたくさんいます。
あなたもしっかりと勉強や準備を勧めていけば、プログラマーになれる可能性は高いと考えられます。

とはいえ、「目標を間違ったり、余計な勉強をしなければ」という前提です。

あなたが、

・今から世界トップレベルのプログラマーになりたい
・プログラミングの勉強をほぼすることなくプログラマーになりたい
・効率を無視して、適当にプログラミングの勉強をしつつ、プログラマーになりたい

このように思っているのであれば、その希望を叶えるのは難しいでしょう。

今からプログラマーになるためには、以下のような前提となります。

今からプログラマーを目指す上で考えておくべき前提や工夫
・普通レベルのプログラマーを目指す (トップレベルのプログラマーは目指さない)
・最短距離でプログラミングスキルを身につけたり、採用されるための工夫を行う

今からプログラマーを目指す条件1: 普通レベルのプログラマーを目指す (トップレベルのプログラマーは目指さない)

プログラマーと一言で言っても様々なレベルがあります。

 プログラマーのレベル
・優秀でトップレベルのプログラマー
・普通のプログラマー
・無能でポンコツなプログラマー

この中であなたが目指すべきは、「普通のプログラマー」です

世の中のプログラマーの6割くらいが、この「普通のプログラマー」のレベルにいます。

まずはそのレベルを目指すのがよいでしょう。

優秀でトップレベルのプログラマーは、小さい頃からプログラミングをやっていたり、普通の人よりもセンスが優れている部分があります。

今からあなたが資産100億円の資産家になれないように、今から優秀でトップレベルのプログラマーを目指そうとすると、どこかで挫折する可能性が高くなります。

まずは世の中に2割くらいいる、無能でポンコツなプログラマーを追い抜いて普通レベルのプログラマーになるのを目標にしましょう。

このレベルに到達できれば、十分、プログラマーとして就職したり案件を獲得することができます!

今からプログラマーを目指す条件2: 最短距離でプログラミングスキルを身につけたり、採用されるための工夫を行う

「普通レベルのプログラマーを目指す」とは言っても、そんなに簡単な話ではありません。

普通レベルのプログラマーであっても、ほとんどの人は新卒でプログラマーとなり何年も経験とスキルを身につけています。

例えばあなたの年齢が30歳だった場合、新卒からプログラマーをやっている人とは8年のスキルと経験の差があります。

今からこの差を埋める必要があるため、無駄なことをしている余裕はありません。

最短距離でプログラミングスキルを身につけたり、プログラマーとして採用されるための工夫を行うようにしましょう。

具体的には、以下のような行動をする必要があります。

今から普通レベルのプログラマーになるために必要な行動
・的を絞ったプログラミング学習をする
・(プログラミング以外で)プログラマーとして必要なスキルを身につける
・その他アピールできるスキルを探しておく

この3つのスキルを見つけたり探したりすることで、プログラマーとして採用される可能性がグッと上がります。

[僕の実体験]世の中のプログラマーにはスキル的にイマイチ人も多い。今からでも、そんな人を追い抜くことができる。

[僕の実体験]世の中のプログラマーにはスキル的にイマイチ人も多い。今からでも、そんな人を追い抜くことができる。

僕は大学を卒業した後、新卒でプログラマーとして就職しました。

携帯電話メーカーで、かなり大勢のエンジニアやプログラマーが働いていました。

半年ごとに発売される携帯電話のソフトを何百人という人が開発していたのです。

携帯電話のソフトの開発はかなり大きいため、社員だけだと成立しません。

そこで、プログラミングのかなりの部分を、業務委託として、外部の会社にプログラミングの作業を依頼していました。

別に特定の会社や個人を責める意図はないですし、僕自身のプログラミングスキルも褒められたものではない、という前置きをしておきます。

開発をする中でそんな業務委託で開発を依頼している会社のプログラムを確認(レビュー)することがあります。

・意図通りの仕様になっているのか?
・不具合がなさそうか?
・書き方に問題がないのか?

こういった観点で、社員プログラマーが確認をするわけです。

そこで僕もプログラムを見て、「世の中のプログラマーはこんなにもひどいのか・・・」と思いました。

プログラミングは基本的に、「どれだけ効率的に、少ないプログラム量でWebサービスやアプリを作るか?」が重要だったりします。

プログラムの量が少ないとメンテナンスする量が少なかったり、全体の見通しがよくなったりするためです。

一方、その業務委託をした会社のプログラマーが書いたプログラムは、至るところに同じようなプログラムが散見されました。

どう見ても、既存のプログラムをコピー&ペーストしたもので、「プログラミングが目指すべき方向」と正反対のプログラムになっていました。

僕と同じ会社の、同僚のプログラマーもそのプログラムを見て唖然としていたのをよく覚えています。

そこで僕は、

「こんなにひどいレベルでもプログラマーとして働けるのか・・・」

と思いました。

これは特にひどい例を挙げていますが、他にも

・2週間経っても、全く開発が進まないプログラマー
・説明を受けても何を言っているか分からないプログラマー

こんな人がいました。

この記事では、そういうプログラマーを「無能でポンコツなプログラマー」と呼びます。

プログラミングをしてもダメ、何かを説明してもらってもダメ。

「無能でポンコツなプログラマー」は、現時点のスキルが低いだけでなく、今後に向けた勉強もしない傾向にあります。

こんな「無能でポンコツなプログラマー」であれば、今からプログラミングの勉強を始めても追い抜ける気がしませんか?

無能でポンコツなプログラマーを追い抜いて、普通レベルのプログラマーになれるプログラミングの勉強方法は、この記事の最後で説明します。

「プログラミングを勉強するのはもう遅いと思ってしまう理由

「プログラミングを勉強するのはもう遅いと思ってしまう理由

それではまず、一般的に「プログラミングはもう遅い」と言われる理由を紹介します。

プログラミングの習得に時間がかかるから

プログラミングの習得には、一般的に1000時間かかると言われます。

これから1000時間もの時間をかけるにしては、すでに手遅れ、という言い分です。

確かに1000時間は非常に長い時間です。
大変なこともたくさんあるかと思います。

とはいえ、何故今からやると手遅れと思うのでしょうか?

今日があなたの人生で、一番若い日ですよ?
せっかく始めるのであれば、一日でも早く始めた方がいいですよね?

同年代の他の人はすでにプログラマーとして活躍しており、その差が開きすぎている

(すでに説明した例ですが)あなたが30歳だとすると、大学卒業後すぐにプログラマーになった人は8年間働いている。
8年間の経験の差があると、現時点だとかなりのスキルの差となるでしょう。

とはいえ、プログラミングのスキルは誰かと比べるものはありません

すでに経験のある人と比べれば、(少なくとも現時点では)見劣りしてしまうのは当然です。

それよりも大事なのは、あなたがどうしたいか?どのようなスキルを身につけていくか?です。

他の人との比較をして落ち込むのではなく、これからどうやってスキルを伸ばしていくか?に意識を向けるようにしましょう。

この歳からプログラマーとして採用してくれる企業が少ない

もしかすると、

「30歳を超えているから転職は厳しい」
「プログラマーは35歳定年説があるから厳しい」
「もう40歳にもなったら、プログラマーとしてはどこも採用してくれなさそう」

このように、思っているかもしれません。

ただ、企業は、「何歳なのか?」よりも「何ができるのか?何をしたいと考えているのか?」を重要視します。

「35歳を過ぎているからこの人は採用しない」という判断をする会社はほぼないのではないでしょうか?

ちなみに僕が面接をしていたときのケース
僕は今、勤務している企業で中途採用の面接をしていました。

そのときの採用基準は、以下のような観点でした。
「その人が何ができるか?」
「今募集している枠で求めるスキルを持っているか?」
「会社やチームのカルチャーと合うか?」

年齢によって何かを制限することは特にありませんでした。

年齢のせいでプログラマーになれないかもしれない・・・と思っているかもしれませんが、あなたが思っている以上に、企業はあなたの年齢を気にしません。

プログラミングで稼げる時代は終わったから、あるいはライバルとなるプログラマーが増えすぎたから

プログラミングは数年前から非常に注目されるようになってきました。

今では小学校でも「プログラミング思考」を学ぶ授業もあります。

プログラミング経験者が増え、プログラマーの数も増えてきてはいるでしょう。

ただ、それ以上にプログラマーやプログラミングのスキルを必要とする仕事が増えているのも事実です。

これまでプログラマーが活躍できる領域はIT企業に限られていましたが、今は仕事をデジタル化するために、非IT企業も積極的にプログラマーを募集しています

この流れは、むしろプログラマーとして仕事を獲得する絶好のチャンスです。

次の章で説明する、「普通レベルのプログラマー」になれれば、プログラマーとして仕事を獲得するのも視野に入ってきます。

プログラマーごとのレベル分けと、今からでも普通レベルのプログラマーを目指せる理由

プログラマーごとのレベル分けと、今からでも普通レベルのプログラマーを目指せる理由

この章では、これからプログラミングを勉強するあなたが、どのくらいのレベルを目指せばいいのか?を解説します。

現在のプログラマーのレベルごとの分類

まずは、今、現役で働いているプログラマーのレベルと、そのざっくりとした割合を説明します。

プログラマーのレベルごとの割合
・上位の20%: 優秀なプログラマー
・中央の60%: 普通レベルのプログラマー
・下位の20%: 無能でポンコツなプログラマー

上位の20%: 優秀なプログラマー

いずれかの企業で働いている場合、「エース」と呼ばれるような人が該当します。

プログラミングができることはもちろん、大規模システムのアーキテクチャを決められたりとか、システムの方針を決められたりする人が該当します。

このレベルの人は、現時点のスキルが優秀なのはもちろんですが、地頭がよかったり、人一倍努力していたりします。

中央の60%: 普通レベルのプログラマー

言われた領域のプログラミングはこなすことができるレベルが該当します。

実際に働いているプログラマーの大多数がこの部分に属します。

メチャクチャすごいスキルがあるわけではないものの、プログラマーとして食べていくには十分なスキルを持っている人が該当します。

下位の20%: 無能でポンコツなプログラマー

世の中のプログラマーのうち、スキルレベルが下位20%くらいのプログラマーが該当します。

この記事でも紹介した、コピー&ペーストでプログラミングをしたりしてしまう人が該当します。

こういう人が常駐で派遣されてきたりすると、「本当に大丈夫か?」とプロジェクトがザワつくレベルです。

とはいえ、割とこのレベルの人も多いので、今からプログラミングを勉強するとしても、彼らを追い越すのは十分に可能です。

これからプログラミングを勉強するあなたが目指すべきレベル = 普通レベルのプログラマー

あなたが目指すべきは、「無能でポンコツ」な下位20%のプログラマーを追い抜いて、普通レベルのプログラマーになることです。

このレベルに到達することで、

・仕事をしているときに変に叱られることはない (叱られるのは下位20%の人たち)
・世の中の平均レベルの年収をもらえる可能性が上がる
・プログラマーとしてスキルをつけることで、さらに上位レベルに到達して年収を上げることも可能となる

こういったメリットがあります。

次の章では、今からプログラミングを勉強して、普通レベルのプログラマーになるための方法を解説します。

今からプログラミングを勉強して、普通レベルのプログラマーになる方法

今からプログラミングを勉強して、普通レベルのプログラマーになる方法

この章では、どうやって最短距離で普通レベルのプログラマーになるか?のステップを解説します。

(繰り返しになりますが)普通レベルのプログラマーも、プログラマーとしてこれまで何年も実務経験を積んできています。

あなたはこれから彼らとの差を埋めていく必要があります。

そのためには、一切無駄なことをせず、一直線でゴール(普通レベルのプログラマーになる)を目指す必要があります。

どのようなプログラマーを目指すか?の作戦をたてる

まずは、いきなり勉強を始める前に、「どのようなプログラマーを目指すか?」のゴールを設定しましょう

具体的には、以下のような内容を決める必要があります。

これからプログラミングを勉強する前に決めるべきこと
・どの領域のプログラミングを突き詰めるか?
・プログラミング以外でアピールできるポイントは何かないか?

すでにプログラマーとして活躍している人は、すでに経験値とスキルに差があります。

その差を効率よく埋めるために、明確な目標(プログラマー像)を決めて、そこに一直線で向かいましょう。

目標の例としては、以下が挙げられます。

・担当する内容: フロントエンド、バックエンド、スマホアプリ(iOS/Androidのどちらか)
・エンジニアの動き方: ゴリゴリにプログラミングをするか、プロジェクトの管理もやるか?

プログラミング言語はそれぞれの専門となる領域で使えるものであれば何を選んでもよいでしょう。

何故なら、それぞれの領域ごとのクセや特徴がつかめれば、プログラミング言語は似たようなものが多いためです。

フロントエンドやバックエンド、スマホアプリのいずれかに集中し、一点突破で勉強する

作戦が決まったら、一点突破で勉強をしましょう。

例えばフロントエンドエンドエンジニアを目指すのであれば、バックエンドやスマホアプリに関する知識は捨てます

心配になるかもしれないが、効率よく勉強をするためにはいろいろな領域をつまみ食いはNGです。

そんなことをしていては、いつまで経ってもプログラマーになることはできません。

ちなみに、すでにプログラマーとして働いている人でも、フロントエンド、バックエンド、スマホアプリの全てを一流レベルで対応できる人はほぼいません。

みなさん、領域ごとに得意分野、苦手分野があります。
ですので、これからプログラミングを効率よく勉強したいあなたも、専門領域を絞り込みましょう。

プログラミング以外でアピールできるポイントを探す

プログラミング以外でアピールできるポイントを探す

そして、プログラマーとしての就職を少しでも有利にするために、あなたがすでに持っているスキルもフル稼働しましょう

何故なら、すでにプログラマーとして働いている人とプログラミングのスキルでガチンコ勝負しても分が悪いからです。

プログラミングのスキルは出来る限り彼らに追いつけるように努力しつつ、その他のあなたの得意領域でも差別化していきましょう。

具体的には、以下のような点であなたの強みがあれば、プログラマーになるための面接ではアピールしていくとよいでしょう。

プログラマーになるときに使えるアピールポイント例
・コミュニケーション力
・チームをまとめた力
・営業力
・など・・・

あなたが携わっている仕事で、こういったスキルが磨かれているのであれば、プログラマー転職のときにはドンドン使ってきましょう。

面接官の立場としても、何かスキルがあった方が採用しやすくなるのは事実です。

プログラマーとして必要なスキルを学ぶ

最後に、プログラマーとして必要なスキルを学びましょう。

プログラマーに必要なスキルは、以下の3つに分類されます。

プログラマーに必要なスキル
1: プログラミングの文法に関する基礎スキル
2: プログラマーとして働く上で求められる、やや応用スキル (ソフトウェア設計の知識など)
3: チームで開発するためのスキル (開発プロセスの理解や、チーム開発用ツールの利用方法の理解など)

「プログラムが書けます」というレベルだと、効率のよいプログラミングスキルが不足している状態です。

結果として、無能でポンコツな下位20%のプログラマーのように、とりあえず動くものを作ってしまうことになります。

そのスキルレベルだと、「この人は使えない」と思われ、採用されなかったり、採用されたとしても評価が低くなったり、フリーランスエンジニアの場合契約解除されるリスクもある。

なので、まずは「プログラマーとして働けるレベルのプログラミング関連のスキル」を身につけることをおすすめします

1の「プログラミングの文法に関する基礎スキル」は比較的、独学でも身につけやすいスキルです。

一方、2と3のスキルは、プログラマーとして活動するには必須ではあるものの、独学だと身につけづらかったり、未経験だとどんなものか分かりづらいかもしれません。

もしあなたが、

「プログラミングの応用スキルとか、チームで開発するためのスキルって言われても分からない・・・!」

と思う場合、プログラミングスクールを見てみるのがよいでしょう。

2の「プログラマーとして働く上で求められる応用スキル」と3の「チームで開発するためのスキル」は、両方ともプログラミングスクールで一気に習得することが可能です。

こういった即戦力のプログラマーになるために必要なスキルを身につけられるプログラミングスクールは、以下にまとめました。

即戦力のプログラマーになるためにオススメのプログラミングスクール
最大56万円の給付金あり
DMM WEBCAMP

推薦状の発行やキャリア支援も実施
CodeCampGATE(コードキャンプゲート)

学習の進捗管理からモチベーション維持のサポートまで実施
tech boost (テックブースト)

その他、あなたの目的にあったプログラミングスクールやコースは以下の記事にまとめました。

上記3つ以外にも、僕が厳選したプログラミングスクールをまとめているので、興味があればこちらも読んでみてください

[最後に]プログラミング学習の一歩目を踏み出すのは、あなたの決意が必要

[最後に]プログラミング学習の一歩目を踏み出すのは、あなたの決意が必要

この記事では、「これからプログラミングの学習をするのはもう遅いかな?」という不安に対して回答をまとめてきました。

プログラミングを学習するのはまだまだ遅くないですし、むしろ今がチャンスであることが伝わったのではないでしょうか?

「今からプログラミングの勉強をしても遅いかな?無駄かな?」と悩んでいる時間があったら、今すぐにでも勉強を始めてみましょう。

勉強をしてみて、「やっぱりプログラミングは自分に合わないな」と思えば、そこで勉強を止めればいいだけです。

何もせずに悩み続けるのは時間がもったいないと思いませんか?

勉強を始めるかどうか?を決めるのはあなたの心です。

今日があなたの人生で最も若い日です。

この記事を読んでくださったあなたの人生が、もっと豊かになることを願っています。

この記事は以上です。
ここまで読んでくださり、ありがとうございました!

コメント

タイトルとURLをコピーしました