こんにちは。谷口です。
ITエンジニアの面接では、コーディングテストが実施されることがよくあります。
いくら面接で話すのがうまくても、開発のスキルが低い人をエンジニアとして採用するわけにはいきませんから、当然といえば当然です。ただ、初めてコーディングテストに臨む人は、いったいどのような対策をいいのか分からない方もいるのではないでしょうか。
今回は、エンジニアの採用選考におけるコーディングテストで
- どんな問題が出題されるのか
- どんな対策が有効か
についてお話しします。
転職に興味があるエンジニアの方、転職活動中の方の参考になればと思います。
エンジニアの面接で実施されるコーディングテストとは
エンジニアの採用選考で、通常の質疑応答ではなく、コードを書く力を問う問題を課す選考試験をコーディングテストと呼びます(「コーディング試験」「技術面接」などと呼ばれる場合もあります)。
特に経験者として中途エンジニア求人に応募する場合、開発経験やスキルが評価されます。コーディングテストの対策はほぼ必須と言ってよいでしょう。
コーディングテストの内容とは
コーディングテストの実施形式は
- その場でホワイトボードなどにコードを書く
- Web上で解く
- ペーパーテスト
などがあります。
企業は応募者の
- プログラミングやアルゴリズムに関する基礎知識
- 論理的に考える力
- プログラミングをするときの考え方
- コードの書き方
を見るためにコーディングテストを実施しています。
Web試験ならまだしも、エディタのないホワイトボードや紙の上にコードを書くのは慣れていなくて戸惑うかもしれません。ただ、多くの場合、企業は細かいコードの正しさ以上に考え方や解き方を見ているので、あまり神経質にならずに落ち着いて取り組むといいでしょう。
また、コーディングテストでは、コードを書いたあとで「どうやって考えて解いたのか」の説明を求められることも多くあります。コードを書きながら「どこがこの問題でのポイントになりそうか」を意識しておくとよいかもしれません。
なお、コーディングテストであわてないために、paizaのスキルチェック問題などを利用して、日頃からプログラミング問題に慣れておくとよいでしょう。
paizaのスキルチェック問題について詳しくはこちら
問題を解く以外に技術的な考えや知識を聞かれることも
エンジニア求人の面接では、コーディングテストだけでなく
- こういうプロダクトでこんな不具合が起きたら、どこに問題があると考えるか
- どんな順番でどこを調べて、どんな対応をとるか
- 前職で技術的なトラブルにあったことはあるか
- そのときはどんな対応をしたか
といった質問をされることもあります。
このような質問には、明確な正解があるわけではありませんので、冷静に「業務だったらどうするか」を考えましょう。
そして
- 自分ならまずこの順番で原因がどこにあるか調べる
- 実際にこんなトラブルが起きたときはこんなふうに調べて解決した
といったことを説明しましょう。
どんなエンジニアでも、すべての分野の経験や知識があるわけではありません。企業側は、実際に同様の経験があるか、完璧な対応ができるかではなく
- 基本的な開発や調査の手順、システムの構造などを理解しているか
- 開発をするときにどんなことを考え、重視しているか
を知りたいと考えています。落ち着いて自分の考えや経験、知識を整理して説明するようにしましょう。
すぐにできるコーディングテスト対策
プログラミング問題の練習をする
繰り返しになりますが、ふだんからプログラミング問題を解く練習をしておくと、採用選考でコーディングテストを受けることになってもあせらずにすみます。
前述の通り、paizaのスキルチェック問題は、レベル別のプログラミング問題に誰でも・何度でも挑戦できます。また、問題には制限時間もありますので、限られた時間の中でコードを書く練習にもなります。
プログラミングが動画で学べるpaizaラーニングの「アルゴリズム入門編」「スキルチェック入門編」でも、技術面接でよく出るようなプログラミング問題のアルゴリズムや効率のよい解き方を解説しています。プログラミング問題に興味がある方はぜひごらんください。
まとめ
エンジニアとしての転職を目指す方は、普段から少しずつ意識したり問題に挑戦したりしておくと、自分のスキルをしっかり企業にアピールできるはずです。
paizaのスキルチェック問題について詳しくはこちら
「paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。
詳しくはこちら
そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。
詳しくはこちら