11
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

優れたプログラマーの性格

Last updated at Posted at 2018-06-27

#はじめに
昨今のプログラミングブームによって、**「教養のために・・」とか「これから必要になると思うから・・」**と言う枕詞でプログラミングを始める人を多く見かけます(特に、大学入学したばかりの学生などに多い気がする)。

もちろん、勉強すること自体良いに決まってるのですが、中には**「え、君、本当にプログラマーになりたいの?」**と声を掛けたくなる人が正直結構います。

そこで、ここでは**『プログラミングの心理学』の一部を参考にながら、「優れたプログラマーの性格」を自分の実体験なども織り交ぜながら紹介します。**
今一度*「自分がプログラマーに向いているのか」**「ただ流行りに流されてプログラマーになろうとしてないか」*ということを確認する1つのフィルターになれば良いと思っております。

#対象
・プログラマーの選考をするマネージャー
・プログラマーになろうか考え中の人
・現在、Progateなどで学習中でこれからさらに本格的にやっていこうか悩み中の人

#プログラミングの成功には、知能より性格の方が重要
ごく普通のプログラミングマネージャーであれば、プログラミングの成功には性格より知能の方が重要だと言うだろうが、プログラミングができないほど知能の低い人は滅多にいない。

技術レベルが足りていないのなら、学習をさせれば必要な部分は後からいくらでも補充できる。
しかし、気質的にプログラマーの仕事に向いていない人の例は、誰でも知っているはずだ。

つまり、技術は後天的にいくらでも補充することはできるが、性格はほとんど先天的に決まっているものであり、さらに性格が原因で起きるトラブルは複雑で対処するのに非常に多くのコストがかかることが間違いない。

#1週間またはそれ以上の間、ストレスのかかる状況に耐える能力
今日のプログラミング業務の実情から考えて、1週間またはそれ以上の間、ストレスのかかる状況に耐える能力を持たない人には、良いプログラマーになる素質がないと断言できる。

#急速な変化への順応性
プログラマーは、たった今手掛けていた仕事が中止されたり、そこまでいかなくても、今までの努力が塵になるぐらい大幅に変更されたりといった心理的ショックを、一生どころか、1ヶ月と免れることが出来ない。

また、急速に新しいテクノロジー技術が生まれている今の時代、ある1つのスキルをマスターしただけで一生食っていくことはできない。時代の変化に柔軟に応じて、需要のある新しいスキルをその場しその場で身につけていく必要があることは間違いない。

#少々の几帳面さ
プログラミングに必要な性格特性の中でも特にわかりやすいのは、少々の几帳面さである。
身だしなみのことを言っている訳ではなく、ここで言っているのは、書類を整理しなくてはいけないと言う意識が多少でもあるかどうかである。
ある計算センターでは、新人採用試験で、もっともM点数の高い応募者ではなく、最もきちんと書類を整理して提出する応募者を採用している

#自信と多少の謙虚さ
プログラマーの仕事は何かを成し遂げることであり、何かを成し遂げるには、時には障害を迂回し、あるいは飛び越え、あるいは叩き壊すことが必要になる。
謙虚な人は、どうすれば自分が道を誤るかをよく知っている。

実際のテストでは、「謙虚型」のプログラマーはエラー回数が極端に少なく「自信型」の方がエラー回数が多かった反面、「自信型」の方が作業の時間が早かったとデータがある。

謙虚さのない自信は、安全弁のない蒸気ボイラーのようなものだが、
自信のない謙虚さは、蒸気ボイラーのない安全弁のようなものである。爆発する危険はないが、何かを成し遂げられる可能性もない。

#ユーモアのセンス
コンピュータは我々を「あざけ笑う」ため、一緒になって自分を笑うことができない人は、そう長い間プログラミングに耐えられないだろう。

ようやく光明が見えたかと思うと、すぐまた馬鹿げた仮定を使い、役立たずの慣行に従い、くだらないへまをする。
「ハハハハハ」と自分を笑えなければ、こんな道化役をいつまでもやってはいられないのだ。

#終わりに
人の個性を形成する要因全体としての性格は、その人のあらゆる言動にあらわれる。それはとりわけプログラムにあらわれる。と語る著者のメッセージと自分の体験談から今回は、「優れたプログラマーの性格」を整理してみました!

そもそも、プログラミングが理解できない程知能が低い人などいないという前提に立つ時、重要なのは後天的に身につく技術よりも「性格」だと主張する著者の意見には賛否両論あるかもしれないですが、上記にあげられた性格特性がプログラマーに求められていることは間違いと思うので、参考にしてもらえたら嬉しいです!

Twitterでは、エンジニア向けの面白そうな情報の共有や、「こんなアイデアあるんだけど作って欲しい!」といった依頼に無料で答えていますのでフォローの方してもらえると嬉しいです!

それでは!

11
14
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?