「データサイエンティストの新卒就活においてコーディングテストの対策がわからない」
「どんな問題が出てどんな対策をすればいいの?」
そんなお悩みを毎年よく聞きます。
この記事ではコーディングテストの概要とその対策方法をお伝えいたします。
コーディングテストの概要
コーディングテストは新卒採用のフローにおいて入ることが多いです。大体はエントリーシートを出した後に1次面接の前後のタイミングで挟まれます。その後面接が複数回あり内定という流れが一般的です。
コーディングテストは課される会社もあればそうでない会社もあります。普通の面接みたいな形式で技術面接というものが課されることもあります。この場合は会話の中で技術に関する知識や経験を問われることになります。今回の記事のテーマはコーディングテストなのでこちらの形式についてより深く掘り下げます。
データサイエンティストのコーディングテストには競技プログラミングのAtCoderに出るような問題が出ます。3問か4問程度の問題で構成されているのが一般的です。
1問目や2問目は簡単な問題が多いです。ラストの問題はどの会社も難しいことが多く、AtCoderで言うC問題とかD問題のレベルになります。
ちなみにLINEの場合は例外的に最初の方の問題から難しいことも多いです。データサイエンティストにバキバキに寄った内容というよりかは一般的なプログラミング能力を測るような問題であることが多いです。その意味でデータサイエンティストに特化した対策を行うというよりは一般的なコーディング的な対策をした方が費用対効果は高くなります。
使用するプログラミング言語はAtCoderのように様々な言語の中から選べます。自分の得意な言語を使えばいいですかデータサイエンティスト志望者ではPythonを使う人が多い印象です。
一部の会社ではSQLを使うこともあります。例えば2023年のメルカリのサマーインターンシップではSQLが必須になっていました。普段kaggleなどでPythonしか使っていなかった人はここに面食らっていたようです。データサイエンスに関する周辺の知識、例えばデータベースなども広く浅くていいので対策をしておくことをおすすめいたします。
意外と対策していない人が多いのはアルゴリズム問題です。
例えばLINEにおけるデータエンジニアのコーディングテストではアルゴリズム問題が課されることが公式ホームページに書かれています。
引用元:https://linecorp.com/ja/career/newgrads/engineering/flow
単純にPythonに秀でていればいいというわけではなく情報系の様々なスキルが必要とされることがここからわかります。
対策方法
ではどのように対策をしていけばいいのでしょうか。
一番手早いのはAtCoderやkaggleをこなすことです。また可能であれば長期のインターンシップに行くのがおすすめです。
実際に問題を解いたり実務に携わることで自然と実力が身についていく状態が理想的です。この過程で技術力を証明できる客観的な実績も手に入るので一石二鳥です。文系からデータサイエンスの勉強をする場合よくある間違いとして市販の本を買ってそれをマスターしようとしてしまうというものがあります。
着実に技術が身についている感じがして達成感はもてる方法ですがあまりおすすめしません。なぜなら実際に分析で使う技術というのは本に書かれているうちのごく一部であり、本に書かれていないような問題への対処こそがデータサイエンティストの難しさであるからです。
この部分を実感できていない段階で新卒就活に突っ込んでしまうとコーディングテスト以外に面接においてデータサイエンティストの人と話す中でもそれが伝わってしまいます。
長期のインターンシップにできれば参加して、それが無理なようであればプログラミングコンテストに参加しましょう。
またコーディングテスト対策についてはその人によって異なる部分も多くあります。データサイエンティスト専門の就活講座「Optima」ではこの辺り含めてオーダーメイドで計画を立てさせていただくので、コーディングテストへの重点のさき方などで迷うことはありません。データ取り組みたいあなたは一度体験講義にお越しください。