就活終わったので一筆とろうと思う

本記事はnoteにて投稿したものをはてなブログに載せ直したものとなります。
note.mu

TL; DR

3月くらいから就活を始めていたのですが、この度ソフトバンクに内定したので来年からは東京でエンジニアやっていきます。
みなさんぼくと一緒にソフトバンクで情報革命起こしていきましょう。
就活サービスはCodesprintがマジで秀逸なので学生の皆さんはガンガン使ってください。知名度はまだ低いですが、優秀で素敵な就活サービスだと思います。

はじめに

だいたい2月くらいに就活をなんとなく始め、そこから割とダラダラして、それで今回ようやく就職先が決まったわけなので、せっかくだしnoteでちょこっとまとめておくかぁって感じで書き始めた次第です。

今回の内容としては大きく分けて
1. 就活までの経緯
2. 自分の就活の動き方や就活で感じたこと
3. ソフトバンクに決めた理由
4. 受けて良かった企業
5. 今後就活をする学生へ
的な感じでいこうと思います。
割と就活の時期が微妙に長かったし色んな企業を見ていたというのもあって多分かなりの文章量になってしまいそうですが、そこらへんはご了承ください。

就活を始めるまでの経緯

就活を始めたのは2月の中旬でした。
ぼくは2018年8月から12月の間にスイスに留学していて、その間に自分の進路についてかなり悩んでいて、スイスにいる間や帰国した後に色んな人(同期やドクターの人、教授、社会人エンジニアなど)にお話を聞きに行ったりしていました。
ぼくの大学での所属は理学部の生物科学なのですが、生物科学よりもコンピューテーションの方が好きで、なので大学院をどう選ぶかということにかなり悩んでおり、海外の大学院に進学することも視野に入れて考えていた、というのがこのバックグラウンドです。

そんな中、ツイッター新卒で800万も出るなら大学院行かずに就活するわ的なツイートをしたのですが、そうしたらすぐにいくつかの会社からぜひ800万出せるのでコミさん一度弊社にお話を聞きに来られませんか?という旨のDMをいただいたのです。
それがこの発端のツイートです。

ちょっとコンプライアンス的な感じでゴチャゴチャありそうなので具体的な社名については明言できませんが、お酒の席とかで聞いてくれたらペロッと話すかもです。

さて、これらの一連のツイートで自分がすでに会社から需要のある人材らしいと思い、少し就職に揺れ始めました。
そんな中で、そもそも自分はなぜ大学院進学をしたいのかということを考え直したとき、ぼくの答えとしては専門的なスキルや知識を身につけて企業で活躍するためというものでした。
ぼくの考え方というか哲学としてテクノロジーは面白いとか楽しいとかあるかもしれないけど、誰かの役に立って初めて価値があるものだというのがあり、ぼくは将来は人のためになる仕事をしたいと考えていたので将来的にはアカデミアではなく企業でがんばりたいと考えていました。

そうした自分の考え方や将来像を見つめ直して、自分は最終的に企業に行くのだから別に大学院に行ってからエンジニアになるより学部卒でエンジニアになった方が自分がやりたいことは早く実現できて自分として幸せなんじゃないかと思い、そうして完全に就活に踏み切ることにしました。

ぼくが就活に踏み切った理由としては基本的にはこんな感じです。
他にも前に書いた強化学習の本を東大の某教授のもとに持って行ったらまあこんなもの書き上げられるんだったらこの場で修士号あげてもいいんじゃないかなって言われたのもあります。
また、もし大学院に行くとしても、一度エンジニアとして働いてみてから大学院に戻った方がよりいい研究ができるんじゃないかとアドバイスをもらったというのもあります。

前に就活やデータサイエンティスト学生としてのインタビューを受けたりしたので、そこらへんも適宜読んでみてください。

bicyear.net

labbase.jp

1つ目のbicyearのやつは最初にぼくがツイッターで拡散したらアクセス過多でサーバー落ちちゃったので一気にアクセスしないようにしてあげてください。多分また落ちます。

自分の就活の動き方や就活で感じたこと

2月中旬に就活を始めたわけですが、ぼくが始めに就活での相談に乗ってもらったのがCodesprintを事業として展開している新田章太(@maximum_80)さんです。
trackというプログラミング試験をサービスを展開している会社の社長さんで、ぼくの就活開始宣言を見てすぐに連絡をくれました。
ちなみにtrackというのはエンジニア就活しているとかなりの確率でやることになると思います。(LINEとかが採用してる)
それで実際にお会いして食事をさせていただいたのですが、内容をざっとまとめると就活するにあたってのアドバイスうちのサービスを使ってみないかというものでした。
他にも色々雑多なお話をさせていただいたのですが、まあ基本的にはいわゆる自己分析みたいな感じで、自分が今後のキャリアで実現したいことやエンジニアとして大切にしたいことなど、様々な相談に乗っていただきました。
新田さんには感謝してもしきれないですね。

さて、就活の話に戻ると、会社にはやはり社風というものがあります。
就活ではその社風がマッチしているかどうかをちゃんと見ておく必要があるというのはとても大切なことです。
そんなこんなでぼくは面接では御社で活躍している人はどのような人が多いですか?とか会社で働いていてどんなことが楽しいと思いますか?的な感じのことを面接官に聞いていました。

ぼくが就活を始めたのは新卒800万という強烈な文句だったのでどうもぼくが金の亡者のような感じに誤解されているのですが、インタビューでも答えている通り、もちろんお金は大切だけどそれ以上に仕事の楽しさや職場環境、事業内容というのを大切に考えています。
だからこそ、面接では仕事の楽しさや社風など募集要項に書いていないようなソフトなことを聞きまくりました。

こういうソフトな部分で自分にマッチしているかどうかというのを志望している企業とすり合わせていくというのが本来の就活だと思います。
就活というとどうしても企業側に自分を選んでもらえるようにがんばるみたいなイメージがあると思うのですが、ぼくはそれは完璧に間違いだと思っていて、就活は究極的にはマッチングだとぼくは考えています。
学生と企業は対等で、自分の好みと企業側の好みが一致してお互いに納得のいくようにするというのがあるべき形だと思います。
恐らくこれに関しては就活に限らず、転職の際にも重要なことだと思います。

さて、メンタリティ的な話題が続いたので少し話題を変え、具体的にぼくが機械学習エンジニアとして就活をしていてどうだったということについて書いていこうと思います。
今回ぼくが機械学習エンジニアとして就活していて感じたこととして、ぶっちゃけ機械学習やバックエンドorフロントができる云々よりもまず最低限コーディングテストを通過できるだけの基礎力をつけとけという感じです。

この基礎力というのはアルゴリズムとデータ構造、最低限の数学とコンピュータサイエンスです。
例えば深さ優先探索幅優先探索はどういう使い分けをするか、DPをどう実装するか、リストやベクトル、ハッシュ、タプルで何がイミュータブルなのか、などなどです。
ここらへんを理解しておくとコーディングテストやコーディング面接を突破できると思います。
ちなみにぼくはどうだったかというと、コーディングテストで割と苦労しました(笑)
一応ちょっと練習して今はLINEのインターン(応募者1500人で受け入れは50人)のコーディングテストに通過できるだけの実装力がついたので良いのですが、就活中はちょっと大変でした。
学生の皆さんはちまちまAtCoder等で練習しておきましょう。

機械学習などのスキルのアピールについてですが、まあなんかしらのアウトプットがあればアピールとしては十分だと思います。
ぼくの場合は強化学習の本を書いたやつとか普段から書いていたQiitaの記事、実際のプロダクトとしてはDjango+NLPでグノシーの記事をベイズでカテゴリー分類するアプリ(下記にて添付)などがありますが、とりあえず普段からアウトプットを生産しておくといいかもです。

github.com

ぼくの経歴は学部2-3回生で日立製作所の基礎研究所(日立未来課題共同探索部門 日立京大ラボ)にて学生研究員として機械学習(主に深層強化学習)の研究開発に従事、学部3回生でクラウドファンディングを使ってスイスへ留学、現在はアイフルにてデータサイエンティストとして金融データの分析と機械学習モデルの作成を行なっていて、学部生にしては少々豪華な経歴だと思いますので就活においてはかなりバイアスがかかっているだろうし一般論が言えないのですが、まあとりあえず皆さん頑張っていきましょうという感じです。
ただ、一つ言えることとして、面白そうな機会があればどんどんチャレンジしていくことが大切だと思います。
前にツイッターで流れてきた案件でリクルート主催の4泊5日のNLPハッカソンがあり、それに申し込んで選抜学生10人として楽しい思いをすることができました。
何か面白そうな機会が目に入ったら「自分なんかが参加して大丈夫かな」なんて思わずにとりあえず応募してみることが大切です。
基本的にだいたい何をやっても実力不足でボコボコにされるのが関の山ですが、その実力不足を実感できる機会を大切にしていくことが成長のための大切な要素だと思います。
Be Boldってやつですね。

就活ではそういうチャレンジ精神とかも見られると思うので、学生の皆さんは変に謙虚にならずガンガンイキっていきましょう。
もちろん中身が伴っていることが前提ですが、中身の伴ったイキリならぜひともやるべきです。
まあ要するにちゃんとアピールして行けって話ですね。

ソフトバンクに決めた理由

そんなこんなで就活をしていた中で、ぼくがソフトバンクを就職先として意識し始めたのは5月上旬くらいです。
京大の近くには知るカフェという学生無料カフェがあるのですが、そこは企業が就活斡旋の場とする代わりに企業がスポンサーとなって学生は無料でコーヒーや紅茶、オレンジジュース等が飲め、Wi-Fiやコンセントが使い放題という場所で、ぼくはそこのヘビーユーザーでした。
その知るカフェがソフトバンクの説明会を主催するということで、特に理由はなかったのですがなんとなくその説明会に参加することにしました。

その説明会では主にソフトバンクがどういう企業であるかということを簡単に説明しており、一般的には携帯電話のキャリア会社というイメージが強いが、実際のところはロボティクスやIoT、フィンテックなどいろんなものに力を入れているという話がありました。
ぼくはその中でソフトバンクがYahoo Japanを完全子会社化したということやARMを買収した話を聞いて、おそらく今後はGoogleAmazonのようなプラットフォーム企業になることを狙っていると気づき、現在の事業展開の規模やスピード感的にソフトバンクは今後もっと世界的に大きな企業になるんじゃないかと思ったので今後のソフトバンクに賭けてみようと思った、というのがソフトバンクを志望した大きな理由です。

そんな感じでソフトバンクという会社が魅力的に映ったわけですが、これとは別の理由として、今後のキャリア的にもソフトバンクは結構いい会社なのではないかと思ったというのもあります。
ぼくは現在アイフルでバイトとしてデータ分析の業務等に携わっているのですが、普段からアイフルの専務に非常に良くしてもらっていて、就職先について専務に相談したときにベンチャーはいつでも行けるし、新卒の段階でソフトバンクという大きな企業に入ってビッグビジネスとしてお金の回り方を内部から知れるのはこの上ないチャンスだと思う、それにソフトバンクという規模がでかくてスピード感のある会社で孫さんという強力なビジョンのもとに働けるのは最高じゃないか、だからいくらベンチャーが高額な年収提示しようがお前の中長期的なキャリアの視点でより良い選択肢をとれとアドバイスをもらいました。
ソフトバンクは説明会や面接を通していい会社だと思っていたのですが若干迷っていた節があり、専務にいただいたこの言葉でソフトバンクに決定したというのがあります。

受けて良かった企業

さてさて、そんな感じでぼくの就活は終わったのですが、今後の就活する学生に向けて、ぼくが受けて良かった企業を2社紹介しようと思います。

1社目はGoogleです。
まあそれはそうという感じなのですが、面接官や説明会のときの担当の人が非常に良かったというのがあります。
説明会では唐揚げやサンドイッチ、お菓子が食べ放題でふかふかのイスで説明会に参加して、色々衝撃を受けた記憶があります。
実はぼく今回の就活の期間中にGoogleに2回受けていて、1回目はソフトウェアエンジニアで受けたときにオンラインのコーディングテストで落ちました。
そのコーディングテストに落ちて自分はGoogleとは縁がないのだなと思っていたのですが、なんとなく参加したアカリクの逆求人型の就活イベントに参加したときにGoogleに面談相手に指名されました。
それで担当者の人と直接お話させてもらったのですが、前にコーディングテストで落ちた旨を話したら小南さんGoogle向いてそうだしもう一回受けてよ!と言われ、そうして2回目のチャレンジが決定したのです。
今度はGoogle Cloudで技術営業の方を受け、書類のスクリーニングは合格しました。残念なことにその次の面接で不合格になってしまったのですが、採用の前後で非常に対応が誠実で、いつか転職とか考えるならまた受けようと思いましたね。
Googleはいいぞ。

2社目はTRI-ADです。
TRI-ADはToyota Research Institute - Advanced Developmentの略で、自動車のトヨタの系列会社です。
シリコンバレーにはTRIというトヨタのR&Dの会社があるのですが、その研究内容とトヨタ本社をつなぐ会社として去年の夏頃に設立された会社で、まだ立ち上げ段階の会社です。
で、まだ立ち上げ段階なのであんまり新卒を採る体制が整っていないので公式には新卒採用を行なっていないのですが、前に参加したCodesprintのイベントでTRI-ADを知り、選考に呼んでもらえることになりました。
ここも2回落ちていて、技術試験で引っかかりました(技術力不足....)
ただ、TRI-ADを受けて技術試験の何がどうダメだったのか細かくフィードバックがあり、落ちたあとも人事の人から電話をもらって今後の就活がんばってねと応援のメッセージをもらったのがあり、ちゃんと面接後の対応も非常に良かったなと感じました。
まだ立ち上げたてでオフィス移転もするようでバタバタしているらしいのですが、そんな中で丁寧に対応してもらえて非常に印象が良かったです。

ぼくが受けて良かった企業はこんな感じです。
どちらかというとぼくは面接での会社の対応とかをかなり見ているのですが、GoogleとTRI-ADはかなり良かったなという印象があります。
逆に印象がよくなかった会社なのですが、まあこれに関してはコンプライアンス的にかなりマズイ(やったらソフトバンクの内定が消し飛びそう)ので割愛です。

ただ、エンジニアの採用にコーディング試験をやらずにSPIをやらせる会社とか何考えてるんですかねって思ったりとかしました(笑)
他にも、就活イベントで一度挨拶しただけで勝手にエントリーしてることにしたり勝手に自社のメルマガに登録するとか勘弁してくれって感じですね....
あと、ぼくは地方学生なので東京に呼びつけるなら交通費くらい出せよって思ったり.....

まあ就活やってると会社の性質が見えてきて楽しかったですかね(笑)

今後就活をする学生へ

ぼくは就活をしていていろんなことをかなり大々的にやったので(アピールとか諸々)、あんまりぼくはロールモデルとして参考にならないかもしれないです。
ただ、途中で述べた通り、就活とは究極的には企業と学生のマッチングです。
その上で面接や説明会、ツイッターなどのSNSなど様々なものを通じて自分に合いそうな会社を見極めて欲しいと思います。

さて、ぼくはエンジニアとして就活したわけですが、エンジニア志望であるならば普段からゴリゴリコードを書いてプロダクトを生産しておきましょう。
また、それら作り上げたものについてはQiitaや自分のブログ、なんなら書籍などの形でまとめ上げることが大切だと思います。
普段のそうした創発的な活動というのは自分だけで完結させるには勿体無さすぎるもので、どんどん他人とシェアしていって欲しいです。
そうした対外的なアピールというのはゆくゆくは思わぬ形で評価されるかもしれません。
実際、ぼく自身スイスに留学するために執筆した強化学習の本が就活に活きるとは思っていませんでした。
エンジニアとしてゴリゴリアウトプットを生産してアピールしていきましょう。

あと、学生のうちになるべく面白い機会にチャレンジしていきましょう。
基本的にはやったもん勝ちで、周りになんと言われようとも面白そうな機会があったらチャレンジしていくといいと思います。
例えば企業との共同研究やハッカソン、アルバイトやインターン、セキュキャン、留学など、なんでもいいのでチャレンジしていって欲しいと思います。

まとめ

以上、なんかめっちゃ長くなってしまいました(7300文字オーバー)

とにかく、ツイッターで色々騒いでいた人間の就活がこんな感じで終わったという話です。

これが誰かに活きたらいいなぁ....って感じですね〜

あ、このnote読んで良かったら就活お疲れ的な感じで投げ銭してくれると嬉しいです!

では、読んでいただきありがとうございました!

皆さまのご健闘をお祈りします!