はじめに
この記事は DeNA25新卒 Advent Calendar 2024 18日目の記事です。他の方々の記事も是非見てみてください。
この記事では、学生時代に取り組んだことやその振り返りをまとめました。同じような道を歩んでいる方やこれから進路を考える方にとって、何か参考になれば嬉しいです。
概要
この記事では以下の内容についてお話しします。
- 学生時代にやったこと
- やっておけばよかったと感じたこと
- お世話になったもの
やったこと
競技プログラミング
私がプログラミングに本格的に興味を持つようになったきっかけは競技プログラミングです。高校2年生の時にその存在を知り、浪人期間中に本格的に取り組むようになりました。
主に AtCoder のコンテストに参加していました。1時間程度で一区切りがつくことから、大学1、2回生の比較的忙しい時期でも取り組みやすいと思います。また、コンテストへの参加と並行して、過去問を AtCoder Problems を活用して解いていました。色(レート)は大きなモチベーションとなり、目標だった「入水(レーティング1200)」も無事達成しました。
また、大学生競技プログラマー向けの国際大会である ICPC にも参加しました。ただし、ICPCには同じ大学から3人でチームを組み、コーチや監督を見つける必要があります。私は大学のサークルを活用してメンバーを集めました。学生プログラマーにとって一つの目標にすると良いと思います。
(関連サイト)
電子工作
私はCS系ではなく電気工学科に所属していたため、ハードウェアに関する内容に親しみを感じやすい環境にありました。電子工作を本格的に始めるきっかけとなったのが『CPUの創り方』(参考)という本です。
この本では汎用ロジックIC10個を使って4ビットCPUを作る方法が紹介されています。私はこれを基に Autodesk社のEagle を使って回路を設計し、基板図面を作成しました。その後、基板を製作し、はんだ付けまで行いました。手を動かすことで得られる学びはとても大きかったです。
その後は、いくつか基板を作成したり、さらに3Dプリンター用のモデルも作成したりしていました。RaspberryPiであれば簡単な工程で電子工作を体験できるのでおすすめです。(今はM5Stackなども流行りですね)
Webアプリケーション開発など
多趣味な性格から、様々な技術に取り組んできました。最初は LINE Bot の作成から始まり、Webアプリケーションや個人サイトの開発も行いました。
三日坊主の欠点を補うため、進める中でやったことを記録し、同じ作業を繰り返さないよう注意しました。ただやはり、複数の技術に手を出しすぎると時間が足りなくなるため、ある程度テーマを絞るのが良いと思います。
やっておけばよかったこと
ハッカソンへの参加
就職活動のインターンでいくつかハッカソンを経験しましたが、もっと早くから取り組んでいれば良かったと思いました。ハッカソンは他のエンジニアとの交流から新しい学びや刺激を得られる貴重な機会です。また、プロダクトを完成させるまでの見通しを立てられるようになるというのも大きいと感じます。
開発系アルバイト/インターン
サークルや個人開発では得られない 実務経験 を積めます。私は経験しませんでしたが、多くの人からその重要性を聞きました。早いうちに挑戦することをおすすめします。
Kaggle(に限らず)
「いつかやろう」と思いながら結局取り組めなかったものの一つがKaggleです。これはKaggleに限った話ではないですが、在学中は比較的時間に余裕があるため、興味のある分野があればぜひ積極的に挑戦すべきだと思います。学生時代は新しいことに触れるチャンスです。
お世話になったもの
サークルの先輩・OB
「何事にも先達はあらまほしき事なり」私の好きな言葉です。新しいことに挑戦するうえで、一人で手探りに進めていく力も重要ですが、詳しい人に教えを請うことで随分とショートカットができます。
DeNAに入社を決めたきっかけもサークルOBなので、人とのつながりは非常に重要だと感じています。
学割サービス
学生はさまざまな学割を活用できます。以下は私が実際に使って良かったものです。
-
GitHub Education
GitHub Copilotには特にお世話になりました。他にも様々なツールが無料または割引で使えます。 -
Autodesk
電子設計や3Dモデリングなどのソフトが無料で利用可能です。 -
Notion
アップグレードされたプランが使えます。チームでのプロジェクト管理に役立ちました。
この記事が少しでも参考になれば幸いです!