2015年2月1日日曜日

プログラマー技術評価サイトpaizaについて

プログラマー技術評価サイトのpaizaというのを試してみたので、その話をします。

昔、私が思いついた事業アイデアの一つに、問題を出してプログラマーの技術評価をするウェブサイトを運営するというものがありました。そのため、こうした事業には強い興味を持っています。

このようなサイトは各種ありますが、paizaの特徴は

  1. 明確にランク分けされており、分かりやすい。画像なども美しく、問題を解くモチベーションが高まる。いわゆるgamificationという奴ですかね。
  2. ランクを上げるのには、一つだけ問題を解けば良く、暇人でなくてもランクを上げることができる。これは大変良いです。codeevalは多数の問題を解かねばならないようで、げんなりします。
  3. 転職サイトが合体しており、「このランクならこの求人に応募できる!」というのがあり、さらにモチベーションが高まります。素晴らしい。
  4. 同じ問題は一度しか挑戦できない。
などがあるかと思いました。とにかく完成度が高く、開発運営するのにいくらかかってるんだろ?と心配になってしまうくらいです。


いくつか実際に問題を解いてみましたので、そこから各ランクについて、どれくらいのスキル感かを考えてみます。

Bランクの問題では、「最遅出社時刻」というものを解きました。これは、アルゴリズムはシンプルなもので解けますが、問題文をきちんと把握して、それをプログラムに落とすには、気を遣う内容と思いました。この問題が解けるなら、プログラマとして即戦力で働けるレベルのコーディング力かなと思います。

Aランクの問題では、「ビームの反射」というのを解きましたが、これは簡単すぎるかなと思いました。Bランクの問題に比べてとくに難しいとは思わなかったです。というか「最遅出社時刻」より簡単でした。paizaの方式だと、一つ簡単な問題があると、ランクが取れてしまうのは問題ですね。

Sランクの問題では、「データヒストグラム」というのを解きましたが、かなり手強かったです。実務で同じような問題を解いたことがあるので46分で解けましたが、そうじゃなければ時間かかりすぎて諦めていたかもしれません。

Sランクの問題が解けるなら、一般のIT企業で普通にプログラマーの仕事をする分には、コーディング力で詰まるということはまず無いかと思いますね。これを「スーパープログラマー」と呼ぶのには抵抗がありますが、多くの企業にとっては十分すぎるレベルではないでしょうか。

ちなみに私はプログラミングコンテストみたいなものには一切縁の無い普通のプログラマーです。プログラミング歴だけはめちゃくちゃ長い(30年以上)ので、それなりには書けますけどね・・・


という感じで、問題も結構良く出来ており、プログラマを雇う参考にしたり、プログラマが自分のコーディング力のレベルを把握するには、すごく分かりやすいかなと思いました。

paizaは転職サイトとしても大変よいなあ、と思ったので、もっと普及してくれるといいですね。もし弊社が一般採用することになれば、是非利用したいものです。

あとは問題にバラエティが広がり、各種APIの利用やら、専門分野のプログラミングやら、果てはもっと大型の問題など、いろいろ増えると面白いでしょう。

各企業としてはデータベースプログラミング能力については是非知りたいところでしょうね。sqliteを使えば、データベースを設計して問題を解くところまで一気にできますので、面白いかと思いますね。

「プログラマが正しく評価されていない!」とか愚痴を言う人は大勢いますが、こうやって解決策を実際に提示する人は本当に素晴らしいと思います。

0 件のコメント:

コメントを投稿