まずコーディング面接はオンラインのコーディングテストとは全く異なるゲームである事を認識する事からスタートしなければなりません。オンラインのコーディングテストの感覚で面接に望むと高確率で落ちる事になります。ある程度面接に臨むことができる準備が整いましたら、こちらに書かれている内容を読んでください。
コーディング面接では、どのように評価されるのか?
各企業において評価項目や比重は違いますが、大まかにわけてこの4つの要素に気をつけてコーディング面接に取り組んで下さい。
- Problem solving - 問題を理解し、体系的、論理的かつ正確にアプローチできる。また、複数のアプローチとそのトレードオフについて議論する事が出来ると評価が高い。各アプローチの時間・空間計算量を正確に判断して、最適化できる。
- Coding - バグがなく、クリーンで、可読性、再利用性、保守性の高いコードを書く事ができる。
- Communication - 問題に対する自分の思考回路を言語化し、面接官に伝える事ができる。
- Testing - (エッジケースを含む)複数のテストケースを作成し、自分のコードが正しく動くことを示す事ができる。