したがって、「プログラマーのタイプ」を落とすテスト:
1.ヒット数を数える
タスク:banner.phpがあり、静的な画像、ある種のバナーを表示させます。 単に<img src = "/ banner.php" />ページに追加します
何回見せたか知る必要があります。 コードを書いてください。
候補者がApacheログのヒットをカウントするための簡単な解決策を提供する場合、たとえば、「ログはオフです」、「データベースを使用しましょう」、「一意の数は?」などの条件を複雑にします。
驚くべきことに、本物の何かを提供できるのはごく少数です。 何らかの理由で、誰もが急いでセッションを使用するか、クライアント側に何かを保存します。 最も独創的なのは、「Facebookのスーパーロガーを使用する必要がある」です。 彼については何も知りませんが、強くお勧めします。」
2. UNIXシェルでの作業の基本+少しの創造性
タスク:そこに重要なことをするcleanup.phpがあります。 13秒ごとに実行するスクリプトが必要です。
それらのほとんどは王冠に固執することを申し出ます、私はあなたにステップを書き留めるように頼みます、私がcronジョブを表示するために何をすべきか(私はSSHアクセスを持っていることを考慮に入れて) それから、王冠にはほんのわずかなタスクしかなく、ある種の「ハック」が必要であることがわかりました。 繰り返しますが、候補者が「対象」にどれだけ深く、広く存在しているかを理解するために解決策を提案する場合、条件を複雑にする可能性があります。 ほとんどのマージは、「私はlinux-shellでうまく動かせず、管理者がすべてを行ってくれました」と言っています。
3.少数のデータベース-SQL(mysql)
タスク:ライブラリをデータベースに保存したい。 私は本と著者の名前を気にします-他に何も保存する必要はありません。 テーブル構造を提案します。
候補者の半数は、多対多が何であるかを知らず、どちらが優れているかを判断できません。authors_idをbooksテーブルに、book_idをauthorsテーブルに格納します。
構造に問題がなければ、3人の共著者によって書かれた本のリストを引き出してください。 つまり、レポート「book-the number of co-authors」を取得し、3人未満の共著者を持つ人を除外します。
このテストを行う間、3か月間、1つのクエリで純粋なSQLでこれを処理した候補者の名前を思い出すことができます。
まとめ
これらの3つのタスクは、10人の候補者のうち9人を除外しました。 時々私は悲しいと漠然とした疑いが私を苦しめます-多分私は賢明なプログラマーが恋しいですか? おそらく、候補者は「頭から飛び出す」心配して単純なことをしているかもしれませんが、彼らがチームに参加するとどうなりますか-「明日リリースし、私たちの馬がうろついていませんでした」? 「面接でコードを書く準備をする」と言って、事前に候補者を設定する価値があるかもしれません。 もっと悪くないですか? そのようなインタビューを適切に行うことはあなたを傷つけますか?