プログラミングを覚えるために必死になって本を読んで勉強したという人も、プログラマーになって数年すると勉強を怠るようになってしまう人が多いようです。技術書もこの1~2年で1冊読んだかどうかというくらい勉強をしない人もいるくらいです。これはどうかと思います。プログラマーとしてやっていくためには勉強は不可欠です。
たしかにプログラマーという職業に就くと忙しくなって勉強のための時間をなかなか割けなかったりするものです。新しく知識を入れたりして学ぶことよりも仕事を優先させてしまいがちなのもわかりますが、これではプログラマーとしての価値は上がりません。今あなたができる仕事は2年後に入ってくる新人プログラマーでもできる仕事です。今あなたがしている仕事を新人が担当することになったら、あなたには何ができるでしょうか。そういったキャリアの面を考えると、勉強は非常に重要になることはおわかりいただけるでしょう。
勉強するにも仕事をするにも、必要なことは自分がどう評価されるかです。転職することを想定してみてください。そこで自分の価値はどう評価されるでしょうか?プログラマーとしての自分の価値を常に意識しながら行動するように心がけてほしいのです。しかし多くのプログラマーは年単位で同じメンバーと同じプロジェクトに携わることになり、その中で自分の価値を高めるために得られる知識や経験は非常に限定されてしまっています。そのような状況で自分の価値を高めるには、自分の意識を変える必要があるでしょう。
今担当しているプロジェクトが終わり次にしたい仕事を聞かれた時、すぐに答えることはできるでしょうか。多くの人は具体的な将来像を持っていません。「今自分が持っている技術を使った仕事がしたい」などと漠然とした答えしか返ってこないものです。今の自分が持っている技術を活かした仕事を繰り返しているだけではステップアップしていくことはできません。プロジェクトリーダーやマネージャーを目指すといったような明確な目標を持つことができれば、それに必要なことは自ずと見えてくるものです。プログラミングのスキルを上げることはもちろん必要ですが、同時に具体的な将来像を描いてみて必要なスキルを高める努力をすることも忘れないようにしましょう。
プログラマーとしての価値を高めるには、時代の流れに敏感でいる必要があります。必要とされているプログラミング言語は何なのかをしっかり把握してそれをマスターする努力をしながら、関連する知識を付けていくなどしていくようにしましょう。具体的な目標が決まれば自然と勉強し始めるものです。逆に勉強をしていない人は自分の目標が定まっていないせいかもしれません。まずは具体的な目標を決め、目標を達成するために必要な勉強が何なのかを考えてみるようにしてください。
経営者にもプログラマーなど技術的な知識は必要です。なぜなら新しい技術を導入して開発を行う際、技術的な知識がないと判断ができないからです。技術だけでなく現場にとってどのような影響があるのかも把握できていないと全体を管理することはできません。ですから特に技術系の企業には、プログラマー出身の経営者が多いのです。技術には、その技術をどのように実現するかという面と、その技術で何ができるかという2つの面があります。ビジネスとして成功するために経営者は両者を把握しておく必要があります。
プログラマーの中にはコミュニケーションが得意ではないという方は多いかもしれません。しかしよく話を聞いてみると、不得意なのはコミュニケーションではなく社交性だったということがあります。プログラマーにとってコミュニケーション能力は大事ですが、社交性は必須ではありません。プログラムを作成するには要望を聞いて開発を進める必要があるため、相手の意見を聞け、自分の考えを仕えられる「コミュニケーション能力」は必須となります。しかし人との会話に花を咲かせるような社交性はなくても仕事をすることはできます。
「振り返り」という作業を行うと、ステップアップの効果があります。個人でやってもチームでやっても効果がありますが、チームでやるとまとまりが出てきたり、様々な問題や改善策を共有できるようになるため、ぜひ振り返りをすることをおすすめします。振り返りは、ここまでの経過を振り返って良いところと悪いところを書き出し、そこから改善策を考える作業のことです。次の振り返りまでに改善策を試してみて、そこでまた振り返りを行うといったように定期的に振り返りを行うことでステップアップしていくことができます。