プログラマーに求められるスキルは、まず要求された機能に漏れがないことやプログラム自体の流れを検討するための論理的思考能力が挙げられる。そのほか、情報収集能力やコミュニケーション能力、使用言語の知識、ハードウェアの知識なども必要だ。
情報収集能力は、新しいプログラミング言語や言語を取り扱う概念など、自分自身が知らない知識を得るために必要となる。
コミュニケーション能力は、開発する機能について顧客や同僚との間に認識の差異があると失注や手戻りにつながるため、最低限身に付けておくべきだろう。
使用言語の知識やハードウェアの知識などの知識も必要だ。
画家が絵を描く際に使用する紙質や絵の具のくせを熟知するように、プログラマーも画家と同様に自分が開発するプログラムがどのような環境でどのように動くかを把握する必要があるためだ。
言語の知識やハードウェアの知識はなくとも、プログラマーになることは可能だ。
しかし、把握していない場合は不具合発生時の原因調査やセキュリティホールの混入などにつながりかねないため、技術の底上げとして自分が扱う範囲の技術は知識として仕入れておくべきだろう。
しかし、これまでに上げたスキルを差し置いて最も重要となるのが、好奇心と向上心だ。
プロジェクトごとに異なるプログラミング言語やハードウェアに柔軟に対応していくためには、新しいものごとでも関心を持つことができる好奇心と新しい情報を取り入れる向上心が必要となる。
これからプログラマーを目指す方は、好奇心と向上心をしっかりと身に付けておくべきだろう。