プログラマーに憧れてはみたものの、実際に自分がプログラマーとして適正があるのか、不安に思いますよね。
プログラマーとして就職してからも、やることは常に勉強です。
もちろんスキルを習得するにはものすごく時間がかかりますし、その労力といっては半端じゃありません。
実際に働き始めてから「なんか違う、、、」と思って、残念ながら辞めてしまう方もいらっしゃいます。
自分自身もプログラマーとしてやっていけるか、適正があるのか不安になるのも当然ですよね。
プログラマーになるのに向き・不向きはあるのか?
優秀なプログラマーになるための才能は?
今回はプログラマーとして働く上で、必要な条件を紹介します。
ぜひあなたにプログラマーとしての適正があるか、参考にしてみてくださいね^^
プログラマーになることに才能は必要か?
まず、プログラマーになることに才能は必要かと言われましたら、
その答えは「No」です。
プログラマーになること自体は、そう難しくありません。
どの企業も人出が足りない状況で、やる気さえあれば、積極的に採用してくれる会社は多いことでしょう。
またある程度のレベルまででしたら、技術書を読むなど自分で勉強しさえすれば、プログラマーとして働くことはできると思います。
しかし、一流のプログラマーとして活躍するのでしたら話は別です。
一流のプログラマーと呼ばれている人たちは、人が1日でできることを半日で終わらせます。
凡人が1時間で30行くらいしかコードがかけないのに対し、1流のプログラマーたちは300行くらいコードが書けます。
一般的にできるプログラマーと、できないプログラマーの差は「20:1」と言われているのです。
プログラミンが楽しいと思えること
できることなら、優秀なプログラマーになって活躍したいですよね!
では、プログラマーに適正のある人の特徴は何でしょうか?
まず、当たり前のことですが、プログラミングが楽しいと思えることが絶対条件です。
「プログラマーになりたいと思ったのだったら、プログラミングが好きなんて当たり前でしょう!」
なんて思われるかもしれませんが、そんなことは全然ありません。
「給料が良さそうだから、、、」という理由で入社してみたけれど、思いの外、地味で地道な作業の連続にノイローゼになる人も少なくありません。
リリース前などは、どうしても残業時間、休日出勤も多くなるでしょう。
プログラミングが好きで好きで仕方がない人はどんなに残業が多くても我慢できますが、プログラミングが苦痛で仕方ない人にとっては、やらされ仕事でしかなく、8時間の拘束時間ですら長いと感じてしまいます。
プログラミングが好きな人は、仕事から帰ってもコーディングしたり、新しい言語プログラミングを学習します。好きでもない人は当然、休日は自分のやりたいことに時間を割きますので、プログラマーとしてのスキルは上がりません。
好きな人は勝手にどんどんスキルを上げていきますので、差が開くのは当然ですよね。
冷静に判断できること
プログラミングが長続きしない大きな理由の一つに、どうしても解決できないバグに出会ってしまい、自分で解決できないまま放置し、挫折してしまうというパターンがあります。
仕事ではバグなしの完璧なプログラミングが理想ですが、エラーを出したことのないエンジニアはこの世に存在しません。
逆に言えば、エンジニアとはバグとの戦いなわけです。
バグが出た時は、冷静に状況を判断し問題点を論理的に分析。導かれた答えから可能性を一つずつ潰していくしかありません。
ここでカッと熱くなって、冷静に問題と向き合えることができないと、プログラマーとして活躍することは難しいでしょう。
むしろ、エラーを出せば出すほど、自分の中で問題解決のノウハウが積み立てられ、より優れたプログラマーになれます。
分からないことがあれば、ググればいいんです。優れたエンジニアは思い悩んでいる時間が一番生産的でないと知っています。
失敗を恐れず、どんどんトライアンドエラーを繰り返しましょう。
好奇心旺盛で新しいことが好き
新しいことが好きな人でないと、プログラミングに興味を持つことは難しいかもしれません。
日夜どんどん新しい技術が開発されており、エンジニアたるもの、積極的に情報収集する必要があります。
優れたエンジニアは、海外から情報収集することはもちろんの事、プログラミング以外のことにも博識のことが多いです。
ホリエモンも、関心領域の広いエンジニアと仕事がしたいとインタビューでコメントしています。
【堀江貴文氏インタビュー】一つところにとどまって満足するエンジニアを、僕は信用しない。
日夜ソフト開発に情熱を捧げる一方で、金融や経済にも興味があるエンジニアこそ一流のエンジニアなのでしょう。
エンジニアはエンジニアであるからこそ、一つの領域に止まっていることはできない、そういうタイプの人々だろうとも思うんです。
常に好奇心旺盛で、常に情報のアンテナを張っている。
自分が興味の持ったことはとりあえず触ってみる。
そんなフットワークが軽く、何にでもチャレンジしていくような好奇心旺盛なエンジニアが求められています。
何をやるにしても損得で考えてしまって、視野が狭くなってしまうようではエンジニアとして中々成長できないのかもしれません。
ぜひ、いろいろなことに興味を持って、エンジニアライフを楽しみたいですよね!
研究肌、勉強好き
プログラマーは常に勉強です。勉強が嫌いだと、プログラマーとして活躍することは難しいでしょう。
勉強の必要性は、自分が会社の面接を受けた時にも、採用側から念をおして説明されました。
ITは常に進化しており、今使えているものが5年後も使えている保証はどこにもありません。
必死になって勉強したことが、10年後に全く使えなくなることもあります。
プログラマーとして、現場で仕事をするのならば、忙しい隙間を見つけて新しい情報を取得し、勉強することが必須なのです。
勉強すること、新しいことが好きな人、どんどん自分でカスタマイズしていく人、物作りが好きな人には、とても向いている職業でしょう。
プログラミングを早く覚える人の特徴としては、自分がやりたいように、どんどんカスタマイズしていく人です。
失敗を恐れず、自分の関心に従って、あれこれコードをいじくりまわし、あれこれやっているうちにあっという間に言語をマスターしています。
コミュニケーション能力が高い
プログラマーと言われれば、一人で黙々と作業をする姿を想像されるかもしれませんが、現場ではコミュニケーション能力のある人が優遇されています。
エンジニアといえども、一人の社会人としてクライアントや社内でコミュニケーションをとらなければなりません。
会社員であろうと、フリーランスであろうと、コミュニケーションなしで仕事はできません。
誰にでもわかる言葉で、相手と円滑にコミュニケーションをとるスキルは、ビジネスをする上では必要不可欠なんですね。
では、プログラマーに不向きな人の特徴はなんでしょうか?
几帳面じゃない
プログラミングをする上では、いかにシンプルに美しくコードを書くことが、バグを防ぐ上でとても重要になります。とにかく書き殴るかのようにコードを書いても、書いた本人も後から見直すのにとても時間がかかります。
少しでも文字数を少なくして、シンプルにコードを書くことができましたら、それはとても美しいコードとなるわけです。
それには大雑把な性格より、几帳面な性格が向いていると思います。
また几帳面な性格の人は、一つ一つの細かなところまで目が行き届き、成長スピードも圧倒的なものがあると思います。
プログラマーにはA型の人間が多いとかという噂も結構耳にするくらいです(信ぴょう性は別として…)
もしあなたが几帳面な性格の持ち主で、コツコツ努力する才能があるのならプログラマーという職業があなたの天職になるかもしれません。
このあたりのことはプログラマーに向いている人は神経質な奴が最強で詳しく書きました。
数学が苦手
プログラミングをする上では、数学的思考が必要不可欠です。
関数や代入などの考え方は、プログラミングをする上では必須です。
数学的な思考が苦手な人は、とても苦労するかもしれません。
しかし何も高校レベル以上の数学知識がなければならないというわけではありません。
中学生程度の数学の知識、ニュアンスがあれば十分です。
足し算や掛け算、平均値などの基本的な考えが身についていたらまずはOKでしょう!
そんなに微分積分を使用して、プログラミングをすることはまずないと言ってもいいと思います。
プログラマーになる理由が不明瞭
プログラマーになりたいという目的が、「給料が良さそうだから」「将来安泰だろう〜」「とにかく時代の流行だから」「親に勧められたから」のような理由でしたら要注意です。
何度も繰り返しますが、プログラマーは世間一般的に思われているような美しいものではございません。地味で地道な作業の繰り返し、会社によれば低賃金で長時間労働でしょう。
プログラマーは、建築でいうと土方なんです。泥臭く作業することも多いんです。
決してホワイトな職場ではないかもしれません。
プログラマーになりたいと思った意思がブレブレだと、キツイ時についつい逃げてしまいます。
私は、プログラミングを通して、人を感動させたいというような強い意思があるのならば、きっと残業もそこまで苦ではないはずです。
けれど、やはりプログラミングは創作活動であるという気持ちは捨てたくないんですよね。
意外にもプログラマーの中には生活のために仕方なくプログラマーになったという人も少なくないんですよね。
私の周りにもちらほらいます。
でもね、せっかく時代の最先端の職人じゃないですか、プログラマーって。
私はプログラマーは周囲に夢を見せてくれる素晴らしい職業だと思ってるんです。
かつてはミュージシャンのようなアーティストがそうだったように、現代はプログラマーがその役割を担っているのではないかと私は信じているのです。
せっかく創作するお仕事です。
ただ単純にお金のためだけに働くのでは夢がないんじゃないかな〜て思う今日この頃です。
もっと夢のある仕事をしませんか?
物作りに興味がない
物作りに興味のない人も、プログラマーとして長く活動するのは難しいのではないでしょうか?
エンジニアとして1番の喜びは、なんと言っても自分でプログラムが開発できた時でしょう。
それまでは地道な作業とテストの繰り返しなのですが、なんとか完成させて、お客様に喜んでもらえることは何事にも変えられないほどの喜びがあります。
そもそも、物作りをしたくない、一人で作業する時間が苦痛で仕方がない人は、プログラマーとして長く続けることは難しいでしょう。
でもね、ものづくりって人間のもっとも面白い活動のひとつなんです。
最近は、いろいろな便利なものが商品化されて、自分でものを作るという行為が減りましたが、そもそも人間はものづくりによって文明が現代まで栄えてきたわけです。
ものづくりって楽しいんですよ。
僕は創作という言葉が大好きです。
子供の頃は誰にも見せない漫画を一日中ずっと書いていました。
中学生ぐらいから29歳まではずっと音楽に熱中していました。
個人事業主として独立していた時期もありましたが、この時も誰からも指図されることなく、自分の興味にしたがって自由にビジネスを作ることはとても面白いことでした。1日15時間くらい働いていましたが全然辛くなかったですね。これも全部作ることが面白かったから。
これが人生の本質です。作ることであなたの人生は間違いなく豊かになると思います。
プログラミングも創作活動の一つです。あなたもプログラマーになって、創作する人生にしてみませんか?
それでも才能がないと、プログラマーとして活躍できないのか?
今まで、プログラマーの適性について書いてきましたが、才能がない人はプログラマーとして活躍することはできないのでしょうか?
答えは「No」です。
結局は、プログラミングに対して、どれだけ情熱があるかが全てです。
才能なんてものは、自分の努力である程度、どうにでもなります。
才能の上下で順位が決まるならスポーツなんて意味ねえわ。。才能の順位を鍛えたり考えたりして追い抜くのがスポーツじゃねえか。。スタート地点から動かねえで才能語るほど意味ない事ねえよな。。やる以外に道なんかねえ。。
— 武井壮 (@sosotakei) 2013年2月2日
何事も努力です。
一つ学べば、一つ成長できるんですから。
1分でも時間があるのなら、1分努力しましょう。
才能がある人をなぎ倒すほどの熱量で、毎日成長してやりましょう。
「一流のプログラマーになるには何をすればいい?優秀なプログラマーになるために今日からすべきこと」と言う記事で、努力の仕方について書きました。ぜひ参考にしてみてください!
プログラマー適正チェック!!
あなたがプログラマーとして適正があるかチェックしてみましょう!
簡単なIQテストのリンクを載せておきますので試してみてくださいね^^
(※会社の面接時に抜き打ちでテストされるかもしれません。IQテストも、ある種パターンかされていますので、面接対策にもなるかも。IQが高すぎて、不採用ってことも会社によってはあるかもなので、そのあたりはご了承ください〜)
プログラマーになりたいなら、まずは転職エージェントに相談!
自己分析は転職をする上で欠かせませんが、自分一人ではいずれ限界がきます。
面接を受ける上で、どのような能力が高く評価されるのか、何をアピールすればいいかわからないものです。
プログラマーとして働いてみたいという熱い気持ちがあっても、未経験からでは自信もないでしょうし、ひとりで就職活動するのはなかなか難しいものがあるでしょう。
そこで、オススメなのが転職エージェントを利用することです。
転職エージェントを利用することで、履歴書の作成や、非公開の優良案件を紹介してくれたり、あなたの就職支援を無料で受けることができます。
第三者の立場になって、あなたの長所を様々な目線で判断してくれます。実際に心理学を学んでいるカウンセラーの方も多く、あなたが本当にやりたいことを心理学の技術を駆使して、導いてくれることもあります。実際に私もハッとされる言葉をいただいたことがたくさんあります。
転職エージェントに登録すると、専属のエージェントがひとりつきますので、日頃の不安や悩みを相談したり、業界についていろいろと質問をすることができます。
また面接が有利に働くような研修や講座、履歴書の作成に関するアドバイスもいただけますので、短期間で就職できる確率がぐっと減ります。