ホワイトボードのコードをテストしてほしいので、ぜひ書いてください。書きながら大声で話して、よく読んで、あなたが犯した構文の間違いのほとんどを見つけて、それがより効率的である方法を指摘してほしい。実際、それはホワイトボードでそれを行うポイントのようなものです。それはだない、ワンショット、ライト・イットオールアウト、事の/ 100種類フンフン-あなたは-70を取得します。これは会話であり、コードによって仲介され、デスク全体ではなくホワイトボードで開催されます。
「ホワイトボードコーディング」テストに失敗する優れた方法は次のとおりです。
- それを拒否する
- 単一の明確な質問(言語、プラットフォーム、要件についての何か)を聞かないでください。また、それについてあなたの仮定を教えてはいけません。
(例:Fortranで記述し、「表示」または「印刷」を「イベントログへの書き込み」と解釈します。そのようなことを事前に伝えていただければ、それを許可するかもしれません)
- 希望する言語を聞いて、職務内容に記載されている回答を受け取ってから、別の言語で書いてください。あなたが求めている言語に慣れていないからです。
(私たちはここのコンサルタントです。コーディングと同じくらいコンサルタントの行動をテストしています。クライアントに実際に選択肢がある場合にのみクライアントに尋ねることは正しいです。どんなトピックでもあなたに対してマークを付けますが、特定の「Xプログラマーを雇っていますが、Xで書きたくありません」には、2つの大きな黒いマークがあります。)
- 「1から5までの数字を印刷」したいときに、2つのホワイトボードにインターフェイス、ファクトリーパターン、抽象化、注入、およびテストを入力して、あなたが建築宇宙飛行士であることを教えてください。
(私は誇張していると思いますが、私の問題を劇的に一般化した人がいました-上記の例に固執すると、1から5の代わりに彼の解決策は整数の任意のシーケンスを実行します(どこから来たのですか?そして、彼は実際に作業を行った関数を呼び出すのを忘れていました。彼がデバッガーであるかのようにそれを通り抜けることを繰り返し促し、関数が呼び出されなかったことに気づきませんでした。
私はいつも「あなたはそれが好きですか?」と言います。「それを改善できますか?」「それを歩きましょう」など。通常、その会話で欠落しているセミコロンが発見されるか、1つずれています。そうでない場合、私は通常、神経にそれをマークします。
ホワイトボードで私にとって重要でないと思われるその他のこと:
- あなたが終わったとき、私はまだそれを読むことができますか?汚れた、走り書きした、色を切り替えた、矢印を描いた、取り消し線を付けて、現在使用できない混乱を残したことがありますか?それとも、ホワイトボードが消去可能で、空中にあるコード行を旋回/矢印で指すのではなく、写真を撮ってデザインファイルに保存できるものを残してくれたことをご存知ですか?
- あなたがやったようにあなたはどれくらい私に尋ねましたか?コードを議論せずに放置するのが好きですか、それともコードを共同作業と見なしますか?まだ書いている間に私があなたに物事を尋ねたとき、あなたはどのように反応しましたか?
- 「簡単な」タスクに冷笑したり、「難しい」タスクに気弱になったりしましたか?コーディングできることを示すように求められるのは無礼だったのですか?技術的な問題に簡単に脅かされていますか、または優れたアルゴリズムを思い付く能力についてAre慢ですか?
- あなたは頭の中でそれを解決していますか、またはどこかで読んだ解決策を覚えていますか?私は通常、難しい問題について話すことができます。
- 書き始めた場所について前もって計画しましたか?ホワイトボードを使い果たした人々は、通常、低すぎるか、または大きすぎて書き始めます-これが20行のコードになるとは知らなかったので、5行だけ残しました-この小さな詳細が反映されているかどうかを信じてくださいより大きな推定タスクも。
- あなたが終わったと言う前にそれを見ましたか?私があなたに頼む前に、あなたはそれを指して、またはあなたの方法をタップして自分でテストするのを見ましたか?プロンプトを表示したり、それについて特定の質問をしたりしたとき、もう一度確認しましたか、それとも単に記憶から消えましたか?最初のドラフトが完全ではない可能性があることを検討しますか?
ホワイトボードでコーディングを練習することを強くお勧めします。私はいつもインタビューの相手に、彼らがそれをするように求められることを警告しています。実際のホワイトボードにアクセスできる場合は、簡単な問題を自分で設定し、そこで実践してください。それはあなたのパフォーマンスと自信に役立ちます。
申し訳ありませんが、私はTL; DRの領域にいることを知っていますが、ホワイトボードでのコーディングはコーディング以上のものです。これは、構文の把握以上のテストです。このタスクへの応答で実証されている優れたプログラマーの行動がたくさんあります。コーディングについてだけだと思うなら、あなたはその点を見逃しています。
ホワイトボードのテストに関する他の会話では、良い候補を拒否するかもしれないと人々は言っています。正直なところ、それは私が喜んで取るリスクです。すべての雇用ラウンドには、私が雇うことができる人が何人かいます。インタビューの質疑応答の部分で大丈夫な履歴書を持っている人の中には、ホワイトボードでバラバラになり、知っていると主張する言語で簡単なコードを書くことができません。私はこれらのいくつかを雇ったかもしれません。それを妨げるツールは、私が引き続き使用するツールです。私の候補者全員がホワイトボードを台無しにしたため、私は誰もボートを雇うことができませんでした。