メモ

なぜプログラマを難問奇問・一風変わったテストなどで雇ってはいけないのか?

By Iron Man Records

なぜ我々はプログラマを難問・APIクイズ・不可解な演算・その他の面接トリックで雇わないのか?」というタイトルで「Ruby on Rails」「Basecamp」など、積極的にウェブ上の開発を行っている人々の間では一度は聞いたことがある小企業「37signals」が自身のブログ上でエントリーを出しており、その中身が非常に考えさせられる内容となっています。

Why we don't hire programmers based on puzzles, API quizzes, math riddles, or other parlor tricks - (37signals)
http://37signals.com/svn/posts/3071-why-we-dont-hire-programmers-based-on-puzzles-api-quizzes-math-riddles-or-other-parlor-tricks


執筆者のDavidは以下のように書いています。

「私はフロントエンドのプログラミングポジションのために面接されたときのことをよく覚えています、ホワイトボード上でJavaScriptについて何かをする方法を尋ねられたのです。詳細は曖昧で、しかしはっきりとわかったことは、それがどれぐらい愚かなことかと私に感じさせ、実際の仕事とほんの少ししか関係がないということでした。


そのとき以来、私はめったにプログラマーを雇おうという会議室の場で親切な言葉を聞いたことがなく、代わりに多くの軽蔑の言葉を聞きました。しかし確かに少数の難問を解決したがる人が好むような想像力をくすぐる問題というのはあるにはあるのですが、私がそのような人々のうちの一人ではなく、私が会ってきたプログラマーも私と同じでした。

私はすばらしいプログラマーが試験のカゴの中に閉じ込められると停止してしまい、ひどく怖がることを知っています。あなたが次世代型ソートアルゴリズムをデザインするために誰かを特別に雇おうと考えているのではないのであれば、ホワイトボードに何か書かせることは未来の成功に対してあまりにも貧弱な物差しです。

私が将来成功するプログラマーを見つけるために発見した唯一の信頼できる物差しは、彼らが書いたリアルなコードを見たり、巨大な画像をどのようにして扱うかを話したりすることです、これは書籍「Getting Real by 37signals」で触れた「まずは現場でテストを」という原則そのものです」

上記エントリーの最後に出てくる「Getting Real」というのは、この37signalsが出した書籍のうちのひとつで価格は24.99ドル(約1900円)なのですが、なんと全文が日本語訳されており、以下からネット上で無料で読むことが可能です。

Getting Real by 37signals
http://gettingreal.37signals.com/GR_jpn.php


「Getting Real」自体が37signalsの方法論、すなわち「より小さく・より早くソフトウェアを作る」というアプローチを解説したもので、実際に37signals自身がその極端ではあるけれどもシンプルではっきりとしたいくつかの方法を組み合わせることで、数々の使いやすいウェブアプリケーションを世の中に送り出しており、それらは有料ですが多くのユーザーや企業から支持されて利用されています。

上記エントリー中の最後に出てくる結論、「まずは現場でテスト」というのは以下のように書かれています。

まずは現場でテストを

人を雇うとき見るポートフォーリオや履歴書、以前手がけたコード実例、前職等は実際に現場で(一時的にでも)働いてもらうのとはかなり違う。可能ならいつでも、新たな仲間となるかもしれない人材を「テスト・ドライブ」してみましょう。

誰を雇う前でもそうですが、まずは小さなプロジェクトを与えてみます。どのようにプロジェクトに取り組み、どのようにコミュニケーションを行い、どのように働くのか…誰かと共にいくつかの画面をデザインし、コードを作っていく過程からわかることは、貴重な体験です。そこに良い雰囲気があるか否かは、きっとすぐ分かるはずです。

スケジュール的に悠長なことを言ってられない場合もありますが、たとえ20時間や40時間だけでも、無いよりはマシです。自分たちの組織に合っていてもそうでなくても、それははっきり分かるはず。もし結果が悪いものであっても、始めに現場でテストしておくことで、お互いに多くのトラブルを防ぐことができるのです。

スタートは小さく

まずは、小さな課題から試みることだ。いきなり、仕事全てを任せてはいけない。テストプロジェクト1つや2つを新しい「バーチャルアシスタント(雇うかもしれない人)」に与え、自分達とどの様な相性なのか見てみるのだ。はじめ、ポテンシャルの問題を色眼鏡で見るのは簡単すぎる。これはテスト・ランだとの前提で。
—スザン・ファルター・バーンズ、作家、クリエイティビティ・エキスパート
("How To Find And Keep The Perfect VA"より)

さらにその次の「言葉より行動」も非常に考えさせられる指摘です。

未来のスタッフ雇用は彼等のオープンソースへの寄与から

技術職の雇用の典型的な方法は、専門分野や履歴書などに基づいたものだが、色々な意味で欠陥があります。学校の専門分野や成績で何がわかるのでしょうか?履歴書や推薦書を信じられるのですか?

オープンソースは、テクニカル・スタッフを雇う上で非常に役立つものです。オープンソースを使えば、仕事ぶりや成果を長期間で、よい結果も悪い結果もチェックすることができます。

それは、言葉ではなく行動で人を選べるということです。本当に大切なことに基づいた決定ができるのです:

仕事の質
多くのプログラマーは、話をさせると一品だが、いざ実際に行うとなるとしり込みする。オープンソースでは実際の仕事ぶりからその人のプログラムの技術レベルや熟練度が分かる。

文化的視点
プログラムは全て決断である。とても沢山の…そうした決断は、文化的な優位、価値、理想などで決まる。とある決定をする際に、候補者のコード、テスト、そしてコミュニティ内の議論などを通じて、自分たちの組織文化に合っているかどうか確認する。もしうまくマッチしていなかったら、仕事の決定もまとまらないものになる。

情熱の度合い
一般に、オープン・ソースの参加者にはある程度の情熱がある。でなければ、わざわざ自分の時間を使って画面の前に座っていることはないはずだ。オープン・ソースの参加は、応募者のプログラムに対する真の姿勢を見出してくれるのだ。

完成度
どれだけの頭脳で、どれだけ現場に溶け込んで、情熱を持っていても、プロジェクトが終われなければソフトウェアの価値はない。不運なことに、多くのプログラマーはプロジェクトを完遂できない。そのため、その点を重視したい。現実的なプランでプロジェクトを完遂させる人材を雇うに越したことは無い。

社会的なマッチ
誰かと長い間共に仕事をする、それはストレス・リラックスやハイ・ローの要素が絡み合い、真の人間性が現れるものだ。社会のマナー・他人への配慮等のない人は雇うべきではない。

プログラマーに関しては、我々はオープンソースでの関わりでよく素性を知ったもののみを採用します。それ以外の採用は無責任だと考えますから。ジャミスを採用したときも、Rubyコミュニティでの彼の活躍、参加を見てのものでした。彼のプロジェクトでの業績(上記のもの全てで)は抜群でした。他の付随的な要素に関しては調べる必要はありませんでした。我々は本当に重要なものを知っていたからです。それはもちろん、彼の仕事の質。

オープンソースの仕事に焦点が移ってしまい、普段の仕事に熱が入らなくならないかと心配することはありません。古いことわざにこんなものがあります:『何かを欲すれば、一番忙しい人間に尋ねよ』。ジャミスとデイビッドは、Railプロジェクトの最も中心的なメンバーであり、37signalsの技術も支えています。プログラムを愛し、仕事をこなす人間は、間違いなくチームに一番欲すべき人間です。

上記はプログラマーに関しての部分であり、ほかの職種には応用しがたいかもしれませんが、その次の「経験豊かな人を」「熱意はごまかせない」「文章家」の3つは、人を雇う上で迷っている人や失敗した経験の多い人にとってはかなり参考になるはずです。

経験豊かな人を

スペシャリストより早く覚えるジェネラリスト

我々はスペシャリストを雇うつもりはありません。彼等のディテールのこだわりは半端ではありません。我々のような小さなチームには、そのような一部にとてつもない能力を発揮する専門化肌の人間は合わないのです。

小さなチームには、何足もの草鞋を履けるような人間が必要です。ものを書くことができるデザイナー、デザインの分かるプログラマー…全てのメンバーが情報を(どんな情報でも)組み立てるアイディアを持つべきです。全員整った精神が必要だし、全員が顧客とコミュニケーションできることが必要なのです。

そして、メンバー全員にいつでも道から外れられる気持ちが必要です。小さなチームはしばしばその方向を変え、素早く軌道修正することがあります。そんな軌道修正にも応じて、学習できる人間が必要になるのです。1つのことに固執し変化を見出せない人間は我々のチームには合わないのです。

熱意はごまかせない

不満だらけの優等生より幸せで普通を

熱意。それはごまかすことのできないものである。人を雇うとき、その世界で噂になっている人間や、高い技術で知られている有名な人がいいだろう…なんてことは考えないで。結局彼らはプリマドンナなことが多いのだから。普通だけど幸せな社員の方が、ブツブツ不満をもらす専門家より良いということです。

熱意を持った人間を見つけましょう。1人でも仕事を任せられる様な人。大きな変化に疎い企業で悩み、新たな環境に身を投じようとしている人。自分達の作るものに熱中できる人。あなたが嫌いなものを同様に嫌っている人。あなたの列車にワクワクして乗ってくれる人。

文章家

良い文章家を雇う

採用する際には、個々の文章能力を重要視します。それは、デザイナーでもプログラマーでもマーケティングの人間、営業の人間でもです。文章構成のスキルは高く評価します。効果的な、シンプルな文章作成と編集の力は、コードやデザインやコミュニケーションなど、様々な舞台にも応用が利きます。

というのも、良い文章家の真髄は言葉部分だけではないからです。彼等はコミュニケーションの仕方が良いのです。人に理解させるのがうまい、相手の立場を考える、不要なものを見分ける、シンプルに考える…それらがあなた達にも必要なものです。

ほかにももっと具体的な方法や事例についていろいろと書かれており、並の本に書いてあるレベル以上の(しかも実践的で地に足がついている、実際の経験から導き出されたということがよく分かる)内容となっているため、この「Getting Real(日本語訳版)」は一読をオススメします。

この記事のタイトルとURLをコピーする

・関連記事
Googleの面接試験、一体どのような質問をされるのか? - GIGAZINE

Instagramの採用試験をドラッグ&ドロップで突破するサイトが出現 - GIGAZINE

なかなかクリエイティブな難しいテストの問題をごまかすための方法 - GIGAZINE

高校生のほとんどがテストやレポートでズルをするが、それをズルだと感じていない - GIGAZINE

「処女テスト」にさらされたエジプトの女性たち - GIGAZINE

in メモ, Posted by darkhorse

You can read the machine translated English article here.