2020.4.9

「プログラミング能力が高い人」と「教えることが上手い人」は相反する関係

私がシステム開発に携わるようになってしばらくの間、分からないことがあったら仕事ができる人(プログラミング能力が高い人)に訊くものと思っていた時期がありますが、今となっては、それが間違いだったことを実感しています。

なぜ、間違いだったのかというと、きちんと考えれば当然の結果でした。

目次

  • 仕事ができる人(プログラミング能力が高い人)の特徴
  • 間違っていた理由
  • 分からないことがあった時の対処方法
  • 最後に

仕事ができる人(プログラミング能力が高い人)の特徴

システム開発において、プログラミング能力が高い人が仕事ができる人になるのは言うまでもありませんが、では、どういった人がそういった能力が高いのか、というと、これまでの私の経験上では、一般的にオタクと言われる、一つのことを突き詰めるタイプの人がそれに該当します。

この時点で勘のいいひとなら気づいたと思いますが、彼らはあくまで一つのこと(プログラミング能力)を極めることに全力を傾けているため、その能力が高くなっているだけであって、その分、他の能力に時間を割いていないので、コミュニケーション能力が他人よりも低くなっています。

コミュニケーションとは生きていたら自然と身につくものではなく、本人が意識して磨いてきた能力(スキル)であり、日頃から相手に対してどう言えば伝わりやすいのか、理解してもらえるのか、といったことを意識していないと身につくものでありません。

プログラミング能力が高い人は、このコミュニケーションの向上に努める時間を削ってプログラミングに没頭する時間に当てているだけなので、この2つの能力を併せ持っている人は稀です。というか私は見たことがありません。全能力を10割とした場合、今まで出会ってきた人は割合は違えど、10割を超えるような人はいませんでした。

間違っていた理由

つまり、冒頭に述べた、分からないことがあって、それを仕事ができる人(プログラミング能力が高い人)に訊こうとしていた私の行為は、プログラミングとコミュニケーションの能力の割合が『10:0』または『9:1』の人に教えを請おうとしていたようなもので、これまでコミュニケーション(教えること)に時間を割いてこなかった仕事ができる人の言葉は、技術的な格差を抜きにしても理解することが難しい難解なものとなります。

さらに訊いたことに対して一問一答で答えてくれればでいいのに、仕事ができる人は気になることが沢山あるので、その後に余計な情報を付加したりすることが多く、分からないことを尋ねたら、余計に分からないことが増えた、という経験はおそらく皆さんあるかと思います。自分と同じ技術力を所持しているならいいですが、そうでない人にそんな対応されたら、なにも作業が進まず、フリーズしてしまうでしょう。

よって、「プログラミング能力が高い人」と「教えることが上手い人」は相反する関係にある、というのが私の見解です。

分からないことがあった時の対処方法

では、分からないことがあった場合はどうすればいいのか、というと、技術的なものに関しては、自分で調べる、というのが正解になります。

最近ではUdemyなどのオンライン学習というのも流行っているので、仕事の内容と合致するコースがあるのであれば、そういったもので学習するのも一つの手です。オンライン学習の場合、受講生に理解してもらうことが念頭にあるので、自分の知っていることをただ並べ立てるような上述の仕事ができる人とは違って、大変分かりやすく解説されているものが多く、技術的な理解が深まります。動画なので分からなかったところを何度も見返すことができるのもいい点です。

一般的ではないシステム独自の作法や仕様であれば、知っている人に訊くしかありませんが、そういった時も訊く相手を選んで、できるだけコミュニケーション能力が高い人に尋ねるようにしましょう。仕事ができる人(プログラミング能力が高い人)に尋ねるのは、ハッキリ言って時間の無駄です。

最後に

新入社員の時分は私がそうだったように、誰に訊けばいいのかという判断がなかなかできませんが、上述のような仕事ができる人に尋ねてしまった場合は、理解できない自分が悪いのではなく、訊く人間を間違った、という認識で問題ありません。

もちろん技術力の向上は必須で、やるべきことをやった上で訊く人間を間違ったのであれば、それは仕方がないことだと思います。

ひとりごと】関連記事