なぜ皆Amazonを辞めるのか(@NeetCode が解説)

Amazon・AWS・ジェフベゾス
この記事は約13分で読めます。

この動画は、NeetCodeの創設者がAmazonで2ヶ月という短期間で退職した経験について語っている。2020年夏にAmazonに入社したものの、厳しいチーム環境、長時間労働、質問を禁止する文化などに直面し、精神的に追い詰められて退職に至った経緯を詳述している。その後の約1年間は深刻な鬱状態に陥ったが、毎日LeetCodeの動画を作成することで立ち直り、最終的にGoogleへの転職を成功させた体験談である。AmazonとGoogleの企業文化の違いについても言及し、同じソフトウェアエンジニアでも会社によって働き方や環境が大きく異なることを示している。

Why Everyone Quits Amazon (@NeetCode Explains)
Computer science students, new graduates, and software engineers...want to land your dream software engineering job/inte...

Amazonでの過酷な体験

君、Amazon出てから2ヶ月で辞めはったんやろ?せやから、Amazonで働いた経験とか、なんで2ヶ月だけで辞めはったんか、めっちゃ知りたいわ。

ああ、ええ質問やな。手短に話すと、2020年の夏にAmazonで働き始めてん。パンデミックの始まりぐらいやったから、全部リモートワークやってん。その時僕は、LeetCodeやめようかなって思ってたんやけど、実際はまだやってたんや。なんか楽しかったんか、それとも次の仕事のこと考えてたんかもしれん。

でも、ほっとした気持ちもあってん。ようやく足をアクセルから離せるって感じで、ちょっと落ち着けるかなって。

Amazonには本当に青二才で入ってん。その前にインターンシップ1回やっただけやった。そんで、めっちゃしんどい状況やってん。悪いチームやったんや。誰が行っても、その経験は楽しめへんかったと思う。生き残れたかもしれんけど、楽しくはなかったやろな。今の知識があったら、その経験も楽に乗り切れたと思うし、昇進もできたやろうけど、楽しくはなかったやろな。

チームの誰も幸せそうやなかった。みんな朝起きるのが辛そうやった。チャットでも、みんなイライラしてるのが分かったし、チームの複数の人が夜中の3時にコミットしてるのが普通やった。本当に不幸な状況やってん。

その時、個人的にもいろいろあってん。詳しくは言わんけど、自分ではコントロールできへんことがいくつかあって、どうしたらええか分からんかった。仕事辞めるとか、リスクのあることするのは僕らしくなかったんやけど、その瞬間はそれが正しいことやと感じてん。

なんか憑りつかれたみたいに、やらなあかんって思ったんや。そんでやってん。正直、誰にもおすすめせんけど、自分にとって最善の判断をしたらええと思う。でも僕には良い結果になってん。

この仕事取れたんやから、いずれは別の仕事も取れるやろって考えやった。Googleやとは思ってなかったけど、実際そうなって、ちょうど1年後にGoogleで働けることになってん。

質問を禁止された環境

でもAmazonの状況は本当にしんどくて、特に一緒に働いてる人たちがな。みんなあんまり考えてへんけど、コードだけの問題やないんや。ほとんどは一緒に働く人たちの問題で、そのチームの人たちは良くなかった。もしその人たちがこの動画見てたらごめんやけど、そういうことや。

君の動画の一つで見たんやけど、マネージャーから質問せん方がええって言われたんやろ?新卒とか新しく雇われた人が最初に聞きたいのは、質問してもええかどうかやと思うんや。質問することが最初にすべきことやし、「ここにおるのは君を助けるためや。みんなコーチできるし、チームは君をサポートするためにおる」って言われたいやろ。

僕もAmazonでインターンしたことあるけど、メンターから質問が多すぎるって批判されてん。「分かるけど、これらの質問の30~40%は既に知ってるべきことちゃうか」って言われた。

確かに彼の言う通り、自分で調べられた質問もいくつかあったとは思う。その時はまだAIもLLMもなかったけど、新しく雇われた人に「質問せんといて」っていう態度は、ちょっと毒のある文化を作ってしまうと思うんや。

他にも君が言ってたのは、辞表を2、3回送ったけど、その度に説得されて引き戻されたってことやな。実際に辞めるまでにな。そんで、そのネガティブな環境を作ってた文化の他の要素って何かあった?

長時間労働とか、締切がめっちゃ短いこととかやな。僕の場合は質問させてもらえへんかったことが大きかった。覚えてるのは、S3バケットをAthenaと一緒にセットアップして、連携クエリを実行するタスクがあってん。

最初の質問をした時のことや。セットアップしてて、設定について1個質問しただけや。無害な質問やと思ったんや。「君のと同じように設定したいから確認したい」って感じで。

そしたら彼は適当にあしらって、「全部デフォルトでええ」って、なんかめっちゃ失礼な感じで言うてきた。そんで僕は彼を信じて、「分かった、そうするわ」って言った。でも動かへんかった。

そんで「動かへんのに、質問したら怒られるやろな」って思って。1時間かかってしもた。彼に聞いたら1分で済んだのに、1時間もかかった。ただリージョンが違うだけやった。「全部デフォルトで」って言うたけど、そうやなかった。リージョンがS3バケットと合ってへんかった。

確かに小さなことかもしれん。ジュニアが自分で解決すべきことかもしれん。でも、それが全体のトーンを決めてしもたんや。質問できへん、何か失敗したら君のせい、君がアホや、コラボレーションなんてない、ただひたすら短い締切で物事を終わらせなあかん、みんな既に徹夜してる。

だんだん暗い感じになってきて、Amazonは人をPIP(パフォーマンス改善プラン)に入れて解雇することで有名やから、それが頭の片隅にあった。

実際に辞める時、マネージャーが「確かに人は解雇するけど、私から見たら、ただ合わなかっただけや」って言うてきた。変なことを言うなって思った。びっくりしたけど、「まあ、彼女なりに頑張ってるんやな」って。誰かを人生の問題で責めたりはせんから、彼らに対して恨みはない。

でも本当に奇妙な経験やった。今振り返ったら笑えるけど、あの瞬間が人生の軌道を本当に変えてしまうこともあるんや。もしあれで「僕はアホや、エンジニアには向いてへん」って確信してしもたら、人生が完全に変わってしもてた。

長い間そう思い込んでて、次の仕事に就けるまでそうやった。次の仕事に就いてからも、本当にビクビクしてた。「Googleにおるけど、ここはめっちゃええ環境で、みんな優しいけど、質問はしたらあかん」って思ってた。「現実世界はそういうもんや。質問したらあかん」って。

Googleに入って6ヶ月後に、「実際はもっと落ち着いてるんや。人と協力できるんや」って気づいた。それはしんどいことやな。誰もそういうことについて話さへんし、人生でそれをコーチしてくれる人もおらん。そういう経験をしたら、自分で対処せなあかん。

AmazonとGoogleの文化の違い

Amazonは早く雇って早く解雇することで有名やな。それが彼らのやり方みたいで、めっちゃたくさんのオファーを出すし、めっちゃたくさんの面接をする。大量の人をシステムに通してる。いつも興味深いと思うし、君が言った通り、チームの人たちを責めるつもりはない。彼らもこの文化と環境の中におって、この機械がその行動を作り出してるんや。

ジェフ・ベゾスの「激しさが人から最大限を引き出す方法や」みたいな格言もあると思う。それが彼らの会社の運営方法みたいや。

文化について話すと、GoogleとAmazonの違いってどんな感じやった?文化的にどんな雰囲気で、頭の中でどう比較してる?

夜と昼ぐらい違ったな。Googleに入ると、今でもそうかは分からんけど、最初の4週間はチームとも一緒やない。それがベストなやり方かは分からんけど、最初の数週間は小さなチームとコホートでGoogleの内部ツールを学んでる。

それで「ランプアップに長い時間をかけることを期待してる」っていうトーンが設定されるんや。Googleの内部ツールは他の場所とは違うし、新卒やったらソフトウェア開発が一般的にどう機能するかも学んでるからな。

それは大きかった。技術的な面では、Googleでは一般的にツールが楽しくないって言うわ。テックアイランドみたいで、他では絶対使わんもんや。Googleでは面白い問題の多くは既に解決されてるから。

Amazonやと、AWSサービスを実装したり、AWSサービスを使って問題を解決したり、それらを組み合わせて少しデザインしたりするかもしれん。Googleやと、スケールに関する問題はほとんど既に内部ツールで解決されてるから、そういうのは少ないんや。

分散システムの面白い問題を解決する代わりに、設定ファイルを更新することになる。時々何をしたらええか分からんくて、基本的なコンピューターサイエンスの概念を学ぶ代わりに、これらのツールが実際にどう動くかを学ばなあかん。

変な例えやけど、プログラミングする代わりにM&Mを動かしてるみたいって表現するわ。何をしてるか分からんくて、慣れてないプログラミングの全然違うインターフェースを与えられてる感じや。

復活への道のり

会社によって本当に夜と昼ぐらい違うな。業界の外におる時と中におる時では、そういうことがあんまり分からんと思う。君はまだソフトウェアエンジニアやろ?肩書きはソフトウェアエンジニアL3、L4で、まだエントリーレベルの開発者やけど、全然違うことをしてる。

働く会社を選ぶことが人生の質を大幅に決めるってことを、みんな気づいてへんと思う。君はGoogleで働く方がAmazonより圧倒的に楽しかったみたいやな。

Amazonを辞めた日からGoogleに入るまでの道のりについて話してくれる?君の動画で見たけど、メンタルヘルスの問題とかで、波のある厳しい期間があったんやろ?その道のりと、どうやって灰の中から不死鳥のように蘇って、人生を変えるGoogleの素晴らしいオファーを手に入れたか教えて。

いろんなことがあった。辞めた後の計画は、「超やる気出して、できることを全部やって、結果はコントロールできへんけど、いずれは仕事に就けるやろう」っていう感じやった。

コロナの間は厳しくて、その時点では6~12ヶ月後まで雇用してる会社があんまりなかった。でも感情的には、どん底に落ちてしもた。そうなるやろうとは思ってたけど、辞めた途端にエネルギーと生きる意欲を全部失ってしもて、何もすることがなくなった。

毎日頑張ろうとしてた。ベッドから出て、散歩して、何かするだけでも。パソコンの前に座ろうとしても、できへんかった。意欲が全くなくて、吐きそうになったり、頭の中でおかしな考えがフラッシュしたりしてた。PTSDって言うつもりはないけど、その瞬間はそんな感じやった。

頑張ろうとしたけど、なかなか乗り越えられへんかった。いろんな問題に陥って、ドラッグとアルコールをたくさんやって、それが僕をめちゃくちゃにして、確実に状況を悪化させた。誰にもおすすめせん。

でもある時点で、何かがパチンって弾けた。ドラッグのせいか、その瞬間のせいか、何かスピリチュアルなことなのか分からんけど、とにかく弾けた。「もうこれにうんざりや。何かしたい。この中途半端な状態で生きるのに疲れた。何かするわ。何が起こるか分からんけど、結果はコントロールできへん。何かするわ」って。

「LeetCodeの動画を作るわ。楽しいし、他の人の役に立つし、同時に面接の準備にもなる。毎日LeetCodeの動画を作るわ」って決めた。

驚いたことに、そういう考え方になって、継続的にやってる生産的で良い活動があることで、軌道に戻れた。コーディングも楽になった。

その12ヶ月間、信じられへんかもしれんけど、LeetCodeの動画以外は何もしなかった。コンピューターサイエンスの勉強も個人プロジェクトも何もせん。LeetCodeだけのギャップイヤーを取った。けっこう上手くなって、雇用が再開し始めた時に、Googleが雇用を始めてるのを見つけて、その投稿を見た日にすぐ応募した。できるだけ早く応募した方がええからな。

運良く面接を受けられることになったけど、いろんなハードルがあった。リクルーターが面接をスケジュールするための招待を送るはずやったのに、なぜか送ってくれへんかった。何回もフォローアップしても、まだ送ってくれへん。

そんでGoogleの技術採用担当者にもCCして、その人が返事してくれた。面接をスケジュールするためだけに本当に戦わなあかん感じやった。

でも最終的にスケジュールできて、面接を受けた。なぜかその日は緊張してへんかった。普通は面接ではめっちゃ緊張するのに、その時はめっちゃ準備してたから、かなり落ち着いてた。

面接ではめっちゃ良くできて、オファーをもらって、Amazonを辞めてから約1年後にGoogleに入った。そんな感じやった。

人生を変える瞬間

僕はこういう瞬間を「FTE(もうクソや!イベント)」って呼んでる。大きな人生の変化の時に多くの人が経験することや。君もAmazonでそれがあったみたいやな。「もうできへん」って思った瞬間があったんやろ。

僕も仕事を辞めた時にそんな瞬間があった。会社の環境は悪くなかった。まあまあの環境やった。でもフルタイムのソフトウェアエンジニアとして働いてた時、副業でYouTubeをするのが本当に好きやった。

朝6時半か7時に起きて、1~2時間スクリプト書いたり撮影したり執筆したりして、それから9時05分に出勤してた。デイリースタンドアップが9時05分やったからな。1~2時間の長い昼休みを取って、めっちゃ長い昼休みやけど、動画の執筆と撮影を続けて、5時ちょうどに帰ってYouTubeに戻る。

ソフトウェアエンジニアリングは僕にとってYouTubeのための燃料みたいな感じやった。10~11ヶ月目の評価でマネージャーと話した時、マネージャーは会社のCEOやった。とても小さい会社で、スタートアップやなかったけど(10年以上あったから)、エンジニアは15人だけやった。

CEOが毎日僕の隣に座ってたから、日常的に交流してた。評価で彼は「アマンは本当に良いエンジニアやと思う。君にはたくさんの能力を感じるけど、昇進したいなら(昇進させたいけど)、ミッドレベルやシニアに昇進したいなら、あと20%必要や」って言った。

「もうちょっと長く座ってて欲しい。もっと問題を解決して、もっとインパクトを作って、5時ちょうどに帰らんで、5時半、6時の方がええ。もうちょっと早く来て、そういうことをして欲しい」って。

それを聞いた時、最初は「昇進したいからやらなあかん」って思った。でも一歩下がって考えた時、「なんで僕は既にそれをしてへんのやろう?」って。チームの他のエンジニアはそうしてたからな。週末に来る人も知ってたし、超早く来て超遅く帰る人もおった。明らかにシニアエンジニアで、たくさんのインパクトを作ってた。

でも僕がデフォルトでそれをしてへん理由は、したくなかったからや。好きなことであるYouTubeに集中したかったからや。そんで考えたんや。彼が求めることをする唯一の方法は、YouTube時間を削ることや。それで何を得る?2万ドルのボーナスか昇給?

確かにええ昇給やし、自尊心を満たすステータスプレイやな。「ミッドレベルシニアエンジニアや」って。でも、実際に好きなことであるYouTube、コンテンツ制作、起業に全力で取り組んだら、うまくいけば年間2万ドル以上は稼げるやろって。

翌日、文字通り辞表を書いて、「プライベートで話せる?」って言って、Google Meetに入って「辞めるわ」って言った。「1ヶ月前に言うわ」って言ったけど、彼は「1週間後でええ」って言った。ちょっと悪い気がした。「そんなに代替可能なんか」って思ったけど、お互いにとって良かったと思う。僕の心が100%入ってへんことを彼も感じてたし、本当にやる気のある他のエンジニアに僕の場所を譲れて嬉しかった。

長い話になったけど、君もFTE(もうクソや!イベント)があった?ネガティブなスパイラルにいて、「あかん、何かせなあかん。それは毎日LeetCodeをすることや」って気づいた瞬間が?

底からの復活

ほぼそんな感じやな。うつ状態やったから医者に行ったりしてた。「医者に行って、これもして」って感じで、でもそういうのは全然助けにならんかった。「これは人生の問題やから、抗うつ薬は飲みたくない。気分が良くなるだけで、問題はそのままやから」って思ってた。

コーディングを怖がったり、人生で前に進むのを怖がったりする人生の問題に取り組みたかった。その瞬間に何かがパチンって弾けたんや。方向を選ばなあかん。永遠にふらふらしてるわけにはいかん。どちらかの方向を選ばなあかん。

簡単に反対の方向を選ぶこともできた。「人生なんてクソや。もう終わりや。残りの人生ドラッグやって何もせん」って。簡単にそうできたけど、できへんかった。それなら死んだ方がマシやと思ったから、反対の道を選んだ。

これはソフトウェアエンジニアリングや技術的なアドバイスから離れるから、個人的なアドバイスはあんまりせんようにしてるけど、似たような経験をしてる人がおって、連絡してくる人もおる。似たような経験をした人たちがな。

誰でも人生で困難な時期を経験するし、何をしたらええか分からん時がある。最終的に、自分にとって一番大切なことは何か、実際に何を気にしてるか、どんな考えに耐えられへんかを理解することになる。

ある時点で「ソフトウェアエンジニアリングは僕には向いてへん。人生で何か別のことをしたい」って思うかもしれん。または、ソフトウェアエンジニアリングをしたいと思って、それにコミットする気があるかもしれん。そんな風に考えるわ。

もし君が素晴らしいソフトウェアエンジニアのインターンシップやフルタイムの仕事を得るのに苦労してて、何十もの応募をしたけど何もうまくいかへん感じがしたり、プロセスが理解できへん感じがしてるなら、実は素晴らしいソフトウェアエンジニアリングの仕事を得たい人のための学校を運営してる。ソフトウェアエンジニアリング・アクセラレーターっていうんや。

過去1年間で、Capital One、Amazon、Google、LinkedIn、Adobe、MongoDBなんかの素晴らしい会社で、何十人もの学生が信じられへんような仕事やインターンシップを得ることを助けてきた。

プログラムの一番ええところは、結果を実際に保証してることや。欲しいインターンシップやフルタイムの仕事を得られへんかったら、お金を払わんでええ。

テック業界で信じられへんような仕事を得るために僕と直接働くことに興味があるなら、完全に保証された形で、説明欄のリンクをチェックして、僕らに参加するための応募を提出してな。

コメント

タイトルとURLをコピーしました