こういった疑問に答えます。
本記事の内容
- プログラマーにおける才能とは
- プログラマーに才能は必要ない話
- プログラマーは才能がいる特別な仕事ではない
- 才能がなくても活躍するプログラマーの共通点
- 才能に囚われずプログラマーを目指すべき
プログラミングは才能がないと無理と諦めている人もいるかもしれません。
私はプログラマーとして働いていて、色んなプログラマーを見てきましたが、才能がないと働けないと思ったことは一度もありません。
もちろんトップレベルの世界を目指すなら特別な才能が必要ですが、それはどんな仕事においても同じですよね。
ということで、プログラミングにおける才能や、活躍できる人の特徴あたりを紹介します。
プログラマーにおける才能とは
そもそも、プログラミングに必要な才能ってなんなの?という話ですが、次の3つかと思います。
- 論理的思考ができる
- プログラミングが大好き
- 好奇心旺盛
順番に解説します。
論理的思考ができる
ロジカルシンキングともいわれますが、物事を論理的に捉える思考のことです。
この思考を持つことで、原因特定・解決策の立案など問題解決能力が高くなります。
仕事ができる人は必ずといっていいほどこの論理的思考ができていて、効率よく仕事を進めることができます。
特に訓練もせず先天的に論理的思考ができる人は才能があるといえますね。
プログラミングが大好き
プログラミングが好きで、プログラミングの勉強=趣味という人がいます。
こういった人は、プログラミングの勉強が楽しくてしかたないので、プライベートな時間を使っていつまでも勉強しています。
一般的に勉強は楽しいものではないわけですが、彼らにとっては私達がゲームをして遊んでいる感覚なので、このあたりのモチベーションという面ではまず勝ち目がないです。
趣味=仕事となっているので最強ですね。
好奇心旺盛
IT業界は毎年のように新技術が発表されているので、新しい技術に対して好奇心を持って吸収していく必要があります。
新しいiPhoneがでたり、OSがアップデートされたり、新しい言語やフレームワークがでたりと常に変化しています。
現場によっては、その変化に対応していかないとそもそも仕事がとれないということもあります。
「今のスキルで仕事ができているからいいや」という考え方では、今後その技術が廃れた際に仕事ができなくなる可能性があります。
義務感ではなく、自ら楽しみながら新技術を学ぶマインドは才能だと思います。
プログラマーに才能は必要ない話
結論、プログラマーに才能は必要ないと思っています。
なぜなら、天才のようなスキルはなくても仕事はできるからです。
確かに天才であれば凡人よりも迅速に汎用的なプログラミングができるかもしれませんが、仕事において求められるスキルはそこまで高くない場合がほとんどです。
会社であれば必要最低限のスキルは研修として学ぶ機会があったりしますし、わからないことでも基本的に調べれば解決できることが多いです。
また、プログラミングにおいて必要なスキルはすべて努力で身につけることができます。
現在プログラマーとして働いている人は、全員才能があるから働けているのでしょうか?絶対そんなことはないですよね。
ほとんどの人が、「自分には向いてない、才能がない」と思いながらも、努力してスキルを身につけてきた人たちです。
もちろんIQがなくても大丈夫です。必要なのは努力だけです。
※ニートでもなれます
プログラミングに必須といわれる論理的思考力は勉強をしていく上で自然と身についていきますし、新技術に関しては仕事に必要な情報に絞って勉強することで無理のない範囲で知識を得ることは十分可能です。
さすがにプライベートな時間を使ってまで勉強する気力がない…という方は、勉強しないプログラマーは生き残れるのか【勉強したくない人がやるべきこと】を参考にしてください。
効率よく勉強時間を確保するコツを紹介しています。
プログラマーは才能がいる特別な仕事ではない
そもそも、プログラマーは才能が必要な特別な仕事という考え方をやめるべきです。
たしかに才能があるプログラマーは余裕で年収1,000万を超えることができます。
しかし、現状のプログラマーが全員年収1,000万かというと全然そんなことはないですよね。
どの業界においても才能がある人は結果をだしていますが、それはプログラマーの世界に限った話ではないです。
例えば営業職でいうと、誰もが知るような天才営業マンがいたとして、その人は他の人の数十倍の売上をだすことができるとします。
それをみたときに、「自分はこの人のような売上は作れないから営業は向いてない…」と思うでしょうか?
平均的な結果をだすことができれば仕事は普通にできますよね。
しかも、売上をだせない営業マンなんていくらでもいるはずです。
プログラマーも同じで、年収数千万稼ぐ人もいれば数百万の人まで様々います。
上だけをみて、自分はそこに至らないから向いてないというのは少し違うのかなと思います。
平均年収ぐらいのプログラマーであれば才能がなくても全然なれますし、努力次第ではもっと上も余裕で狙えます。
まずはこういった認識を改めることが大切かなと思います。
プログラミングで就職できるレベルについては、プログラミングで就職できるレベルは基礎ができればOKです【実際に就職できた】を参考にしてくださいね。
才能がなくても活躍するプログラマーの共通点
才能がなくても活躍するプログラマーがいます。
そういった人は次のような特徴があります。
- 向上心・学習意欲がある
- コミュニケーション能力がある
- 本質を捉えることができる
それぞれみていきましょう。
向上心・学習意欲がある
スキルを磨くために、向上心を持って常に勉強している人です。
プログラミングに必要なスキルは誰でも経験すれば身につけることができます。
スキルがあれば、
- チャレンジングな仕事を任せてもらえる
- 経験がスキルになる
- スキルが評価になる
- さらに仕事を任せてもらえる
という最強のループを作ることができて、どんどんスキルも市場価値も上がっていきます。
コミュニケーション能力がある
プログラマーの仕事はプログラミングだけできても務まりません。
ほとんどの場合、プログラミング以外の能力も求められます。
基本的にチームで開発を進めることになるので、チームでの会議やミーティングでのコミュニケーションが必須になってきます。
こうした際に、自分から積極的に意見を提案できたり、報連相をしっかりできる人はかなり重宝されます。
また、人と話すのが苦手なプログラマーは実際結構いたりするので、しっかり意思疎通ができるというのはそれだけで価値になります。
「指示待ちの作業員」から脱却することが、活躍するプログラマーへの第一歩かと思います。
本質を捉えることができる
プログラムを作ることが目的になっている人が多くいます。
依頼がくるということは、解決したい何らかの問題があるわけですが、極論その問題が解決できればプログラムを作らなくてもいいわけですよね。
こういった際に、最適な解決策を提示できるように、広い視野を持って本質を捉える能力が非常に重要です。
実際にあった話
依頼内容:登録フォームのAパターンとBパターンで結果を測定するため、既存のAパターンのフォームに加え、Bパターンのフォーム追加で作成したい。
対応策:AとBでは文字や画像しか違いがなかったため、ツール上の設定をするだけで対応できた。
何も考えず依頼をこなしていれば、登録フォームを1つ作るための労力がかかっていたわけですが、本質を考えることで最短での対応ができました。
このように、常に何が問題なのか、この解決策は最適なのかを考えられる人材は人としての価値が高くなります。
才能に囚われずプログラマーを目指すべき
プログラミングに興味があるのであれば目指してみるべきです。
才能がないとプログラマーになれないのであれば、プログラミングスクールなんて事業はとっくに廃れています。
未経験からプログラマーになれている人が多いからこそ成り立っている事業ですからね。
今では無料で学べる教材がいくらでもあるので、まずはプログラミングに触れてみるのがいいかと思います。
無料体験ができるおすすめスクールは、無料あり:安くて質が高いプログラミングスクール厳選3社!【エンジニアの私がおすすめする】にて紹介しています。
それでは以上です。プログラミング学習、応援しています!