はじめに
27卒エンジニア就活(学部)でメガベンチャーから内定をもらうためにやってきたことを全て書きます。前提としてそこまでたくさん内定をいただいたわけでもないですし、Xでよくみる600〜700万オファーをもらっているわけでもないので、逆に比較的再現性のある内容になっているはずです。
対象読者
- 新卒でメガベンチャーや有名スタートアップを目指している方
- 少しでもレベルの高い自社開発企業を目指している方
- エンジニア就活で何をするべきかイメージついてない方
そもそもメガベンチャーとは?
明確な定義はないみたいですが、以下のような企業がメガベンチャーだと勝手に捉えています。自分はこの中の1社含め計2社のメガベンチャーから内定をいただきました。
LINEヤフー、DeNA、サイバーエージェント、楽天、リクルート、MIXI、DMM、レバレージーズ、Visional、サイボウズ、LIFULL、ユーザベース、freee、マネーフォワード、エムスリー、Sansan、GMO、ZOZO(他にもたくさんあると思いますが)
大学入学当初の自分のスペック
一応自分の大学入学時のスペックを記載しておきます。少なくともエンジニアに向くスペックではないと思います。
- タッチタイピングができない(パソコン操作はZoomを開くくらいしかできない)
- 文系だったのでプログラミングは何も知らないし、数学や英語の知識は皆無
- もちろん無名大学
(読み飛ばし可)プログラミング開始〜就活終了まで
先ほどのスペックから就活終了までどのような流れを辿ったのか書いておきます。興味なかったら飛ばしてください。
大学1年(前半)
やりたいことを探すためひとまず韓国の大学に留学(長くなるので背景や理由は省略)。元々文系だったが、将来性 & 面白そうという浅い理由でAI系の学部に入る。初めてのプログラミングの授業をタッチタイピングもままならない状態で受け、周りの学生が爆速コーディングしている姿を見て絶望。初回の授業で転部を検討し始める。Pythonや数学の授業でわからない部分を教授に質問しても韓国語で教えられるので全く理解できず撃沈。さらに煌びやかな技術のイメージだったAIが数学の塊であることを知り「これ自分に向いてなくないか?」と思い始める。すぐに転部しようと思ったが1年生は学部を変えられないと知りとりあえず続けることに。授業では毎回予習と復習をしたり同期や先輩に色々教えてもらいながらなんとかついていった。この時からなんとなくエンジニアを目指そうと考えてはいたがエンジニアがどのような仕事をするのか、どのような種類があるのか全く知らなかったため、とりあえず授業で使っていたPythonでスクレイピングやデータ分析について色々調べ始めた。
大学1年(後半)
色々調べる過程でWebエンジニアという職種があることを知る(当時はコロナが終わりかけている頃でエンジニア転職というワードが流行っていたのもありそうです)。AI系の学部だったのでデータサイエンティストやAIエンジニアを目指すのもアリかと思っていたが、AIは数学の素養や研究色が強く、自分が本来想像していたモノ作りのイメージとは違ったためこの頃からWebエンジニアを目指し計画を立て始める。大学の授業もなんとか耐えた。大学2年(前半)
2年生になり転部することも可能になったが、結局プログラミング面白いかもと思い始め学習を続ける。大学の先輩がエンジニアのアルバイトで稼いでいるという話を小耳に挟み、自分もエンジニアのアルバイトやインターンを探すようになる。色々調べる過程で「インターン経験を得るにはインターン経験が必要」という鶏と卵のような関係性があることを知るが、ポートフォリオがあれば未経験でも参加できるらしいとのことで早速ポートフォリオの作成に取り掛かる。恥ずかしながらこの段階でまだGitHubやWebフレームワークには全く触れたことがない状態だったので1つ1つProgateやUdemyなどで学習をしていった。そして一通り学習を終え、ポートフォリオのアプリケーション開発を行おうとするも「ん?どうやって0から作るんだ?そもそも何を作ればいいんだ?」という状態になり、当時の自分は各技術の理解度が足りていないのが原因と判断し、繰り返し基礎学習を行なってしまうことに。そして何か履歴書に書く資格があった方が良いだろうという安直な考えで基本情報技術者試験の学習を始める(なんとか受かりましたが)。資格はメガベンチャーのインターンや本選考ではほとんど意味をなさないことを知る由もなく、結局ポートフォリオも完成しなかった。大学2年(後半)
流石に焦らないとまずいと思いポートフォリオ開発を進める。元々RailsかFlaskあたりでアプリを作ろうと思っていたが、何かモダンな技術を入れた方が評価されるのではないかと思いReactやDockerなどの技術に色々手をつけ始めてしまう。結局これによりポートフォリオ完成が大分遠のいてしまい挙句の果てにはそれらの技術を組み込むのを断念。最終的にはDjangoで作った謎アプリ(教材で作ったものに毛を生やしたようなもの)を引っ提げてインターンの選考を受けまくる。予想はしていたが20社くらい受けて基本は書類落ち(応募して20秒くらいでお祈りメールが来たこともあった)、たまに面接に行けたりしたがそれでも落ちることが多かった。が奇跡的に1社受かる。感謝。休学(前半)
学費を自分で払っているのもあり、このままいくと支払いが間に合わなくなるという理由で1年間休学することに。この期間で以前受かった長期インターンをやりつつお金を稼ぐ。インターンではWeb開発というよりjQueryを使ったフロント改修のような業務をやることになった。Reactなどモダン目な技術を使いたい気持ちもあったが、HTML, CSS, JavaScriptなどの基本的な知識や企業で働くイメージがだいぶ持てたのでいい経験になったし楽しかった。この時期になぜかインターン選考時に全く意味をなしていなかった資格勉強(応用情報)をまた始めてしまうが結局資格では技術力は上がらないと悟りすぐに踏みとどまれた。休学(後半)
最初はインターンを続けてれば勝手に個人開発もできるようになるだろうと思っていたが全然そんなことはなかった。ここで個人開発のやり方や技術力のあげ方について色々調べ、JISOUというプログラミングコーチングのコミュニティを発見。早速カウンセリングを申し込む。コミュニティへの入会は学生にとって決して安い金額ではなかったが、将来への投資と考え入会を決意(この決断は正解だった)。ここからReactやNext.jsを用いたアプリを色々作ったり、Qiitaへの記事投稿を始める。これまでインプット主体の学習スタイル(動画教材、資格など)だったので、色々目にみえる成果物を作ることができたこの時期はとても楽しかった。これらの成果物によりNext.jsを使ったポジションのインターンに転職できた。またこの辺りから就活をかなり意識し始め、サマーインターンに向けた企業探しなどを開始。大学3年(2025/3〜2025/9)
復学。大学とインターン、就活、個人開発などを並行してやる(おかげで単位を落としかける)。この時期はサポーターズの1on1イベントやハッカソン、LT、メガベンチャーのサマーインターン選考などを通して求められているレベル感や他の学生のレベル感を把握した。結局サマーインターンとしてはメガベン、大手含め計3社に参加した。メガベンチャーのサマーインターンは周りの学生や社員のレベルが非常に高く、良くも悪くも自分のレベル感を把握できたしとても良い刺激になった。9月に入りサマーインターンなどが落ち着いてきたタイミングで再びサポーターズの1on1イベントに参加したり、この辺りからどんどん本選考の応募を開始しカジュアル面談や1次面接などを行う。大学3年(2025/10〜2026/1)
メガベンチャーやスタートアップなどを中心に10社ほど選考を受け、最終的にはメガベンチャー2社、その他2社の計4つの会社から内定をいただき就活は終了した。この期間は学業やインターン、個人的な技術研鑽の時間をかなり減らし就活に時間を使っていた。メガベンチャーから内定をもらうための基本戦略
自分の体験を抽象化し、大学に入ってからプログラミングを始めたとしたらこのような流れになるだろうなというのを書いておきます。結構のんびり目なスケジュール感ですし、院に行く人も多いと思うので個々人の努力量でいくらでも調整できると思います。
大学1年
プログラミング開始。この期間で自分が興味のある分野(Web、モバイル、AIなど)を見つけてプログラミングの基礎を学び、長期インターンに向けた技術研鑽(個人開発、技術ブログ、ハッカソン、OSS、技術イベント参加など)を行う。何かしらの技術コミュニティに入るのも良い。
大学2年
長期インターンで実務経験をがっつり積む。並行してCSも勉強すると良さそう(自分はやってなかった)。サマーインターンの選考や本選考ではコーディングテストやケース面接を実施する企業もあるのでその辺りも調べながら就活に向けた準備を始める。
大学3年
長期インターンで経験を積みつつ、サマーインターンの選考を受け始める。サマーインターンは本選考に行きたいと思える企業やネームバリューのある企業に参加できると本選考でも有利になる。サマーインターンが終わったら本選考を受けていき、年内あるいは年明けくらいで内定を目指す。
計画的偶発性理論という言葉があるようにどの行動が将来役に立つかわからないので、とにかく色々チャレンジしてみるのはアリだと思います。長期インターンの探し方やコーディングテスト、面接対策等は以降のパートで詳しく説明します。
(重要)やるべきこと5選
1. 個人開発
必須というわけではないですが、未経験から長期インターンをやる際や面接で話題にしやすいというのもありおすすめです。アイディアや技術選定の際は面接で実際に聞かれることから逆算して考える必要があります。作りたいから作ったや慣れている技術だから使ったはエンジニア面接においてはマイナスに捉えられることが多いです。
面接ではこのような内容が問われます↓
- 開発のきっかけ
- 技術選定の理由
- 他の技術を使うなら何にするか
- 悩んだところや工夫したところ、楽しかったところ
- なぜこのアーキテクチャ、ディレクトリ構成にしたか
- セキュリティやパフォーマンスなど品質にこだわった点はどこか
- メイン機能の基本的な処理の流れを説明してください
- ユーザーの課題を自ら汲み取り改善した部分はあるか
- 現在の課題やできていない部分はあるか、それをどのように解決するか
- 今後の展望について
他にはクラウドやテストは何を使ってるか、CI/CDちゃんとやってるかなど技術的な確認はたまにありましたが、基本はなぜそれを作ったのかやどこでユーザー価値を意識したかみたいな考え方の質問が多かったです。なので無理にAWSを使ったり個人開発規模で必要のないインフラ構成にしたりする必要はないです。実際にユーザーに使ってもらっていたりマネタイズできていると良いかもですが、できていなくても今後どのようにそれらを実現していくか整理しておけば問題ないと思います(自分はそうしてました)。
ちなみに1人で個人開発する自信がない場合はハッカソンに参加するのもおすすめです。チームでの開発になるので半強制的にやることになりますし、0 → 1で開発するイメージやチーム開発の練習にもなるのでサクッと参加してみても良いと思います。サポーターズのハッカソンはインターンの経験がない学生の方も半分近く参加されていた記憶なので、初めの一歩には最適です。
2. 技術アウトプット・情報発信
技術ブログ(Qiita, Zenn, note)やX、OSS貢献、GitHub、Atcoder、技術イベント登壇など色々あると思います。これらはESでもよく求められますし、やればやるほどスカウトの可能性が高まります(情報感度も上がる気がする)。
アウトプットを一元管理できるツールとしてはLaprasがおすすめです。またポートフォリオサイトを別途開発したり、Notionのテンプレートにまとめたりするのも良いです。
3. 長期インターン
エンジニア就活において一番最初にくる壁が「インターン経験がないとインターン経験を積めない」ことだと思います。長期インターンができないとサマーインターンや本選考でのESも通りづらいですし、面接でも要求レベルの回答ができない可能性があります。
長期インターンの探し方について、ネットではよくInfraインターンやゼロワンインターン、魔法のスプレッドシート、Wantedlyなどがおすすめとして挙げられますが、これらのサイトはかなり有名なサイトなので普通に実務経験があったり高学歴の学生も多く利用しており、相当何か実務経験以外の実績がないと相対評価で落ちる可能性が高いです。
未経験から長期インターンを探す場合以下のような方法があると思います。
- 知り合いやコミュニティ経由で探す
- 「言語名 インターン」などでググって企業サイトやマイナーサイトから探す
- Xなどで探す
1の方法が1番楽です。自分も2社目と3社目のインターンは大学の先輩やプログラミングコミュニティ経由で紹介してもらいました。もし知り合いやコミュニティに参加していない場合は2以降の探し方になると思います。自分は1社目の時点ではインターンを紹介してくれる繋がりを持っていなかったので、ひたすら「React インターン 未経験」的なワードで探していた気がします。とはいえこのやり方は非効率な気はするので、インターンを見つけるために自分から知り合いを増やしに行ったり、コミュニティに入るなどするのもアリだと思います。自分はJISOUというコミュニティを利用していましたが42TokyoやTechTrainあたりが有名かと思います。あとX経由でインターンを見つける人もちょくちょくいるみたいです。
長期インターンのESでは先ほど書いたような技術アウトプットをしていれば問題ないと思いますし、コーディングテストもAtcoderのB問題くらいだった記憶です。インターンは基本書類で落ちるので面接まで行ければ受かる可能性が高いと思います。以下ざっと意識しておきたいことになります。
-
基本的なコミュニケーション(会話のキャッチボール)ができるか ➡︎ 一緒に仕事をする上で支障がなさそうか
-
やる気があるか ➡︎ 未経験なりにどんどんキャッチアップして、あまり手をかけなくても仕事ができそうか
-
稼働時間(企業や案件にもよりますが、基本的に多い方がいいです)
基本長期インターンはエンジニアで位が高めな人たちとの面接になる気がするので、技術的な会話には慣れておいた方が良いです。とはいえ学生なので自分が作ったアプリや技術ブログなどで会話が弾めば割と受かる気がします。
先ほど有名サイトで応募すると確実に落ちると書きましたが、落ちること自体は全く悪いことではないですしむしろ積極的に応募していくべきだと思います。大事なのは都度今の自分の状況から何が足りないのかを把握することです。例えば書類で通らないなら先ほど書いた技術アウトプット(個人開発、技術ブログ等)が不足していないか確認するべきですし、面接で落ちるなら基本的な受け答えや熱意の部分が伝わっていない可能性があります。この落ちまくる時期はかなり辛いですが、後々の本選考において必ずプラスになるはずです。踏ん張りましょう。
長期インターンに受かったらあとはもうそこで頑張るだけなのですが、こちらも面接で聞かれることから逆算してどのようなスタンスで働いていくかを整理した方が良いです。
本選考の面接では以下のようなことが問われます↓
- 自分がプロダクトの課題に対して行なった最もインパクトのあったことは何か
- 主体的に課題を見つけ、解決に取り組んだ経験はあるか
- 業務で実装が大変だったこととそれをどう解決したか
- 開発業務全般(コミュニケーションなど)で大変だったこととそれをどう乗り越えたか
- ライブラリやアーキテクチャの選定をやったことあるか
- コードレビューをやる機会はあるか。あれば何を意識しているか
他にも聞かれることは色々あるので、先ほどの個人開発の質問例も含め面接対策パートに詳しく記載します。
4. コーディングテスト対策
前提として自分はコーディングテストが苦手なので基本はコーディングテストを実施していない企業を探して受けてました。冒頭紹介したメガベンチャーの中にもコーディングテストを実施していない会社は割とあるので苦手な人は是非探してみてください。本選考の段階でデータ構造とアルゴリズムの基本やAtcoderなどでのコーディングをしたことがない場合はもう面接対策などに時間を使った方が良いと思います。
コーディングテストといっても色々あると思いますが、大体はデータ構造とアルゴリズムを問うものだと思います。ツールとしてはCodilityやHireRoo、Track Testなどがよく利用されます。レベル感としてはAtcoderのB〜C問題くらいの難易度で、愚直に実装すれば解ける問題や数学的問題、StackやBFS、共通区間削除などデータ構造とアルゴリズムの基本が試されるような感じです。テストケースを通すだけでなく計算量なども意識できればなお良いと思います。対策するのであればひとまずAtcoderの茶色レートを目指すように問題を解きつつ、並行して(または慣れてきたら)典型アルゴリズムを学習していくと良さそうです。
コーディングテストは他にもSQLやLinuxコマンド、APIやUI実装、課題形式のものなど色々ありますが、これらは普段から個人開発やインターンをやっていれば対応できると思います。稀にライブコーディングを実施する企業もあるみたいですが、これは問題を自力で解けるかより必要に応じてコミュニケーションをとりながら進めていけるかが重視されてそうなのでその辺りを意識して練習すると良いと思います。
5. 面接対策
とても重要です。どんなに技術経験があってもそれらをしっかり言語化できないと普通に落ちるからです。先ほど書いた個人開発や長期インターンの質問含め、実際に聞かれたことを載せておきます(個人的な質問等は省略)。
一般(定番)
- 自己紹介
- なぜ〜大学〜学部(科)を選んだのか
- 自己PR
- ガクチカ
- 就活軸
- 複数内定をもらったとして最終的に会社を選ぶ軸は何か
- キャリアプラン
- 挫折経験について教えて
- 長所と短所(自分が思うものと人から言われるもの)
- 現在の就活状況を教えて
- 弊社の優先度と他社のどのようなところに魅力を感じているか
- 逆質問
一般(その他)
- 残業や休みについてどう考えている?LWB的な話
- 人生で1番の成長体験は何か
- 人生で1番頑張ったことややりがいを感じたことはあるか
- 人生で1番辛かったと思うことはあるか
- 人生で失敗したなと思ったこととなぜそう思ったのか
- 小中高で熱中して取り組んでいたことについて
- モチベーションが上がる・下がるのはどのような時か
- 自分らしさを発揮した経験があるか
- 現在の自分の姿と自分が目指している姿とのギャップを感じた時どう対処するか
- どんな人と一緒に働きたいか。また働きたくないか
- なぜそのまま業務委託で働かないのか。フリーランスでも良くない的な質問
- 自分を生き物以外で例えると
- なんでも望みが1つ叶うとしたら何をするか
- この人優秀だなと思う人はどんな人か
- どのような状況になったら転職を考えるか
- 人生の野望や今後の目標はあるか
技術(行動)
【個人開発】
- 開発のきっかけ
- 技術選定の理由
- 他の技術を使うなら何にするか
- 悩んだところや工夫したところ、楽しかったところ
- なぜこのアーキテクチャ、ディレクトリ構成にしたか
- セキュリティやパフォーマンスなど品質にこだわった点はどこか
- メイン機能の基本的な処理の流れ
- ユーザーの課題を汲み取り改善した部分はあるか
- ユーザーからはどのような反応を得ているか
- 今後ユーザーの潜在的な課題をどう見つけていくか
- 現在の課題とそれを解決したい理由、またその方法
- 今後の目標とその理由、またその方法
- 新しい機能案は考えているか
- 今後事業化していく考えなどはあるのか
【長期インターン】
- なぜ長期インターンやサマーインターンに参加したのか
- どのようなポジションで開発しているか
- 自分がプロダクトの課題に対して解決した最もインパクトのあったことは何か
- 業務で実装が大変だったこととそれをどう解決したか
- 開発業務全般で大変だったこととそれをどう乗り越えたか
- ライブラリやアーキテクチャの選定をやったことあるか
- 働くことに対する自覚の変化はあったか
- 主体的に課題を見つけ、解決に取り組んだ経験はあるか
- コードレビューで何か問題を防いだ経験はあるか?
- コードレビューをやる機会はあるか?あれば何を意識しているか?
- 印象に残っているコードレビューはあるか?
【チーム開発】
- チーム開発したことがあるか。それはどのような時か
- 自分のどのような強みを発揮できたか
- チームでどのようなポジションをやることが多いか
- チーム活動をする上で大事だと思っていること
- チーム開発で大変だったこととそれをどう乗り越えたか
- チーム開発をやる上で意識していること
- チーム開発において感謝されたことと逆に感謝したこと
- チーム全員が使えるけど自分が使えない技術があったらどうする?
- チーム開発でなくても良いが、価値観が合わないと思った経験はあるか
- チームで主体性がなかったり、生産性の上がらないメンバーがいたらどうするか
- チームで苦手な人はどんな人か?またどう対処するか
- 個人開発との違いは何か。それぞれのメリデメを教えてください
【技術キャッチアップ】
- プログラミング学習で大変だったこと
- フロントエンド以外で学んでいる技術はあるか
- 勉強会やカンファレンス参加はする方か。社内であったら参加したいか
- 興味のある技術や最近学んでいる技術はあるか
- どのような方法で技術を学んでいるか
- 情報収集や学習でよく使うサイトは何か
- プログラムを書いたり、技術書を読んだりするのは楽しいか
【AI活用】
- 普段どのようなAIをどのように利用しているか
- AI駆動開発の個人的ベストプラクティスはあるか
- AIでのコードレビューは何を意識している
- 今は詰まったらAIに丸投げもできてしまうと思うがその辺りはどのように考えているか
- AIの発達にポジティブかネガティブか。またそれはなぜか
- 弊社のAIへの取り組みについてどう思うか
【エンジニアとしての価値観・思考・判断プロセス】
- なぜエンジニアになりたいのか
- エンジニアになって何をしたいか
- 理想のエンジニア像と理想ではないエンジニア像
- これまでの開発経験で自分が得意だと感じていること
- 技術を学び始めたきっかけ
- コードを書く上で意識していること
- どのような基準で技術を選ぶか
- 技術的負債についてどのようなスタンスで取り組むか
- レガシーな技術とはどんな技術か。どんな印象を持つか
- toCかtoBどちらのサービスがいいか
- マネジメントや企画等の経験はあるか。あるいは興味があるか
- 会社にどのような環境を求めるか(開発環境も含め)
- 触る前と後で印象が変わった技術はあるか
- 自分があまり理解できていないと感じる技術は何かあるか
- ビジネス上優先度の高いものとエンジニアとしてやりたいこと(技術、実装方法)が競合している際にどのようなスタンスか
- 実装で詰まったり、バグに遭遇したらどのように解決しているか
- デバッグをどのように行うか。どのようなツールを使うか
- 開発者ツールではどのタブをよく使うか
【その他】
- 大学で学んでいること(研究の内容等含め)
- これまでの開発経験で印象的だったものを2つくらい教えて
- 他にアピールしたい開発経験があれば教えて
技術(CS等の開発常識)
- Web通信においてクライアントとサーバーが分かれている理由
- Webサイトをクリックしページが表示されるまでにどのようなことが起きているか
- httpとhttpsの違いは何か?またhttpsはどのように実現されているか
- CPUとメモリ、ディスクのそれぞれの役割は何か
- オブジェクト指向とは何か
- 機械学習(データ分析)の流れについてできる限り詳しく教えて
- DB設計の流れについてできる限り詳しく教えて
技術(職域別)*自分の場合はフロントエンド
- Web及びフロントエンドを学び始めたきっかけ
- 今後どのようにフロントエンド領域の理解を深めていくか。現在地はどこか
- button, image, aタグの役割
- flexboxとgridの使い道
- 無駄なcssが増えた際のデメリット
- Tailwindとcss in jsの違いは何か
- 非同期処理について簡単に説明してください
- useEffectでデータを取得する際の問題点
- inputで入力した値をapi側に送る際どのように実装するか
- SSRの導入基準
- tsの型システムのメリットを教えてください
- state管理ライブラリ(redux, recoil等)を使ったことがあるか。あるなら特徴を教えて
- Next.jsの各レンダリング方式(SSR, CSR, ISR)の特徴や使い所をそれぞれ教えて
- Next.jsを使う上でセキュリティやパフォーマンスで意識していること
- RSCとは何か。SSRとは何が違う?またそれぞれのメリットデメリットを教えて
- なぜReact単体ではRSCをうまく扱えないのか(フレームワークが必要なのか)
- ReactではなくNext.js単体の良いところは何か
- jQueryとReactの違い
- 個人開発やインターンにおいてUXを高める取り組みは何をしてきたか
- 最近このUIまたはUX良いな思ったことはあるか。なぜ良いと思ったのか
- 100枚の画像を表示する際、どのように実装するか
- Reactが他のライブラリに劣るところは何か
- フロントエンドのUIを作るのが好きなのか、ロジックを作るのが好きなのか
- フロントエンドで興味を持っている技術は何か。またその理由とその技術の利点
- フロントエンドにおける品質の高い(最適な)コードとは何か
- バックエンドの知見があることでフロントエンド開発に活かせる部分はどこか
技術(システムデザイン)
- 予算気にせず0から何か作るならどのような技術スタックで作るか
- ユーザー数が莫大に増えたらどのような対応を取るか
(システムデザインなのか微妙ですが「0からLINEやXを設計してください」みたいなのは聞かれませんでした)
企業別
- 志望理由
- 入社したらやりたいこと(携わりたいプロダクトなど)
- どのように弊社に貢献できるか
- 弊社のサービスは使ったことがあるか。あるならどうだったか(改善点など)
- 弊社のMVVについてどう思うか?印象に残っているものなどあるか
ベンチャーやスタートアップ系の面接は基本3〜4回実施され、現場社員、人事、役員などとの面接になります。どのフェーズでどの役職の方が面接官かは企業によって異なるのでなんともですが、大抵以下のような評価基準になっている気がします(適当)。企業によっては技術知識をダイレクトに問うような面接やケース面接などがあることもあるので、その辺りは自分に行きたい企業の選考内容を調べてみてください。
- 一次面接
エンジニアの現場社員であることが多い。基本的な技術力とコミュ力があれば絶対評価で通ることが多い印象。この段階ではそこまで志望理由は問われない。 - 二次〜三次面接
現場社員に加え人事との面接も入ってくることが多い。一次面接の内容に加えて企業理解や熱意の部分を見られはじめる。これまでの技術経験やパーソナルな部分に対する深掘りをされるため比較的落ちる可能性の高そうなフェーズであり、一次で問題なかった回答が必ずしも通用するわけではない点に注意。 - 最終面接
CTOやVPoEなどの役員であることが多い。面接の回数次第ではあるが、志望理由や技術的な雑談、協調性を示すことができれば基本的には通る気がしている。
面接ではとにかく自然体で話すことを意識していました。面接官の質問にただ答えたり相槌を打つだけでなく、自分なりの意見を織り交ぜてみたりその場で質問したりしてなるべく会話のキャッチボールになるようにしました。
また面接では答えるのに時間がかかる(あるいはできない)質問が必ず来ると思います。そのような場合無理に中途半端な回答をするよりは「〜理由で自分には答えられませんが〜についてであれば答えられます(または今後キャッチアップします、調べてみます)」などと答えれば良いので慌てる必要はないです。少し考えれば答えられそうなものは「少し考えていいですか」と断りを入れた上で落ち着いて回答すれば良いと思います。
あとはとにかく相手視点で当たり前のことを当たり前にやることを意識してました。例えば普段より少し大きめの声量・反応をする、質問の意図と回答がずれないようにする、余計な間投詞は入れないなどです。面接回答のフレームワークとしてSTARやPREPが有名ですが、自分の場合これらを意識すると機械的な回答になってしまったので軽く意識する程度にしてました。ただ知っておいて損はないと思います。
面接の細かい知見は他にもたくさんあるのですが、ひとまず最初に書いたような質問例の回答を自分の経験に当てはめて整理しておくと比較的少ないギャップで面接を受けることができると思います。あとは実際にインターンや本選考をたくさん受けながら面接に慣れていき、必ず面接後は聞かれた内容や良かった点、反省点などを振り返り次に活かせるように知見を溜めていけば面接の通過率は少しずつ上がっていくと思います。PDCAのサイクルをとにかくたくさん回すのが大事です。
面接対策全般の考え方や企業ごとの想定質問などは以下サイトを参考にしていました。
(InterviewCatはメガベンとInsideStoryのものを見てました)
その他
就活サイト
色々登録してましたが結局まともに利用していたのはサポーターズだけだった気がします。一番良かったのは1日で最大8社のメガベンチャーの人事やエンジニアの方とカジュアル面談できる1on1イベントです。自分も2回ほど参加しましたが企業理解や面接練習にもなりますし、ちょくちょく選考スキップの案内をもらえたりもします。また技術系のイベント(ハッカソン、勉強会、カンファレンス)は他の学生のレベル感など把握できるので良い刺激になると思います。
就活終盤で最終面接に何社も進めている場合はABABAなども良いと思います。ごく稀にメガベンからいきなり最終面接の案内が来たりしました。
他にはtype就活やWantedlyなども登録していましたがあまり利用していませんでした。
一点だけ注意点ですが、もし無料の就活エージェントやキャリアアドバイザー的な制度を利用する場合は相手の話を鵜呑みしすぎないようにしましょう。これらは学生のためのサービスというより、学生を企業に入れることで利益や実績になるビジネスなので自分に合っていない企業を紹介してきたり、内定承諾後に全ての就活を辞退するよう迫られたりもします。またそもそもアドバイザーがプログラミング経験なかったりエンジニア就活をしたことない人も多いのでアドバイスの質が低いこともあります。基本的には自発的に情報収集や選考を行い、疑問解消などの補助的な用途で利用するのが良いと思います。
よく見てたXアカウント
新卒メガベン就活についてよく発信されているアカウントです。メガベンチャーに行くにはどのようなことが求められるか、最終的にどのようなスタンスで企業を選ぶかなど参考になる情報をよく発信されてます。
よく見てたYoutubeチャンネル
最近はインタビュー系が多いですが、メガベンチャー対策の動画やコンピューターサイエンスについての投稿はよく見てました。
未経験からエンジニアになる上で何を学ぶべきかなど初学者の疑問に答えるような内容の動画が多くおすすめです。
ES、自己分析、企業分析、SPI、OB訪問について
ESはここまでの技術経験(インターン、個人開発等)をしっかり記載すれば基本通りますし、文章は自分で書いても生成AIでも問題なかったです(もちろん自分で手直しは必要です)。
自己分析は特別時間を設けるというよりESや面接対策をやりながら自分の理解が足りていないとこを都度整理する形で良いと思います。
企業分析は公式サイトに目を通して志望理由や逆質問などを考えるようにしていました。ある程度有名な企業の場合はnoteですでにまとめてくれている人もいたりするのでそれを活用するのも良いです。ただおそらく生成AIを使って分析しているので情報が古くないかなどは確認する必要があります。
SPIは基礎学力を試すものと性格や考え方を問うものの2種類(あるいは両方)があると思いますが、自分の受ける企業では性格や考え方を問うテストが多かったので特に対策はしませんでした。
OB訪問はMatcherやビズリーチキャンパスなどが有名ですが自分はやってませんでした。
就活管理
自分はNotionで適当に管理していました。調べたらテンプレートなどもあったのでこれらを活用するのも良さそうです。管理の仕方にこだわりすぎるのは本質的ではないので自分に合うやり方でやるのがベストだと思います。
(おまけ)想定Q&A
最後に過去の自分が気になっていたことに勝手に回答します。もし他にも質問ありましたらお気軽に記事のコメントやXのDMで聞いてください。
Q: 学歴は関係あるのか
もちろん高学歴とそうでない人を並べたら高学歴の方が有利ですが、それよりインターンや個人開発等の経験がちゃんとあれば書類は通りますし、それらを面接でしっかり語ることができれば面接も普通に通ります。
Q: 資格は必要か
ベンチャーやスタートアップ系の就活ではほとんど意味をなさないことが多いので必要ないと思います(SIer系はわからない)。そもそも書類に資格を書く欄がなかったりもします。基本情報などを自己研鑽として学習するのはアリだと思いますが、それでもインターンや個人開発などと比べると優先度は低いです。
Q: 院にはいくべきか
自分は学部卒なのでなんともですが、明確に目的がなければ行く必要はないと思います。ただ学部の段階で就活がうまくいかなかったりした場合は院進も選択肢には入ってきます。
Q: 休学はアリか
自分は実際休学したので全然アリだと考えていますし面接でも特に突っ込まれなかったので、その期間フルタイムでインターンしたりすればかなりプラスになると思います。ただ計画をしっかり立てずになんとなく休学するのはやめた方がいいですし、浪人などをすでにしている場合は少し慎重に考えても良いとは思います。
Q: どれくらいの技術経験が必要か
個人、業務問わず技術経験はたくさんあるに越したことはありません(当たり前ですが)。メガベンチャーの場合は長期インターンに参加していることが最低ラインだと思います。もちろん大学の勉強を頑張るのも良いですが相当研究などで実績があるとかでないとあまり評価されないです。長期インターンに参加できているのであれば個人開発など何かしらの技術的取り組みは普段から自発的に行なっていると思いますし、現場の雰囲気もなんとなく掴めていると思うので、面接でも現場社員などとの感覚が大きくずれることはないと思います。ただ最近は長期インターンに参加している学生は多いので、参加することでプラスになるというよりはあくまで最低ラインに立つことができるという感覚です。
おわりに
サマーインターンの選考なども含めると一年近く就活をしましたが、なんだかんだインターンや面接を通して自己理解が深まったり色々な企業を知ることができたので、得るものが多い期間だったと感じています。反省点として就活の期間は面接対策などに時間を割きすぎており、技術的研鑽が疎かになっていたのでもっと良いバランスで取り組みたかったです。
新卒就活は年々難化しているみたいですが、ちゃんと計画を立てて愚直に技術研鑽と情報収集を続けていればなんとかなると思います。この記事が少しでも今後就活をやる人の参考材料となってくれたら嬉しいです。ここまで読んでくださりありがとうございました👋
Appendix
新卒メガベンチャー就活周りの記事は他の方も結構出されてるのでそちらも是非参考にしてみてください。
