見出し画像

【22新卒エンジニア】私はこうしてAmazon SDEに落ちた

はじめに・自己紹介

2022年のAmazon SDE(Software Development Engineer)職の選考に応募し、最終面接で落ちました。応募をしたのは、学部3年の7月頃(2020年)、不採用が決まったのが同年9月の末頃です。選考の過程で得た知見を本記事で共有できたらと思います。

軽い自己紹介をしますと、僕は早稲田大学の情報系の学部の大学4年生です。プログラミングを始めたのは大学に入ってからです。在学中は色々な会社にインターンとして働き、開発経験を積んできました。

始まり

始まりは2020年の8月頃、学部3年の夏休みのことでした。

僕は学部での外資系企業への就職を選択肢に考えており、LinkedInのプロフィールを作成したり、海外のエンジニアの就職活動の様子をyoutubeなどで情報収集していました

そんな中、LinkedInにてAmazon Japanが新卒のエンジニアの募集を開始したとのフィードを目にすることに。

僕は大変焦りました。早くても学部3年の冬ごろから募集が始まるものだと考えていたからです。

このチャンスを逃したら、Amazonに新卒で入れるチャンスがなくなってしまうのでは?と危惧した僕は、大慌てでresumeを書き、コーディング面接の対策を始めることになります。

※ 翌年の2月頃(学部3年の春休み)に、2022卒エンジニアの募集が再度ありました。当時の僕は「このチャンスを逃したらAmazonにもう応募できないのでは?」と思っていましたが、実際は募集はいくつかの期間にわけて行われるようです。

僕が体験した、Amazon Japan SDEの採用フローは以下のようになります。ちなみに、このプロセスはどこの国においても概ね同じなようです。

1. 履歴書(CV)を提出 - 2020年7月下旬
2. OA(Online Assessment)
- 7月下旬 ~ 8月中旬
2-1. 簡単なコードリーディングテスト
2-2. コーディングテスト
2-3. ワークシミュレーションテスト
3. 一次面接 60分 - 
8月下旬
4. 本面接 1vs1 60分 × 3回 - 9
月中旬
5. 合否 - 9月下旬

僕の場合は、最終面接まで進みましたが、残念ながら内定はもらえませんでした。以下、選考フローの各段階での経験や対策について書いていきます。

OA(Online Assessment)

resumeを送ると、数日後にリクルーターからメールが届きました。これから始まる選考についての説明がありました。Amazon SDEの選考では、まずOA(Online Assessment)があります。OAは3段階にわかれ、各段階をクリアした人だけが次に進める仕組みです。

OAの1段階目は簡単なコードリーディングのテストです。本当に簡単なテストでした。ただ、問題がJavaC++でしか解くことができないので、大学の授業で習ったJavaを復習しました。

2段階目はコーディングテストです。競プロ的な問題が出されます。選考を受けるのが初めてだったので、テストを受ける時期を遅らせ、可能な限り対策を行いました。90分で2問出題出てくるのですが、30分ほど時間があまったので、割と余裕がありました。問題自体も、アルゴリズムとデータ構造を学んでいれば、あっさりと解けるぐらいの難易度です(LeetCodeでいうと、easyとmediumの中間ぐらい)。2段階目では、PythonJavaScriptなどの言語も使用が許されたので、JavaやC++にあまり精通していなくてもなんとかなりました。僕の場合、ここから最終選考に至るまで、Pythonしか使わなかったです。

3段階目はワークシミュレーションテストです。性格のテスト、的なところがあるので、Amazon Leadership Principles を確認して、Amazonの社員だったらこうだろうな、というイメージを自分の中に持って問題に取り組みました。問題自体はとても簡単です。ただ、全部英語なので、リーディングが遅いとキツイかもしれません。

OAの各段階にて、回答を提出すると、次の段階に進めるか否かのメールが届きます。

一次面接

OAを突破すると、実際にAmazon Japanで働いているエンジニアとの一次面接が待ち構えていました。色々な書籍、サイトを用いて学習を行いました(詳しくは後述します)。面接はすべて英語なので、そのための英会話の特訓も少し行いました。

面接の時間は1時間、45分がコーディングの問題で、15分が行動面接(behavioural interview)です。

本面接

一次面接から数日後にリクルーターから、本面接(最終面接)の案内が届きました。

1:1の面接が一日に3回あり、それで採用が決まるとのことです。

面接の自己評価としては、5点満点で、3.0, 3.5, 4.0 でした。受かるか落ちるかわからない、ぐらいの手応えで、全く手も足も出ないかというとそんなことはありませんでした。

選考の結果の連絡がくる

最終面接から数日間、悶々とした日々を行っているところ、一通のメールが届きます。メールを開封すると、「残念ながら...」の文章が目に飛び込んできました。本気で挑んだ選考で、不採用の通知がくるとは、これほどダメージを食らうものだと、身を持って体験しました。終わりはあっけなかったです。

使用した書籍・学習教材など

落ちた分際で言うのもあれですが、一応最終面接までは進みましたし、ネット上ではあまり有益な情報が転がっていなかったので、僕なりのtipsをシェアシたいと思います。

過去に僕が書いた記事があるのですが、そちらに使用書籍・勉強法・勉強量、全部まとめてあります。


参考にした情報源

やはり何より役に立つのは一次情報でした。Amazonが公式に発信している情報は片っ端から集めました。



大体このページに全ての情報が載ってます。僕は隅々までチェックしました。

Amazonでは、Leadership Principlesというものが重要視されます。

Amazonのインタビュープロセスを徹底的に解説している記事です。この記事は本当によくできていて、僕の受けた選考プロセスも大体こんな感じでした。


Amazonから不採用のメールを受け取ったときは、ポケモンの主人公のように、「目の前がまっくらになった」というのは大げさですが、がっくりしました。そんなとき、下記の記事をもじり、"Amazon lost a chance to hire me!"と自分に言い聞かせました。


最後に

僕は大学三年生のひと夏を捧げ、代わりに残ったのは一通の不採用通知だけでした...

というネガティブな論調で進めるつもりは全くありません。Amazonの選考を受けたことで、僕は多くのことを学びました。

まず、「アルゴリズムとデータ構造」を一からしっかり勉強できたこと、これが大きかったです。大学ではCS系の学科にいるので、アルゴリズムやデータ構造の授業は取っていたんですが、いまいち自分の血肉となった気がしませんでした。今回、LeetCodeやAlgoExpert、世界で闘うプログラミング力を鍛える本 コーディング面接189問とその解法 などの学習教材を通じて、いかに自分が何もわかっていなかったのかを痛感しました。その後のインターンでも、明らかにレベルアップが実感できたので、得たものは非常に大きかったです。

次に、自分でもAmazonやGoogleに代表される、GAFAのような外資系のTech企業に入れる可能性があるとわかったことです。最終面接では、会社のことを知るためにグループワークがありました(選考には全く関係ない、Amazonのことを知るためのワークショップです)。最終選考に残った人数や学歴などをざっくり知ることができ、自分もこの枠には入れたという事実は自信になりました。

最後に、外資系企業の面接を最後まで体験できたことです。面接はすべて英語でしたが、自分の英語力でも意思疎通はできるということが嬉しくもあり、楽しくもありました。うまく表現できない部分、発音が拙い部分、面接を通じて痛感し、もっと英語力を高めたいと思うきっかけになりました。

この先色々な企業の面接を受ける上で、選考フローをまるっと経験できたことは大きかったのでは?と今になって感じます。

本記事が皆さんの参考になれば幸いです。

この記事が気に入ったらサポートをしてみませんか?