見出し画像

普通の地方学生が新卒でモダンな自社開発企業にWebエンジニアとして内定もらうまで

こんにちはyudai yamamotoです。 この記事は自分自身の就活の体験談です。新卒または地方学生がエンジニアとして就職を考える上でのモデルケースになれればと思っています。


背景


巷には未経験からのwebエンジニアへの就活体験記が多く存在しています。しかしその多くは社会人であり、新卒学生からwebエンジニア就職した趣旨の記事は多くありません。またそのような記事が見つかったとしても、多くの場合、執筆者である彼らは、とても華やかな素晴らしい知識や経歴を持っています。例えば、学部1、2年の頃から開発インターンに参加してる、競プロで水色以上、kaggleでExpert以上、査読付きの国際学会にacceptされたことあるなどです。

自分にとって、そのような煌びやかな学生の記事は憧れてはするものの、参考になるものではありませんでした。別に昔からプログラミングやってたわけじゃない、けれども進路を意識した結果、エンジニアに興味持ったという人種の方が世間的には多いだろうし、自分もまさにその一人でした。

Webエンジニアが注目されている昨今なので、自分のような普通の地方学生が、新卒で界隈で知名度のある有名企業に内定もらえるまでの過程を発信することは有益だと思い、記事を執筆しました。

就活結果

いわゆるエンジニア系インフルエンサーのいう「モダンな自社開発企業」に該当するであろう会社から複数社内定いただきました。内定承諾した会社は、具体的な名前は伏せますが、「日本CTO協会、エンジニアが選ぶ開発者体験が良いイメージのある企業ランキング30」に選ばれている会社で界隈での知名度は高いです。↓


属性

  • 地方国立大の大学院生で情報科学専攻です。
    学部時代の専攻は非情報系(数学系)で、大学院進学を機に専攻を変更しました。一応、学部の頃に一般教養レベルのC言語入門の講義は受講したことはありました。

  • 内定までのプログラミング歴は実質的に1年程度です。
    授業以外でもコード書いていた期間。

就活黎明期 ~ 内定まで

M1 : 4月~ 7月

大学院に入ってすぐに就活を意識し始めました。この時期は具体的な選考についてはまだ考えていませんでしたが、業界あるいは同様のカルチャーを持つ事業会社で、エンジニアとして就職活動しようとはすでに決めていました。

上記のような進路を考えた時に、サマーインターンに参加することは重要だと思っていたので、日頃から優良そうな企業について調べ、インターン募集している企業があればブックマークをつけるようにしていました。

また「魔法のスプレッドシート」という優良企業のインターンをまとめたスプレッドシートも利用しました。そのシートには、私が行きたいと感じるインターンが豊富に載っていたので、積極的に参考にしました。

その後、そのシートに書かれている企業を中心に15個程度のインターンに応募しました。このときの自分は全く自信がなかったので、比較的通過が望めそうなインターンばかりに応募していました。メガベンチャーには一切出していません。

また応募の際にポートフォリオや GitHubの提出が求められることが多いので、事前に自分なりに作ったものを Github にあげていました。

振り返るとこの当時作ったものは本当に質が低いものでした。教材のほぼパクリ、しかも使用技術レベルは低いという有様でした。当時の自分のレベル感としてはHTML、CCS、JSの基礎があって、Expressなどを利用して掲示板などの簡単なクローンアプリならなんとか作れるくらいの感じだったと思います。Reactも勉強し始めていた気がします。

M1 : 8月~ 9月

なんとか数社のサマーインターン選考に通過し、チームでの開発を始めて経験しました。
振り返ると、運よくインターン参加できた企業は、当時の自分の実力に不相応な企業ばかりでした。実際、チーム開発では自分はほとんど貢献ができませんでした。特にGitを用いた開発フローについて理解できていなかったのは致命的でした。(もしあなたがチーム開発に参加するのであれば、Gitについて事前学習しておくことはとても重要です。コンフリクトの対処方法やプルリク駆動の開発について理解しておきましょう)

インターンを終えて、自分の知識不足、経験不足を強く感じたのを今でも覚えています。もし自分に情報系の大学院生という錯覚資産がなければインターンには参加できなかったと思います。(もしもあなたが非情報系の学生であれば、私のような突貫工事ではなく、もっと十分な知識と実績を作っておく必要があります。ポートフォリオの充実、資格の取得などやれることはいくらでもあります。)


M1 : 10月~12月

サマーインターンでの挫折感を機に本格的にプログラミングに向き合う決心をしました。
この時期は自分の持つ可処分時間のほとんどを開発に注ぎました。自主的にハッカソンに参加したり、知人に頼んでwebサイトの制作をさせてもらったりしました。

またこの時期には登録していた就活関連サービス経由でのスカウトメッセージをもらう機会が増えました。私はLabBase, Wabtedlyなどのいくつかの就活用サービスを活用していました。特にLabBaseは自分が興味を持っていた企業からもメッセージが来ることが多く、実際に早期選考に進んだ企業もいくつかありました。

M1 : 1月

先ほどの時期の経験や実績を糧に、インターン選考や本選考を受けていました。また選社する上で判断基準をこの時期に言語化しました(遅い)。

そのときの私の判断基準を箇条書きでまとめておきます。定量的なものはほとんどないので実際は感覚で判断しています。

  • 事業領域 : 自社プロダクトを保有している。特にこだわりはないが、クロステック系の事業内容だと○。

  • 会社の規模 : 大規模よりは小規模〜中規模。しかし創業間もないスタートアップ、イメージ的には新卒をオープンに募集していない会社は除外。

  • 技術 : 新しいものを積極的に取り入れていく姿勢がある。特にフロントエンド分野に強い会社。

  • 会社の文化・雰囲気 : 自分とノリの似ている人が多い方が良い。比較的落ち着いてるがオタクすぎない感じ?またオープンで透明性が高いとうれしい。

  • 給与 : 後述する理由により選社フィルターとして利用。また定量的に測れるため他の基準で優劣がつかないときの最終判断材料。

  • やりたいことができるか : モダンなフロントエンド開発ができる。加えてデザインシステムやアクセシビリティなどのデザイン寄りのこともできるとvery good。

しかし↑の条件を満たすような会社は無数にあったので、基本的には労働条件で企業を篩に掛けた上で、判断材料に基づき企業の選定をしていました。自分の場合、平均月残業時間が30時間以内かつ年収ベースで400万以上提示している企業以外を候補から除外していました。理由としては新卒時点で400万以上提示している企業は優良企業である可能性が高いという仮説を置いています。個人的には今でもある程度良いフィルターになっていると思っています。残業時間は個人的に許容できる上限が30時間というだけです。

同時にエンジニアとしてジョインできる長期インターンやアルバイト先も探していました。先述したWantedlyで応募先候補を探しました。この時の選考通過率はかなり低かったです。15社くらい出して2社しか通らなかった記憶があります。(実際に長期インターンを始めたのは4月からで就活終了付近です。)

実体験から言えることは、長期インターンやアルバイトは本選考で内定もらうよりも一般的に難しいです。したがって長期インターン経験者であれば、本選考で実装力が原因で落とされるケースはほとんどないのではないかと思います。

M1 : 2月~3月

2月から実際に本選考を受け始めました。
主な対策は以下の通りです。特別なことはしていません。

  • 面接で想定される質問と自分なりの回答を全てメモでまとめる。また友達と模擬面接して、面接のフィードバックをもらう。

  • 提出用のGithubはREADMEに要点をまとめて採用側が見やすいように工夫。(技術の選定理由やスクリーンショットをきちんと貼るなど)

一般的によく言われる対策として、コーディングテストがあると思いますが、自分はほとんど対策しませんでした。理由としては単純にそこまでリソース(時間と労力)が割けなかっただけです。ただ実際にコーディングテストを受けてみた印象としては、研究やらWeb開発やらである程度書いている人なら難しくない気がしました。具体的にはAtCoderの茶色レベル、LeetCodeのEasyが半分以上解けるレベル(こちらの記事参照)で問題ないと思いました。とは言いつつもメガベンチャー中心に受けるなら基本的に対策したほうがいい思います。アルゴリズムの知識がいる問題は知っていないと解けないので。

3月の終わり頃には、自分が行きたいと思える企業から内定をいただけたので、この時点で就職活動は概ね終了しました。

実際に受けてみて、新卒の就職活動においては、面接でのコミュニケーション能力が最も重要だと感じました。面接でいかに自分の思考を言語化し、相手の聞きたいことを理解できるかに合否の分かれ目があるのだと思います。

また成長意欲やポテンシャルを明示するのも重要だと思います。私の場合、先述したような経験やキャッチアップを短期間に行ったことがポテンシャル評価に繋がったのではないかと思っています。技術力そのものはそれほど見ないけど、成長意欲やポテンシャルは、技術に対する学習姿勢で見るという感じだと思います。

コミュニケーション能力 = 成長意欲・ポテンシャル  > 技術力

多くの企業ではおそらく↑の順序関係だと思います。

M2 : 4月~ 現在

結果的に計11社を受けて、4社内内定、2社落ち、5社選考辞退という結果になりました。今は内定先とは別の出版・メディア事業の会社で長期インターン中です。主にRailsで自社サービスの開発運用をしています。

終わってみて

今の内定先には満足しています。一年前の自分の実力では到底縁のなかった会社だと思います。来年からは刺激の多い現場で働くことができそうです。


使っていた就活関連のサービス

就活で利用したサービスと所感についてまとめておきます。

Wantedly

インターンや本選考のお誘いも何件か来た。ただ逆求人サービスではなく、あくまでビジネス型SNSなのでスカウトがたくさん欲しい人向けではない。主にインターン先を探す際に重宝した。

LabBase

理系院生向けの逆求人系のサービス。スペックが高くない自分でもアクセンチュアやGMOなど大企業からもスカウトメッセージが来たので高学歴+研究頑張ってる学生は割と良さそう。自分は割と利用していた。

レバテックルーキー

自分はほとんど利用していなかったが割と評判がいい。説明会の案内も多いので無難に逆求人系のサービス選ぶならこれが良さそう。

One Career

面接の対策用として利用。面接での質問事項の情報などを得られる。ただweb系の場合、設立から日が浅い+小規模が多く、あまり情報量はない印象。

魔法のスプレッドシート

とりあえずこれに記載されているところ受けておけば良いのではという感じがある。

サポーターズ

自分はサポーターズ主催の技育CAMPというオンラインハッカソンに参加した。学生向けの技術の勉強会なども定期的にやっている。参加したレベルの高い学生から刺激を得られる。気軽に参加できるのも○。


使っていた学習メディア

学習で利用してよかったと思うものをまとめておきます。

Progate

言わずもがな。

N予備校

プログラミング学習の文脈で知名度低い気がするが、圧倒的におすすめ。自分はやってないがScalaを使ってアプリ開発ができてしまうのはすごい。

Udemy

Reactならまずはこれ↓

React深堀りできる↓


Youtube

Lama Dev 
英語だが有用。サンプルアプリ以上のクオリティの開発物を作れる。

JavaScript Mastery 
上述と同様。

書籍

リーダブルコード
言わずもがな。

フロントエンド開発入門 プロフェッショナルな開発ツールと設計・実装
標準的なフロントエンドの技術が体型的にまとめられている。フロントエンド志望ならおすすめ。

「プロになるためのWeb技術入門」 ――なぜ、あなたはWebシステムを開発できないのか
言わずもがな。

実務レベルでわかる/使いこなせるようになる Git入門コマンドライン演習80

この本のおかげでインターン先での業務は問題なく行えるようになった。


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

就活体験記

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