プログラミング、フリーダイビング、ブロックチェーンのブログ

プログラミング道場

才能がないプログラマの生存戦略【才能がなくても諦める必要はありません!】

更新日:

私はプログラミングをできるものの、才能あるプログラマに比べてると、どうしても劣るような気がしてなりません。
それでもプログラミングを続けるべきでしょうか?


記事の内容


プログラマという職業をやっていると、誰しもが「こいつには敵わない」というエンジニアと出会うことがあります。
私もそれを経験したことがありますし、クックパッドの創業者である佐野さんも大学生の時に、「こいつには敵わない」という経験をして起業家を目指したそうです。
とは言っても、才能がある人に出会ったとしても、プログラミングを諦める必要はありませんし、必要以上に他人と比べる必要もありません。
つまり、「自分には才能がない」と言って諦めるのはナンセンスだということです。

この記事では、才能に関係なく自分が得意なフィールドを見つけて、戦っていく話をします。

才能に天井はないので、気にする必要はありません

プログラミングを生業として働いていると、できるプログラマに出会うことがあります。
上を見れば、世界には以下のような天才達がいくらでもいます。

  • Google、Apple、Amazonなどのシステムを作った人達
  • Bitcoinを考えた人
  • LinuxやGitを作った人達
  • Ruby on Railsを作った人

彼らの多くは、20代にプログラマとしての才能を開花させています。

また最近では、IT業界未経験の女医が転職して、Googleに入社したという話が、エンジニア達から耳目を集めていました。

世界中に目を向ければ、スゴイ人達はいくらでもいます。
そのような才能ある人達のことを考えだしたらキリがないので、あまり上を気にしすぎないようにしましょう。

IT業界での労働は、天才のためだけにあるわけではありません。
あなたには、あなたが戦うべきフィールドがあるので安心して下さい。

プログラマに必要な基本的な3つの才能

超人になるための才能は置いておいて、IT業界で普通のエンジニアとして働くための大事な才能を紹介します。
この3つは、エンジニアとって重要だと言われています。

プログラミングを楽しめる

プログラマとして給料を貰う以上、プログラミングは仕事なのですが、それでもプログラミングを楽しめる人は長く業界に残っています。
「どうやったら、この処理が早くなるか?」といったことを楽しめる能力が、プログラマには大事になってきます。

学習意欲が高い

web業界の進化のスピードは非常に早いです。
10年前までは、スマホはありませんでしたが、今では全世界で多くの人がスマホを使っています。
ということは、この10年間で、エンジニアは、スマホで動くアプリに対応する必要がありました。
このような変化に対して、積極的に学習していく能力が、プログラマには求められます。

論理的思考能力

プログラミングを書いていると、何らかの問題にぶつかることは、日常茶飯事です。
そういった時に、問題の理由を切り分けて考えつつ、自分の力で調べていける能力が、プログラマには必要とされます。

プログラマが必要なスキルは業種によって異なります

上記の3つの才能をベースにして、業種ごとに求められてくるスキルを紹介します。
順番に例を見ていきましょう。

ゲーム業界

よく使われている言語;C++、C#、Unity

比較的、難易度が高い静的な言語が使われやすく、実行速度が求められます。
数学や物理の知識も必要になってきます。
エンジニアとしては、難易度が高めの業界になります。

広告業界

よく使われている言語;C、Node、PHP

実行速度が求められる業界です。
アルゴリズムを知っている方がいいです。
広告を早く表示するために、通信の知識が求められます。
また、最適な広告配信を行うために、統計的な知識も必要とされます。

ECサイト

よく使われている言語;PHP、Ruby、Java

データベースの設計が重要になってきます。
実行速度はあまり求められません。
ビジネス側とコミュニケーションを取るスキルが大事になってきます。
また、最適な在庫情報を出すために、統計的な知識も必要とされます。

その他のWebサイト

よく使われている言語;PHP、Ruby、Java

実行速度はあまり求められません。
プログラミング、データベースの設計、サーバーやインフラの知識などが幅広く求められます。
また、ビジネス側とコミュニケーションを取るスキルも大事です。

データ分析

よく使われている言語;R、Python

統計や数学的な知識が求められます。
また、ビジネスへのコミットが求められるので、コミュニケーションが大事です。

地味な仕事らしいので、興味がある人はこちらを読んでみて下さい。

こうやって見ていくとわかるように、業界ごとに求められる能力はまったく異なります。
ということは、ゲーム業界では仕事ができる人でも、ECサイトの業界で働いたら普通の人という可能性もあります。

逆もまたしかりです。
実行速度の早いプログラムを書けても、コミュニケーションができなければ、ただの変人扱いされるかもしれません。
つまり、数学力が活かされる業界もあれば、物事を順序立てて考える論理的思考やコミュニケーション力が求められる業界もあるということです。
というか、むしろ後者の二つが活かされる業界の方が多いかもしれません。

これが、私が「才能」をあまり気にする必要はないと言った理由です。

才能よりも幅広い知識が求められることがあります

さらに、才能に関係なく、個人が戦える戦略を考えてみます。

プログラミングに関することで、一つのことを極めることは難しいのですが、幅広く理解する分には難易度が下がります。
「一つのことを極めた方がいい」という意見もありますが、開き直って幅広く理解するのも一つの戦略です
下記に、エンジニアの職種の一覧を紹介します。

  • サーバーサイドエンジニア
  • フロントエンジニア
  • デザイナー
  • iOSエンジニア
  • Androidエンジニア
  • ネットワークエンジニア
  • サーバー管理者

会社によっては、この中の一つのを極めている人が求められることもあれば、複数のことを知っている人が求められるケースもあります。

例えば、このケースでは当然、高スキルの人が求められます。

高スキルのサーバーサイドエンジニア  普通のサーバーサイドエンジニア

でも、アプリエンジニアも求められている場合だと、このようになる場合もあります。

高スキルのサーバーサイドエンジニア  普通のサーバーサイドエンジニア + 普通のアプリエンジニア

外国人が多い職場だと、このようになる場合もあります。

高スキルのサーバーサイドエンジニア  普通のサーバーサイドエンジニア + 英語力

つまり、いくつかの能力を持っていれば、それを活かせる会社があるということです。
最後に、持っているとプラスになる能力について説明します。

持っているとプラスになるスキル

エンジニアとして、持っておく方がよい汎用的なスキルも紹介します。

英語力

日本企業では、英語力はなぜか評価されます。
英語力があっても大して使う機会はないのですが、「グローバル化」という流行りのキーワードにのって、日本企業では英語ができる人材を求める傾向にあります。
また、英語でプログラミングに関するドキュメントを読んだり聞いたりすることもあるので、英語力はあって悪いものではないでしょう。

数学力

上記の説明と矛盾するようですが、数学力もあるに越したことはありません。
とは言っても、何も難しい数学をやれと言っているわけではありません。
まずは、「プログラマの数学」に書かれているレベルの数学から始めましょう。
結城先生の著書は、いい本ばかりです。

UML

UMLとは「Unified Modeling Language」の略で、プログラミングを書く時に作成する設計図のようなものです。
これを使うとロジックが整理されますし、他人ともロジックを共有しやすいので、世界的によく使われています。
プロジェクトマネージャーやリーダーになる人は、持っているといいでしょう。
これも、きっと強い味方になってくれるはずです。

コミュニケーション力

他人とコミュニケーションをとるということは、営業だけでなく、プログラミングでも重要な能力です。
これは意外と見過ごされやすいので、他人と差をつけやすいところです。
プログラミング力に自信がない方は、是非とも他人との気持ちよいコミュニケーションを心掛けましょう。

まとめ

ここまで読んでもらえれば、特別な才能を持っていない人のエンジニア戦略が見えてきたはずです。
才能に負けない方法をまとめると、以下のようになります。

才能に負けない方法

  • 自分の能力を活かせる場所で働く
  • エンジニアのスキルを水平的に広げる
  • 「英語力」+「UML」+「コミュニケーション力」を身につける

最初は難しく感じるかもしれませんが、一気に勉強する必要はありません。
地道に、少しづづ、トライしてみて下さい。

また、一人でキャリアプラン考えることが苦手だという方は、転職エージェントに相談してみるのも一案です。
きっと、あなたに合った場所を一緒に探してくれるはずです。
また、転職エージェントは、今の市場で何が求められているかをよく知っているので、非常に勉強になります。

私のお勧めする転職エージェントはdodaです。
dodaのエージェントさんは、以前に相談した時に非常に親身になって相談にのってくれました。
転職エージェントへの登録や相談は無料で使えるので、安心して使ってみて下さい。

今すぐ詳細を見てみる

Good luck for your engineer life!

文系出身の方でプログラミングに興味がある人は、この記事を読んで下さい

文系出身でもWebエンジニアになれる理由【数字的な裏付けもあります】

女性でプログラミングに興味がある人は、この記事を読んで下さい

IT業界は女性にとって働きやすいでしょうか?【Web業界で働く女性は増えています】

スキルで伸び悩びを感じている人は、この記事を読んで下さい

エンジニアに資格は必要なのか?【あった方がいい!】

ブログの内容を復習をしたい人は、動画を見て下さい

関連コンテンツ

-エンジニアの処世術

Copyright© プログラミング道場 , 2019 All Rights Reserved Powered by AFFINGER4.