彼は最新の記事において、使用したプラットフォームを熟知しているけれどデザインに関してはあまり知識がない人と、多様なデザインスキルを持っているけれどプロジェクトで使用された特定のテクノロジに関しては何も知らない人どちらかを選ぶ必要があれば彼は後者を選ぶと想定している。また彼は実にデザインスキルは異なるテクノロジ間において完全にはポータブルではなく無分別に複製することはできないけれど、それでさえもその大部分は類似したテクノロジー内だけでなく、例えばcurly-brace言語からRubyまでに持ち越すことができる。
Fowler氏によると多様なデザインスキルを持っている人は異なるプラットフォーム上で迅速に同等の価値をもたらすことができ、デザインスキルに欠ける”競合するプラットフォームエキスパートよりもより生産的”であるそうだ。
プラットフォームのスペシャリストも維持可能なコードを生産するのであれば、多様なデザインスキルを必要とされる。ここで大切なのはプラットフォームよりデザインを学ぶのがより大変なだけでなく、確実性がより低いということである。やる気のある多才なデザイナーがいるとして、彼女がプラットフォームを選ぶのはかなり確実です。でもその逆の場合でも保障はありません。プラットフォームの詳細を学ぶことに優れていますが、まっさらなコードを書くことに関しては全く分からない人たちもいます。
これはテクニカルな分野以外にも当てはまる。特定のビジネスドメインに関して知らない人は他のドメインから興味深い見解を持ってくる事ができ、ドメイ ンエキスパートとの協力、またクライアントコミュニケーションによって必要とされる理解を迅速に得ることができるのである。
それゆえにMartin Fowler氏によると、多様なスキルを持っていることは特定のドメインもしくはテクノロジにおける経験の欠如をよそに、質の良いソフトウェアの構築、またプロジェクトに価値をもたらす道具となるのである。
しかしながら必要な経験を得て、速く効率的になるためにプログラマ達が果たさなければならない条件はいくつかある。まず始めに自身の経験を伝授できるドメインかもしくはエキスパートが必要となる。また明らかにデベロッパのモチベーションと迅速に学ぶ能力と他のチームメンバーとの優れたコミュニケーション力 もまた不可欠なスキルとなってくる。
これらの考察に対するあなたの意見はどんなものだろうか?あなたにとって何が採用基準となるだろうか?
原文はこちらです:http://www.infoq.com/news/2008/01/prefere-broad-design-skills