ブログエンジニアブログでは、ロゴスウェアの製品、システム開発に関わるエンジニアの奮闘について書いています。on2009年3月23日システムデザイングループの面接に課題を導入いたしました。以下は、先日行った2次面接で、実際に行われた課題になります。目的:プログラムの設計能力、コーディング能力、解析能力を総合的に計ることを目的とする。課題:1ユーザー(利用者)はWeb画面でキーワードを入力する。2システムは、キーワードをデータベースに保存し、ID番号を発行する。3システムは、定期的にYahoo!トピックスAPIを利用し、そのキーワードに該当するニュースを取得し、データベースに保存する。4ユーザー(利用者)は、Web画面に1発行されたID番号を入力することで、データベースに蓄積された情報から、指定されたキーワードに関するニュースを閲覧することができる。※「表示されるニュースを重複させない」など、利便性を向上させる工夫をすること。条件:1言語はPHPをメインで用いること。2データベースはMySQLを用いること。3API利用のため、Yahoo!デベロッパーネットワークに登録すること。4可能であれば、公開可能な自己所有のサーバーにて構築すること。仕様を要求にとどめた自由度の高い課題になっております。面接は一種のアピールの場です。通り一遍に課題をこなし、要求通りの成果を見せていただいても、それは面接官の心を捉えることはないと思います。私はこの課題の中で、「自分で思案した工夫」をアピールしていただきたいと求めているのです。この私の隠れた要求を、課題の中から読み取ることが、1つ目のハードルかもしれません。今回面接に来ていただいた方は、たくさんの「工夫」をもって、私の要求に応えてくれました。一部を紹介いたしますと、Smary(フレームワーク)を用いて開発を行った重要になるDB操作の関数を定義することから着手したコードレビューを円滑にするためSubversionの導入とWebビューアを用意したこれらの「工夫」が正解であったかどうか?それは最重要の問題ではありません。自分で思案し、工夫したこと、またそれらを積極的にアピールしたこと、それが重要なのです。これは、実際の業務の中でも言えることだと思います。担当する開発業務の中で、顧客の要求を満たすことは最低条件ですが、その中により良い機能を工夫し、顧客の満足を得られれば、ひいてはそれを社内でアピールし、評価を得ることができれば素晴らしいことです。システムデザイングループでは、それらが行える環境を用意しているつもりです。谷中システム開発チームと検証チームのマネージャー。裏スローガンとし、これが実現できてこそ、幸せな開発者人生を過ごせるという確信のもと、上流から設計まで口を挟んだり挟まなかったりしています。ロゴスウェア2001年7月に設立されたITベンチャー企業。社員の主体性を大切にする社風で、いつも「新しいもの」「とびっきりすごいもの」を目指しています。