ベルリンのITスタートアップで働くジャバ・ザ・ハットリの日記

日本→シンガポール→ベルリンへと流れ着いたソフトウェアエンジニアのブログ

【パズル1】ほとんどのエンジニアには解けるが、下位10%のダメなエンジニアにだけ解けないパズル?

半年ほど前にソフトウェアエンジニア向けの求人募集ページに簡単なプログラミング系のパズルを出して、それが解けた人だけ応募できる仕組みにしよう、という話になった。

その時期は求人を拡大募集していたのだが、あまりにハズレな人が多かった。私もいくつか面談をしたのだが「CV(履歴書)には高いスキルって書いてるけど、言ってることがなんでこんなに変なの?」と感じてしまう応募者が多かった。これは私だけの意見でなく、他のエンジニア達からも不満が続出した。つまり履歴書のスクリーニングが効いてないということだ。日本よりも海外の方が履歴書を誇張する率が高い気がする。そこで考えたのが求人募集ページにエンジニア向けのパズルを出す、という発想。

言ってはみたもののどんなパズルにしようかと考えると案外難しい。
パズルの条件は以下の3つ。

  • 簡単なパズルにすること。あくまでダメなエンジニアだけを門前払いするのが目的だから、変に凝った問題を出していいエンジニアを取り逃す原因にしてはいけない。
  • 全てのウェブ系エンジニアに適用できるパズルにすること。応募するエンジニアがフロントエンドでもバックエンドでもウェブアプリに携わるエンジニアであれば誰でも解けるパズル。プログラミング言語を問わないパズル。
  • Googleで答えが検索できない問題にすること。ググったらすぐに答えがでてきたり、あまりに簡単スギて会社の品位を下げてしまわないようにすること。

これらの条件を全て満たすパズルをあれこれ考えて、自分としてはなかなかいいアイデアが浮かんだな、と思っていた。Ruby, Objective-C, Java, どんなエンジニアであっても共通するウェブ系の知識と勘が問われて、かつ基本さえできていれば解ける問題だ。ところがアイデアができた途端に中止になってしまった。いい人がたくさん見つかって人員が満たされたので求人自体が打ち切られたのだ。せっかく考えたパズルのアイデアがお蔵入りになってしまっていた。

「今から考えてもあれ結構いいパズルだったなー」と思い返すことが多かったので、自分で作って公開することにした。
「下位10%のダメなエンジニアにだけ解けないパズル」と名売ったもののこれが本当に足切りに有効なのかどうか検証できていない。よろしければお確かめいただき、感想いただければ幸いです。パズルが解けたら名前とコメントを入れられる仕組み。
もうさっそく解いてしまったダースベーダー氏からイキなコメントが入っている。(これが誰かはだいたい分かっている。)

パズルはPlease call my APIs.(私のAPIを呼んで)のメッセージと「RESTful」とヒントがあるだけ。
f:id:tango_ruby:20151130122305p:plain:w300

Herokuの無料プランにデプロイした。だいたい眠っているので最初の一発目のアクセスは目を覚ましてもらう時間が5−6秒ある。そこは忍耐力も問われる箇所と考えて、しばしお待ちください。
 
 
【下位10%のダメなエンジニアにだけ解けないパズル】
http://challenge-your-limits.herokuapp.com/
 
もうちょっとヒントとしてはターミナルからcurlコマンド使ってURLの後ろに「なんやら/なんやら」ってつけて叩けばいろいろ出る。バックエンドもフロントエンドのエンジニアもRESTfulに関わったことがあればcurlで叩いて動作を調べることがあると思う。それをそのままパズルにしたまで。



f:id:tango_ruby:20160117225859g:plain

tango-ruby.hatenablog.com

tango-ruby.hatenablog.com

tango-ruby.hatenablog.com

tango-ruby.hatenablog.com