プログラマー現役続行(柴田芳樹)を読了。
結果からいうと良い本です。歳を取ってもプログラマを続けたい人へ向けた本とのことですが、技術に明るいSEやコンサルタント、管理職を志向する人にとっても有益な内容といえます。
本書では、プログラマーとして活躍するには以下の能力が重要だとしています。
- 論理思考力
- 読みやすいコードを書く力
- 継続学習力
- コンピュータサイエンスの基礎力
- 朝型力
- コミュニケーション力
- 英語力
一見無関係そうな項目もありますが、どれも納得のできる説明がなされています。
しかしこれは組み込み屋としては耳の痛い評価基準です。論理思考力やコミュニケーション力はまだしも、以下のような事情が珍しくないためです。
- 読みやすいコードを書く力:人員が色々な分野、実行単位に分散していて、粗悪なコードが多い。
- 継続学習力:ソフト、電気、法規、知財、ドメインと、学ぶべき分野が分散してて散漫。
- コンピュータサイエンスの基礎力:電気電子出身が多く、情報科で情報理論や計算機工学をきちんと学んだ人が少ない。
- 朝型力:フレックスが普及していて朝は遅くなりがち
- 英語力:一般的なレベルより強く要求される。例えば部品などの仕様書は当然英語。海外の工場や支社とのやりとりも英語。
とりあえずコードレビューについては本書でHowToも知れましたし、もう少し情報を集めてから実践してみようと思います。
なお、この本に関しては以下の2点に注意が必要です。
1つ目は、著者が50近くの年齢でありながらプログラマとして満足できている状態は、本の執筆活動や高名な海外技術書の翻訳を行っている技術ライターとしての地位と、長年セミナーを主催している教育者としての地位が支えている点です。
2つ目は、本書で扱うのはプロジェクトを進めるための業務遂行能力であり、オープンソースで優れたものを提供したり、ブログや開発物などで名を上げたりするような在野のハッカー的な活動にはほとんどふれていない点です。
すなわち、ありがちな「コミュニケーション能力が駄目だからとにかく技術力を突出させて勝負したい」などと考えている人が望むような答えを出していないということです。結局、好きなことを満足できる地位で続けていくためには、それなりの社会的な名声や実績を蓄積しないといけないということなのでしょう。