2020年を振り返る
Life
本記事はの 2020 年の振り返りと 2021 年の目標に関する記事です。
コロナで外出は自粛されました。しかし、よく考えると、
- 開発も
- インターンも
- 授業も
- 就活も
全て、インターネットのおかげで家にいながらできてしまいます。そのため、やったことの内容は昨年とそれほど変わっていないなぁというのが、素直な感想です。
むしろ、エンジニアとしても、大学生としても、今年は例年以上に色々なことができたような気がしました。
1. 2020 年にやったこと
1.1 勉強系・大学での活動
勉強系でやったこととしては、
- コーセラの ML コースを受講
- 研究
の、2 つです。
一つ目の ML コースというのは言わずと知れたスタンフォード大学の機械学習コースのこと。
「機械学習マスターになりたい」「修了証を持っておくと何かに使えるらしい」という 2 つの理由から、受講しました。しかし、このコースの内容はあくまで機械学習の入門レベルなので、特段役に立っている感じはしません。(ただ、とてもわかりやすいのと、「課題を解く」という負荷もあるため、初学者には非常におすすめです。全編英語が辛い。)
二つ目の研究について。研究室の所属は来年からなのですが、早稲田大学の情報学科が提供する「プロジェクト研究」という授業を前期・後期と両方履修し、合計 3 つの研究室を回りました。それぞれの研究室で
- 量子アニーリング
- 知覚反応を利用したレコメンドシステム
- ブロックチェーン(現在進行中)
に関する研究を行いました。機械学習は、世の中的にも流行っており、学習リソースが大学以外にもたくさんあります。そのため、知見を広げようと、あえて機械学習以外のことを意識的にやることにしました。
どれも非常に面白かったです。また、Web エンジニアとして、手を動かし、何かを作る経験をしていることは研究にも役立つのだなぁと思いました。
1.2 個人開発
次に個人で開発したものについてです。Web 開発のインターン自体は去年からやっていたのですが、「一人でアプリケーションを作る」という作業を今年初めてやり切ることができました。
今年個人で開発したのは
- 学習アプリ(www.effectivest.com)
- ポートフォリオ(http://portfolio-64d50.web.app/)
の 2 つです。
1 つ目の学習アプリについて。リリースしたのは今年の 5 月 17 日だったと思います。昨年、TOEIC の勉強をしており、「自分好みの学習アプリが欲しい」「そろそろ一人でアプリを作ってみたい」と思ったため、作成しました。
技術スタックは
- インフラ… GCP(GCE)
- バックエンド… Express(Node.js),docker-compose
- フロントエンド… React(SPA,JS)
という感じです。
リリースまで、かなり紆余曲折しましたが、完成し、PC からデプロイしたものをスマホからアクセスした時、とても嬉しかったのを覚えています。
悲しいことに誰からも使われていませんが、このアプリを作った経験は結果として、
- 知識
- 自信
の両方の面でとても役立っているように感じています。
2 つ目のポートフォリオについては、こちらの記事を。
こちらについては、2021 年中に改良しようと思っています。(note のブログも掲載予定)
1.3 就活
そして、就活です。3 年に進級した時点では、機械学習がやりたかったので、大学院に進学することを前提にしていました。しかし、以下の理由から就活することにしました。
- 「理系=院進」みたいな考え方は危険だと思っていた。
- エンジニアとして自分がどのくらいの実力があるのかを知る。
- 大手 IT 企業のインターンに参加してみたい。
- いい会社があれば、学部卒で入社したい。
「夏インターンの選考を受け始めた」という意味では、今年の四月にダメ元で Google のインターンに応募したので、就活自体は四月から始めました(案の定、爆死)。
その後も、
- 「サポーターズ」等就活支援サイトのイベントに参加する
- IT 企業のインターンに参加する
- 第一線で働くエンジニアとの面談
等を行い、エンジニアとしての就活を進めていきました。
そして、就活の結果について。
結論から言うと、やはり大学院に進学することにしました。
一時期は以下の理由から、学部で就職することを本気で考えました。
- Web エンジニアになりたいのであれば、大学院でやることはそれほど役に立たない
- 2 年間インターンとしてではなく、本業のエンジニアとして、開発をした方が「Web 開発者としてのスキルレベル」は間違いなく向上する。
- 就活を通して「こんな会社で働きたいな」と素直に思える会社といくつか出会った。(個人的に企業は「人」「技術」「ビジョン」が大事だと思っている。)
ですが、進学します。Web エンジニアとして「手を動かし、ものを作る」という行為が好きというのは間違いありません。
しかし、
- Web だけではなく、「これぞ最新技術!」みたいなことをまだやりたい。
- 具体的な Web 技術だけでなく、基礎レイヤー(OS,言語処理系,アルゴリズム,データベース理論…etc)
- 情報工学の修士が欲しい。
- 企業に勤めるソフトウェアエンジニアになるのは大学院を出てからでも遅くないということが、今年就活をしてみてわかった。
という理由から、院に進学する予定です。お話をしてくださった人事の方、エンジニアの方、本当にすみません。
1.4 短期インターン・ハッカソン
今年は、合計 4 つの短期インターン・ハッカソンに参加しました。
- リクルートのフロントエンドパフォーマンスチューニング
- インターン・サイバーエージェントのフロントエンド開発型インターン
- メドレーのディスカッションインターン
- Voyage Group の Sunrise
ブログを書くようになったのが今年の 6 月からなので、それ以降に開催されたものについてはまとめも書いています。
1.5 長期インターン
そして、今年の 7 月からスタートアップの開発にインターンとしてジョインしました。
今年の下半期における開発という意味では、このインターンでの開発が一番比重が大きいです。
スタートアップで開発メンバーが少ない(2 ~ 3 人)ということもあり、以下のように様々な技術に触れることができました。
- Gatsby
- React
- Typescript
- Serverless Framework
- AWS …
そこで学んだこと・経験したことについては、それもまたブログにまとめています。
「自分で作ったプロダクト・機能が誰かの手に渡る」というある意味 、僕が一番やりたかったことができたのは非常に嬉しかったです。
1.6 趣味
・ランニング
2 月頃、初めてフルマラソンに出ました。5h 以上かかりましたが、無事完走。他のマラソンにも参加したかったのですが、コロナによる自粛でほとんど開催されず。
次に今年読んだ本とみた映画です。
特に面白かったものだけ、ざっと書いていきます。
・小説
・小説以外
・技術書
・映画
・「生き物の記録」・「シンドラーのリスト」・「天使のくれた時間」・「スタンドバイミードラえもん 2」
などなど。
2. 後悔
一年を通してできたこともたくさんありますが、やりたかったけどやれなかったことも 2 つほどあります。
2.1 大手企業の就業型インターンに参加できなかった。
大手企業の就業型インターンに参加できなかったことがまず一点目の後悔です。
- 大企業で働く
- 大規模なプロダクトに触れる
夏・冬の就業型のインターンを通してこれら経験したかったのですが、結局できませんでした。夏の就業型インターンに参加できなかったのは、
- 応募した数が少なかった
- 応募時の技術レベルが低かった
- 技術スタックがマッチしなかった
- 面接苦手
と、「そりゃ受からんわ」と突っ込みたくなるような理由が原因だと思います。
ちなみ就業型インターンに応募した企業と選考結果は以下の通りです。
・夏インターン
- リクルート:一次面接落ち
- ビズリーチ: 二次面接落ち
- Flywheel:書類落ち
- ソフトバンク:合格したが、辞退
・冬インターン
- リクルート: 技術力的には問題なかったみたいだが「矢田さんに合う案件をご用意することができませんでした」と、人事の方から電話がくる。
という感じです。
2.2 コーディング面接・アルゴリズムの勉強を怠ったこと
二点目の後悔は、コーディング面接とアルゴリズムの勉強を怠ったことです。 エンジニアとしての就活を成功させたいのであれば、コーディング試験対策はほぼ必須。そのことは就活を始める前から知っていました。
夏休みに以下のサイトを参考にしながら、勉強。
その結果
「ABC の C が解けない」→「ABC の A・B・C を 30 分で安定的に解ける」
ぐらいにはなりました。
しかし、レートは相変わらず灰色。このままでは、
・コーディング試験を突破するにも・エンジニアとしても
実力として不十分だと思うので、ここについても「もっとできたのでは」という後悔があります。
3. 一年を通して学んだこと
そして、総括として「一年を通して学んだこと」についてです。
一番優先度の高いことを決めておくことの重要性
2020 年の特に 4 月 ~ 7 月くらいにかけてなのですが、
「授業も、研究も、長期インターンも、就活も、個人開発も、趣味も」
と色々欲張った結果、全部中途半端になってしまった、そんな時期がありました。「二兎追うものは…」ではありませんが、優先順位を決めずに、あまりにも多くのことを同時に取り組んでしまうと、
一つ一つにかけられる時間が必然的に短くなる・頭のスイッチの切り替えに時間がかかる
という理由から結局全てに対して効率が下がります。
一方で「これだけは死守する!」ということを一つに決めたら、それに対しては自信のあるアウトプットを出すことができました。同時並行で何かに取り組むにしても、自分と周囲の環境を考慮した上で何に重点的に取り組むべきかを決めておくこと。要するに、「優先順位を決める」という至極当たり前のことの重要性を実感した、ということです
一歩踏み出して、外の世界を見ることの重要性
2020 年は 2019 年以上に、就活や企業のイベント、長期インターンを通して、いろいろな技術や人に出会うことができました。
外の世界に出ることは以下の点でメリットがあると思います。
- 新しい技術や考え方、優秀な同期・先輩と出会うことができる
- 自分のスキルレベルを客観的に知ることができる。
- 就活や技術的な面での情報収集
参加までにかかるコストが「エントリーシートや面接」だけであることを考えると、ある意味コスパは最強です。
以上のことより、インターンだけでなく、「興味があって、手を挙げさえすれば参加できるもの」についてはガンガン参加する、いわゆる「行動力」は重要だなと思いました。
4. 来年の目標
さて、長くなりましたが、以上のことを踏まえて来年やりたいこと・目標を書いていきたいと思います。単純な箇条書きにしても良いのですが、個人的に「目標」というのは
- 単発的なもの
- 継続的・長期の意識的努力が必要なもの
- 習慣的なもの
の 3 つに分けられると思っています。だから、それぞれについて 2021 年の目標を書いていきます。
継続的・長期の意識的努力が必要なもの
- コーディング試験対策をやる・アルゴリズムの問題。 :AtCoder 灰色ですが、水色くらいになりたい。
- 院進に向けた準備 英語・応用情報レベルの知識。
- 研究 : 結局機械学習・自然言語処理をやるような…。
- インターン先で新しいプロダクトを作るらしいのでそれをやる 。 Golang _ Next.js で to C のサービスを作りそうな雰囲気。
- 個人で作りたいプロダクトがあるのでそれをリリースする。
単発的なもの
- 就業型インターンへの応募
- マラソンに 5 回出る(1 月,3 月,6 月,9 月,12 月)
習慣的なもの
- 意識的な情報収集
- フロントエンドの OSS を覗いて、コミットする
- それに関する技術記事という形でのアウトプットをする。
- 短めの記事をたくさん書く。
- 映画を週に 1~2 本は見る(70 本くらい見たい)
- 本は本屋で興味を持ったものを買う
- 技術書も同様
- 早寝早起き
- 毎日勉強する
- 寝る前とお風呂上がりの前のストレッチの習慣を復活させる
- 「何事も全力!」が理想だけど、体と頭がもたないので、ペース配分を意識する。
と、まぁ色々書きましたが、
「面白そう!」とその時、素直に思ったことを優先的にやっていくべきだと思います。
・無理のない範囲で生活に馴染ませたこと・やらざるを得ない環境に身を置くことで始めたこと・好奇心ドリブンで始めたこと
これらが結局一番、継続できるので。
2020 年は何かと大変な一年でしたが、
2021 年、良い一年になりますように。。。