プログラマーに向いている人とは?必要な能力・素質・適性をチェック

2020年11月26日

書いた人:TATSUO IYAMA

TATSUO Microsoft、KDDIのコールセンター(表彰歴)、ニフティクラウドやAndroidアプリの開発などIT歴20年。

ダークソウル3レベル1縛りカンスト周回クリア


 

「プログラマーになってみたい気持ちもあるけど・・・」

「業界のことを詳しく知らないから自分に適性があるのかわからない」

「文系だけどなれるものなの?」

さいきんはITの発展でプログラミングが注目されていますね。

時代の最先端に乗っている感じでちょっとカッコイイですが、どのような人に適性があるのでしょうか?

TATSUO
TATSUO
いっしょにくわしく見ていきましょう!

几帳面な人はプログラマーに向いている

几帳面な人

世間では

「細かい人だねえ・・・」

なんてイヤミっぽく言われることもありますが、プログラマーに向いていますよ。

プログラムのソースコードはほんの1文字ミスしただけで動かなくなるケースが多いからです。

たとえばものすごく細かい字「;」「"」「.」「*」「=」など、たった一文字違うだけで動かなくなる場合がほとんど。

したがって普段から几帳面で、

 

「ソースコードをキレイに書かないと落ち着かない」

「コメントを丁寧に書かないと気が済まない」

 

といった性格の人はプログラマーに向いていると言えます。

優先順位が低いことを後回しにできる

それは明日考えよう

やるべきことは几帳面にやるプログラマーですが、優先順位を正しくつけて

「後回しにできるものは後でやる」

という思考回路の持ち主はプログラマーに向いています。

プログラミングをしているとよく、

 

「もう少しレイアウトをキレイにしたいけど、ちょっとだけズレてしまう」

「微妙に動きがカクカクしている気がする」

「定期的にソフトを再起動しないとなぜか動かない」

「10回に1回ぐらいエラーになる」

 

もちろん不完全なところを突き詰めて直していくのも大切なのですが、プログラミングの基本は

「まず先に全体を必要最小限の状態で動かす」

ことです。

ひとつのことにとらわれてしまって全体の優先順位を忘れてしまう人はプログラマーに向いていません。

完璧主義なのはわるいことではありませんが、プログラミングの世界では優先順位のほうがはるかに大切なのです。

プログラマーは納期が短いこともめずらしくなく、効率とスピードが求められます。

Done is better than perfect.

完璧を目指すよりまず終わらせろ

– Facebookの標語 –

文系でもなることは可能【手あたり次第に実行すればいい】

Shut the fuck up and write some code.(つべこべ言わずさっさとコードかけや)

プログラマー界で有名な言葉です。

あれこれ議論して正解がでるほどプログラミングは単純なものではないからですね。

プログラムが予想通りに動かない例

  • 不具合のレビューだらけのスマホアプリが直らないまま放置されている
  • Windowsが毎月、不具合修正のためのアップデートをしている

ですから推測でもなんでもとにかくプログラムを組んでしまえばいいのです。

プログラムを組めばさいあくでもエラーメッセージを得られますよね。

エラーがでなければ出力が得られます。

そういったエラーメッセージや出力を集めて、べつのやり方でプログラムを組んで・・・

と繰り返しているうちに期待通りの出力が得られるようになっていくのです。

プログラマーがいかに試行錯誤しているかは、無料Q&Aサイト「teratail」を見ればわかるでしょう。

teratailについては下記の記事にて。

プログラマーに学歴は関係ないし未経験でもOK【作品を見せればいい】

英語に抵抗がない

英語の勉強をする猫

プログラミングにはさほど英語力は必要とされませんが、どうしても英語サイトを見ることがあります。

IT先進国と言えばアメリカですもんね。

ただ別に翻訳家になるわけじゃないのでそこまで高度な英語力は必要ありません。

翻訳ツールや英語の辞書を使ってもいいのでプログラミングに必要な情報だけ取り出せればOKです。

「英語を見るだけで頭が痛くなる!」

っていうほど英語が嫌いじゃなければ問題ありません。

正確に事前計画を立てるコミュニケーション能力がある

プログラマーは

 

「どこまでやるか」

「いつまでにやるか」

「なにがやりたいのか」

 

といったことを正確に理解するコミュニケーション能力が必要です。

さもないと

 

「あれやって」

「これやって」

 

と、こきつかわれてしまいます。

シロ
シロ
「No!」が言える人は強いですね

また、

「それは上司のやりたいことじゃなかった」

となれば手直しに時間がかかってしまいますよね。

信頼度もダウンです。

プログラミングは難しい!カンタンではない理由とつらいところ

ふだんからよく調べものをする【ググる習慣は必須】

検索

日進月歩の世界でプログラミングをするためには、検索能力が必須です。

プログラミンの構築やデバッグの方法はケースバイケースの場合もめずらしくなく、よりたくさんの情報をなるべく早く収集できる人が向いています。

ですから知的好奇心が旺盛で、物事の根拠を明確にしたがる人、よく検索をしたり辞書を引いたりする人はプログラマーに向いています。

IQが100以上ある【さすがに頭わるいとムリ】

パズル

IQの高さと頭のよさ、またはIQそのものの信憑性については賛否両論あります。

しかしながらSEやプログラミングは頭を使う仕事ですから平均値の100は最低必要でしょう。

想像力が高いとプログラミングに大変有利です。

 

「ここでこのエラーが出るのは〇〇が原因ではないか」

「この手法でプログラミングをすれば上手くいくのではないか」

 

たくさんの仮説を立てることができたり、より正しい仮説を立てやすくなるからですね。

IQの測定については、力脳なら過去200万人以上の受験データと自分のスコアを比較できますので、自分のIQが平均以上かどうかという点で、極めて高い精度で結果が見られます。チェックしておくとよいでしょう。

ものづくりが好き【達成感は大きい】

プラモデル

プログラミングに限らず、プラモデルでもミニ四駆でもなんでも

「組み立てることに達成感を感じる」

人ならプログラマーに向いています。

ものづくりが好きな人は完成した時の達成感を知っていますから、たとえデバッグ作業でつらい思いをしてもがんばることができます。

集中力がある【図書館にいても平気】

もくもくと集中してやるプログラミングですから、プログラマーには集中力が求められます。

しずかな環境でジッとして考え続けられる集中力がある人はプログラマーに向いていますね。

 

「図書館で本を読むのが好きだった」

「おなじ場所にずっといても苦にならない」

「地味なことにじっくりと熱意をもって取り組むことができる」

 

といった人はプログラマーの適性がありますよ。

体力がある

根気を支えるのは体力

羽生善治

頭脳労働って肉体的な体力も必要なんですよね。

1時間、2時間と集中して作業する根気を身につけるには体力も必要ということです。

プログラミングは後半になるにつれてバタバタと忙しくなってきます。

プログラムの規模が大きくなってきて、テストの数が増えたり思わぬバグが起きたりするからです。

とても根気がいる作業ですね。

仕事でも遊びでも長時間つづけられる体力がある人はプログラマーに向いています。

多少の怠け者

難しい仕事があるとき、私は怠け者に任せる。だって怠け者は、仕事を簡単に片づける方法を見つけ出すからね。

ビル・ゲイツ

かんぜんな怠け者だと働かないから論外ですが、ほどほどの怠け心がある人はプログラマーの適性があります。

なぜなら

「ラクできないかな?=効率化できないかな?」

という思考回路だからです。

そもそもコンピューターは人がラクをするために開発されたものですからね。

シロ
シロ
工夫していきましょう!

プログラミングが好き!

誰でも好きでやっていることは一生懸命になるし、それに関して勉強したり工夫したりするので、自然に上達するものである。

出典:好きこそ物の上手なれ – 故事ことわざ辞典

これを言っちゃあ何でもかんでも当てはまってしまいますけど、結局はプログラミングを楽しめることがたいせつです。

プログラミングにはさまざまな苦難が待ち受けています。

たいへんなプログラミングを耐えられるだけのモチベーションがある人はプログラマーに向いています。

とりあえず無料チュートリアルやってみる?

カンタンなゲーム開発環境のUnityにはチュートリアル「Create Your First Unity Project」がありますから、よい適性検査になります。

英語なので原文のまま読むか、辞書を引くか、ブラウザに翻訳機能を追加しましょう!

1から環境を用意して最後まで仕上げることができればプログラマーの適性があると言えるでしょう。

もちろんチュートリアルなので実務ではさらに難しくなりますけどね。

プログラミングが好きならやっていけるでしょう。

プログラマーに学歴は関係ないし未経験でもOK!中卒でもできるよ