見出し画像

凡人情報系修士の就活備忘録+TIPS

初カキコ…ども…
情報系修士2年のマソラと申します。
この度、就活を終えて研究も一時的に落ち着いたので、重すぎる腰を上げて自分の就活体験を記事に残すことにしました。

記録用なので、基本的には時系列に沿って淡々と自己体験を記します。
合わせて、個人的にやって(やれば)よかったTIPSも申し訳程度に共有できればと思います。結構当たり前のことしか言えてないですが…。
出来る限り抽象的要素を排除して書いたつもりなので、情報系インターンや新卒就活を行う誰かの参考になれば幸いです。

自己紹介(2022現在)

  • 所属:東工大 情報工学系 学士 → 東工大大学院 情報工学系 修士

  • 研究:スパコン使って大規模深層学習(画像認識)

  • 予定:23卒 データサイエンス領域のエンジニア

  • その他特徴:プログラミング大学入るまでほぼ未経験、度を越した英弱

インターン編(B3 夏〜M1 冬)

B3 夏

  • 1週間のワークショップ型(ITコンサル)

  • 2週間のフルタイム業務型(アプリケーションエンジニア)

自分は以前より院進を想定していたので、B3の夏休みは就活などせずに、お布団でくねくねすることを予定していました。
しかし、彼女が「G社」の長期インターンに行くことになり焦燥感に駆られた結果、行けそうなインターンを大慌てで探しました。

この時点で業務プログラミング経験は皆無、希望職種・業界についても非常にあやふやな状態で、「情報系かなーやっぱりw」程度の漠然とした認識でした。
なので、この時期のインターンは、就職を意識するのではなく、就業体験を通して情報系っぽい仕事がどんなもんなのかを知ることが目的でした。
職種については情報系の職種を、
「コードあんま書かない上流タスク系(ITコンサルなど)」と、
「コードをゴリゴリ書くエンジニア系(SWEなど)」
にざっくり大別して、上流タスク系とエンジニア系どちらも1つずつ経験してみることにしました。

インターンを探す手段として、Wantedlyとみんな大好き夏インターンまとめスプレッドシートを使いました。
探す時には以下の点を意識しました。

  1. 1週間以上のフルタイムでしっかりタスクがあるやつ

    • 報酬が出るとなお良い

  2. 悪い噂をあまり聞かない大手企業

1点目の理由は、「実際の仕事の雰囲気を掴む」という目的のためです。1dayの実質就職説明会のようなインターンに行っても、企業の制度上の話に終始して実態がよく分からなそうです(偏見)。
さらに報酬が出ると仕事感が増して良さそうです。(働くからにはシンプルに金が欲しい!!!)

2点目の理由は、「いきなり知らないベンチャーに飛び込むのは精神的ハードルが高かった」という性格上の理由です。
技術的な基盤も企業選定眼も無い状態で、社名に頼らず自分で選んだ企業の門を叩くのは少し怖い…怖くない?
未だ見ぬ労働の雰囲気や感触を掴む段階では、リソースに余裕がある大手企業の下で基礎的なレクチャーを受けたい気持ちもありました。
人によっては、最初からベンチャーで裁量持ってガンガンやっていくのも全然いいと思います。

上流タスク系職種については、無償で渋みはあるものの未経験OKで1週間job型のITコンサルインターン(I社)を見つけて応募し、書類選考→Webテストを経て参加しました。
I社は外資系企業の日本法人ですが日本企業色がかなり強く、英弱な自分にとっては優しい環境でした。

エンジニア職種については、
「インターンに行くためにインターン(実務)経験が実質必要」
という巷で度々言われる現象によって、結構苦戦していました。
ダメ元で彼女がいく「G社」のインターン選考に特攻しましたが、データ構造とアルゴリズムの理解が浅く、コーディング面接段階で祈られてしまいました。。。
そんな中ありがたいことに、Wantedlyにて、デジタルアートワークなどを手掛ける「T社」に2週間の有償インターンのスカウトの話が降ってきて、Webテスト→面接を経て参加する運びになりました。

人生初めてのインターンということで、2つともそれなりに緊張しましたが、それぞれの職種の実態を何となく知れる良い機会となりました。
またこの段階で薄々と、自分はエンジニアとしてプロダクトを直接作るのが性に合っている気がしていました。
学部卒就職もふと頭を過ぎりましたが、社会にまだ出たくない研究をやりたい気持ちが勝り、インターン後の本選考は受けませんでした。

インターン内容の詳細については、長くなりすぎるので省きます。。。どんなことをするのか気になった方は聞いていただければお答えします。多分。

B4 夏

  • 2ヶ月のフルタイム業務型(ソフトウェアエンジニア)

研究室配属直後のB4の夏休みは、比較的時間に猶予があったこともあり、昨年度と同様にインターンに行ってみることにしました。

B3夏の短めのフルタイムインターンで業務をざっくりとだけ体験し、おおまかな業務の流れの理解は済んでいました。
なのでB4の夏は、ある程度長期間腰を据えて、実際の業務内容に近い開発体験をすることが目的でした。
この段階でも、就職活動というよりも、技術インプットの一環としてインターン参加を考えていました。

ただ、一般的な企業ではサマーインターンシップの対象を「来年度の本選考を受ける見込みのある学生」、つまり実質的にB3とM1に絞っていることが多く、インターン先候補となる企業は最初から結構絞り込まれていました。

そんな中、例のスプレッドシートを眺めていると、データソリューション事業を主軸としているスタートアップ「F社」のインターンが目に留まりました。

「F社」のインターンは、2ヶ月フルタイムのソフトウェアエンジニア(SWE)ポジションで、学年は不問、何より給与が30万/月支給されるという、国内スタートアップとしてはかなり好条件で募集されていました。
(半ば疑いつつも)SWEのポジションで応募してみたところ、書類選考→コーディング面接×2→最終面接を経て、参加が決まりました。

未知のスタートアップということで、正直「こんなに給与を貰えるってことはブラックなのでは」、「データアノテーションなどの雑用虚無タスクを無限にやらされるのでは」などと、幾ばくかの疑惑と偏見を持って望みました(失礼)。
しかし、蓋を開けてみると、他の業務でご多忙にも関わらず懇切丁寧に指導してくださる強強社員様メンターが2人もつき、自分にとって難しすぎない絶妙なラインを見定めて裁量が調整されたタスク、充実した福利厚生、業務後のスマブラ/オーバークック、などなど様々な側面で非常に手厚いインターンでした。
技術的に多くのことが身についただけでなく、優秀な社員方・同期らとの交流もとても楽しく、大満足のインターンでした。この時の同期とは今でもぼちぼち連絡取ってご飯に行くぐらい仲良くなりました!
COVID19の情勢に細心の注意を払いつつ、オフィス出社してインターンできたのも良い体験でした。
このスタートアップでのインターンを通して、エンジニアとして働くことを暫定的に決めました。

また、この頃から、AtCoder社が主催する競技プログラミングのコンテストにちょいちょい参加し始めました。
地頭が良くない上に精進をしないFAKERなので、レートは水色になってから一進一退を繰り返し、順調とは言えない推移をしていましたが、ゲーム感覚でプログラミングできるのが楽しくて、結構な頻度で土曜の21:00-22:40を捧げていました。
就活や研究が忙しくなったM1の夏以降ほぼ休止してましたが、就活が落ち着いた現在、復帰を目論みリハビリ中です。

B4 冬

  • 3週間のフルタイム業務型(機械学習エンジニア)

B4の夏で技術職インターンシップの楽しさを知ったため、卒論提出後の春休みで、再びインターンシップへの参加を検討しました。

大学で深層学習についての研究を行っていたこともあり、この辺りから、研究開発やMLOps的な業務をやってみたい、というモチベーションが強くなっていました。
また、徐々に就職先として企業を意識するようになってきました。

そこで、機械学習やソフトウェアの最適化事業を展開する「f社」の、機械学習エンジニアポジションでの3週間フルタイム有償インターンに応募し、書類選考→コーディング面接を経て参加しました。
「f社」のインターンは所属していた研究室の紹介で知りました。

こちらのインターンはB to BのTHE 研究開発という感じで、内容としては深層学習モデルの学習/推論スループットを改善する研究開発をしていました。

「f社」とはインターン後もご縁あって、M1の夏までアルバイトとしてお世話になりました。コロナウイルスの本格的な蔓延に伴い、完全リモートでのインターンとなりましたが、技術的に大変勉強になりました。

また、この少し前に、情報処理推進機構(IPA)が設けている「応用情報技術者試験」に合格しておきました。CSの体系的知識の整理になって良かったです。が、正直、就職時のアピールの観点では、応用情報単体では役に立つかどうかは微妙なラインだと思います。CS系の学士/修士号に相当する試験みたいなものなのでCS系の学士/修士が取得してアピールになるかは。。。🤔

M1 夏

  • 6週間のフルタイム業務型(サーバーサイドエンジニア)

  • 1週間のワークショップ型(ITコンサル)

  • 3週間のフルタイム業務型(機械学習エンジニア)

  • 3週間のフルタイム業務型(機械学習エンジニア)

M1の夏休みとなり、いよいよ就職先の候補として選んだ企業の長期インターンシップへの参加を試みました。
結果から述べると4社の企業で計13週間連続でのフルタイムインターンシップとなり死にかけました。

具体的には、7社受けた内6社に通り、その内、
某緑の「L社」で6週間のサーバーサイドエンジニアインターン、
B3夏にお世話になった「I社」で2度目のワークショップインターン、
イメージセンサやエンタメ事業の傍で研究開発にも注力する「S社」で3週間の機械学習エンジニアインターン、
某赤の「Y社」で3週間の機械学習エンジニアインターン
の計4社でのフルタイムインターンを連続で行いました。

毎日なかなか疲れが取れず、最後の方は片耳が聞こえづらくなる謎の生活習慣病に悩まされるほどでした😇
(幸い大きな病気には至りませんでした)

思った以上にキツかった要因としては、以下のようなことが考えられます。

  • 複数の企業をノータイムで転々としたため、新環境への適応を短いスパンで繰り返す必要があった

  • 一人暮らしを始めたばかりで、食生活や生活環境が破壊

  • 予期せぬ研究タスクが大量発生し、休息や睡眠時間を破壊

また、ギチギチにインターンを詰め込んでしまった要因として、以下のような良くない思考・判断が挙げられます。

  • 体力的限界を考慮せずに、志望度の高い順になるべく多く行けるように予定を組んでしまった(もったいない精神)

  • インターン参加を辞退する企業への申し訳なさ(何様)

  • 本選考への恐怖に伴う、暇を作ってしまうことに対する不安(杞憂)

  • 参加を決める6月時点では、8-10月は暇なはずだった(予定は未定)

以上のことから、超人でなければ、夏のインターンは本当に行きたい1-2社に絞って、1週間程度はマージンとって参加するぐらいの程々さが良いのではないかな〜と個人的には思います。
結局人によるだろ、と言えばそれまでなんですけども。。。

ここでインターン選考の詳細までについては述べませんが、ソフトウェアエンジニア系のインターンでは、それまでのインターン経験と、競プロを通して勝手に培われていたコーディングテスト力が、結構効いていそうな雰囲気でした。
とは言え、巷で散々言われているように、コーディングテストで求められるアルゴリズム力は、基本的にはAtCoderにおける茶色程度、難しめでも緑-水色程度が関の山なので、そんなに億劫になる必要はないと思います。
(「L社」のアルゴリズム問題に限っては、初見では絶対無理と思われる問題が出てきてビビりました。)

また、機械学習エンジニアのインターンでは、研究内容が深層学習関連だったこともかなり効いていそうでした。
「S社」のインターン選考面接では、「5分程度で軽く研究内容を紹介してくれ」という要求に対して、20分間一方的に研究内容を特有早口解説し面接が終了、という最悪の立ち回りをしましたが、結果的に通ったので研究内容が本質です(?)。

インターン内容については、全部よかったです。すみません書くのが疲れました。強いて特筆するとすれば、「L社」のインターンは6週間で60万円の報酬が出るという点で、圧倒的でした🤑
この時点で、サーバーやインフラ周りのエンジニアか機械学習エンジニアになると決めました。一意に定まってなくて草

M1 冬

  • 3週間のフルタイム業務型(機械学習エンジニア)

インターンに行き過ぎておかしくなっていた僕は、本選考が始まっているM1の春休みにも、システムインテグレーター事業を展開する「N社」で機械学習エンジニアとして3週間のインターンシップに参加しました。

扱った内容自体は非常に面白く、メンターの方も親切でとても良い人でした。
が、JTCすぎる社風が少し自分とは合わないと感じ、本選考を受けるには至りませんでした。

新卒就活編(M1 冬〜 M2 春)

  • 内定:4社(ソフトウェアエンジニア×3、機械学習エンジニア×1)

  • お祈り:1社(ソフトウェアエンジニア)

M1の秋に「Y社」のインターンが落ち着いた直後辺りから、各企業でエンジニア職種の本選考エントリーがボチボチ始まっていました。

自分はまず、早期に募集が始まっていた、ゲームや配信サービスなどの幅広い事業を展開する「D社」と、M1の夏にインターンでお世話になった「Y社」に新卒エンジニアとして応募しました。
その後、M1の夏に「Y社」と同様にお世話になった「L社」とチャレンジ枠の外資Big Tech「G社」に新卒エンジニアとして応募しました。
ついでに、ECサービスを起点に独自のエコシステムを構築している「R社」の 1 day 選考にも応募しました。

また、全てが壊滅した場合に備えて、ITコンサルやサポートエンジニアの職種も他企業で応募をしましたが、後ほど辞退 or お祈りされました。

「D社」は、コーディングテストと技術面接を経て最終選考手前まで進むと、人事の方がアドバイザーとしてついてくださり、就活についてあれこれ(「D社」以外の企業についても!)親身に手助けをしてくれる最高のシステムになっていました。これは、面接対策などを特段してこなかった自分にとって、非常に大きなサポートでした。

「Y社」も、コーディングテストと簡単な数学(ほぼ算数)問題が面接の前にありました。が、これは他の企業と比べると多少簡単なものでした。

「R社」の1 day 選考は、本当に1日の内に、コーディングテスト→面接×2→内定通知まで選考プロセスが完了し、スピード感が凄まじかったです。

「L社」の選考については、希望職種(機械学習エンジニア)での採用面接中にテンパって頓珍漢な発言を連発してしまい、祈られてしまいました。が、再度、別希望職種(サーバーサイドエンジニア)での採用選考にシフトすることができて、なんとか内定をいただけました。
「L社」のコーディング試験のアルゴリズムパートは、インターン選考と同様に、自分の実力だと結構苦戦して焦りました。ただ、難しいアルゴ問題は、他候補者も苦戦するので、満点取らなくても通る時は通ります。

「G社」については、英語面接段階で「コミュニケーション力不足」(という名目の英語力不足)で、お祈りされてしまいました😭
後のフィードバック面談で判明した日本語インタビューと英語インタビューの圧倒的評価差に愕然としました。。。
当たり前かもですが、外資に行きたい人は英語やりましょう。そもそも面接官の質問が理解できない、自分の考えを簡単にでも短時間で伝えることができないレベルの英語力だと、アルゴリズム力を問われる段階まで達さないので、アルゴリズムよりも英語での面接対策をやっておいた方がいいです。人事は「英語力で測ることはしない」とか言うかもですが、基本的な英語力は確実に前提にあります。

総じて、後半のインターン時と同様、自分が自己アピールで注力した点は、

  • インターンを通して身についた業務遂行能力アピール(メイン)

  • それなりに研究もやってきたよアピール(サブ)

  • 競プロや趣味開発も嗜んでいるよアピール(サブ)

といった感じです。
あとは、「御社好きだし頑張りたいよアピール」が必須で、これは、具体的かつ同業他社と差別化できることを望まれます。

内定した中で新卒企業をどう選ぶかは、偶然にも状況が極めて近い匿名相談サービスへの投稿があったので、そちらに丸投げしたいと思います。何かの参考になるかもです。

その他、企業選定時に気をつけなきゃなあと思ったことを雑に羅列しておきます。

  • 人事の話はバイアスがかかっているので100%鵜呑みにはしない

    • 希望職種先の現社員、できれば元社員の方に直接話を聞くのがBest

    • OpenWorkなどの企業口コミサイトも「不満を持って辞めている」というバイアスかかりがちな気がする、それが全てと思うと損しそう

  • 自分で優先度付きの評価軸を2,3軸設定し、それに基づいて定量評価

    • 調べても不明な点は関係者に聞く

  • 他人の就活事情と比較して一喜一憂するのは良くない

    • 本当に精神衛生上良くない、どんどん捻くれます

    • 比較するにしても、感情的に投げ出さず生産的な比較を

おわりに

ここまで読んでいるもの好きな方は少なそうですが、いかがでしたか?😇
タイトルにある通り自分は、凡才の極みのような情報系修士ですが、こと就職活動に関しては、ある程度順調に事が進んだタイプであったと思いたいです。
どこかの同じような状況の方の一参考例になれれば幸いです。
この記事の内容やインターン/就職活動について何か質問などある方は、本記事へ直接か、自分のTwitterのDMやリプライにてコメントいただければと思います。

TIPSまとめ

  • 未経験OKインターン→長期有償インターン→新卒就職の安牌ムーブ

    • インターンのメリット

      • ブログや就活サイトからは得難い情報の取得
        (実際の労働環境、社風、人)

      • 箔が付く

        • 次のインターン・就活に役立つ

        • 外部に見せられる成果物が出来る(こともある)

      • お金が貰える

      • 技術的に勉強になる

      • 学業や研究の息抜きになる

    • インターンのデメリット

      • 行きすぎると多忙で死ぬ、他(研究など)が疎かになって死ぬ

        • 個人的には、夏のインターンは本当に行きたい1-2社に絞って、
          1週間程度はマージンとって参加するぐらいの程々さが適当

        • フルタイムではなくパート形式ならずっとやっていけるかも

      • 研究室によっては長期休み中のインターンでも許可が出なかったり
        するらしいので、事前に確認を。。。

  • 月刊『競技プログラミングは(新卒エンジニアの)就活に役に立つ』

    • 競プロのレーティングが公然と評価軸になっている企業はもちろん、
      コーディング試験を設けてる企業や、コードをバリバリ書く職種では
      一定の評価がされる。提示給与に直接響くこともある。

    • 競プロにあまり明るくない企業でも、アピールの仕方を工夫すれば響く可能性あり

    • 就活の一環と思わず趣味としてやる方が精神衛生上良い

    • その他アピールで手軽に用意できるもの:IPA系資格/趣味開発/Kaggle

    • 受賞歴・研究業績・インターン経験などあれば、そっちの方がアピールとしては強そう

    • コーディングインタビューでは、アルゴリズム力だけが問われるわけではないので個別に訓練が必要

  • 外資いくなら流石にある程度の英語力は必須

    • 英語技術面接では、そもそも面接官の質問が理解できない、自分の考えを簡単にでも伝えることができないレベルの英語力だと、技術力を問われる段階までいかない

    • TOEIC的な英語力だけでなく英会話力が大事

    • 人事が「英語力で測りません」とか言ってても鵜呑みにしない

  • ネットや人事の話を鵜呑みにし過ぎない

    • インターン or 選考に参加して直接社員の話を聞く

    • 「円満に」転職していてもう関わりない人は、バイアスかからずGood

    • openworkなどのネットに書いてある待遇は大嘘なことが多い

      • 投稿者的には嘘じゃないけど、所属部署とかポジション、その他特殊な条件とか色々あって、実態と乖離がある恐れあり

この記事が参加している募集

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