エンジニアは職人たれ

 ソフトウェア職人気質を読みました。

ソフトウェア職人気質―人を育て、システム開発を成功へと導くための重要キーワード (Professional Computing Series)

ソフトウェア職人気質―人を育て、システム開発を成功へと導くための重要キーワード (Professional Computing Series)

  • 作者: ピートマクブリーン,McBreen Pete,村上雅章
  • 出版社/メーカー: ピアソンエデュケーション
  • 発売日: 2002/03
  • メディア: 単行本
  • 購入: 3人 クリック: 78回
  • この商品を含むブログ (64件) を見る

 本来「製造業」でないのにも関わらずそうした画一的な手法で開発できると勘違いされているソフトウェア開発の中で、本当に必要であるのは「職人」である、といった考え方を述べた本です。
 ・親方(職人)
 ・親方の手足(ジャーニーマン)
 ・見習い(アプレンティス)
 のようなランクと役割をきっちりと持ち、育成の段階を踏ませ、これらに貢献する職人にはきちんと値する報酬を与え保護すべきというのがこの本の趣旨となります。

 いわゆる野球やサッカーなどの名選手を例に挙げ、コーチ(マネージャー)よりも選手(職人)がその活躍に値するだけの報酬を得ているのは当然である、という考え方を用い、なぜそうでなければならないのか、というところをきちんと述べています。
 端的に言えば、それはその人でなければできないことがある、できないプレイ(技術/コミュニケーション/設計/知識など無数の要素)があるということに他ならない訳ですが、本書ではそこを強く掘り下げているわけです。

 特に気に入ったのが、

 開発者の中には共同開発を好まない者もいます。(中略)
 また、チームの環境になじまない開発者もいます。さらに、活発な学習を行うことができず、新しい考え方についていくことができないひねくれた開発者もいます。こういった問題すべて(他にもあります)によって、共同開発の効率は悪化するのです。
 チームがこの種の問題の餌食になりそうな兆候を、チーム内の誰かが感じ取った場合、即座にそのことを申し立てることが重要です。問題について話し合い、その個人を指導するのです。そして、振る舞いが早期に改善されないのであれば、プロジェクト・チームからその個人を外します。人手が足りている病んだチームに比べれば、若干人手の足りないチームの方が、ずっと優れたチームと言えるのです。健康なチームは常に、ずっと効率的なのです。

 本書では職人は下働きではない、と定義し、管理者になって消えてしまう職人をどうにか守らなければならない、という一方で、職人は独りよがりであったり、頑固であったり、自身のこだわりに執着してはならない、ということを述べています。
 また、職人気質とは資格制度の対局に位置し、資格によって分類された交換可能な部品であってはならないといった意見を伝えようとしています。要するに、スーパープレイヤーは置換可能であるわけがない、ということです。
 野球で言えば、イチローイチロー、松井は松井、新庄は新庄ということです。

 資格制度は幻想であり、資格制度によって製品の品質を検査できるという仮定を持ってはならない、なぜなら、それは品質を保つことに何ら寄与せず、関連性もないからです。
 反面、職人気質によって品質を保つことで、欠陥を作り込む機会を減らし、無駄な時間、資金、努力を削減し、よりよい利益を享受できると述べています。

 要するにエンジニアは職人気質を持った「個人」であらねばならない、ということなのです。
 すぐに実践できないことも含まれており、いわゆる考え方を構築する本ではありますが、管理者や経営者には読んでいただきたいものです。
 10倍の生産性を持つ職人には10倍の報酬を払うべきなのです! ということがよくわかります。