プログラミングの世界は日々進化し続けています。
技術の進歩は目まぐるしく、常に学び続ける姿勢が求められるこの業界で、学生時代に基礎を築くことは重要です。
今回は24卒のエンジニアとして、私自身の経験と多くの先輩エンジニアたちの助言を基に、今こそ伝えたい学生時代にやっておくといいことをまとめました。
1つのプログラミング言語を徹底的に極める
やや意見が分かれることですが、
「多少の言語に触れるよりも、1つの言語を深く理解することが大切」
というのは、多くのベテランエンジニアも口をそろえて言う言葉です。
プログラミング言語はこの世にいくつもありますが、本当に業務で使われているプログラミング言語となると数個~数十個と絞られます。
勿論たくさんの言語を扱えることは素晴らしいスキルの一つです。
しかし、学生時代の内は何か1つの言語を極めることを私はおすすめします。
それは、1つのプログラミング言語にこだわることで、プログラミングの本質について考えることができるからです。
この本質さえ身に付けられれば、後から扱う言語などいくらでも増やすことができます。
以下のポイントにこだわるといいでしょう。
- 言葉の基本的な型システム
- オブジェクト指向プログラミング言語の概念
- 言語特注のデザインパターン
- 効率的なコーディング技術
- エラーハンドリングの方法
コンピュータサイエンスの基礎を学ぶ
プログラミング言語は道具であり、その背景にある「コンピュータサイエンス」の知識こそが、真のエンジニアを作ります。
コンピュータサイエンスを疎かにして、高スキルエンジニアになることはほぼ不可能です。
以下の分野を重点的に学ぶといいでしょう。
- アルゴリズムとデータ構造
- コンピュータアーキテクチャ
- オペレーティングシステム
- ネットワークの基礎
- データベース理論
これらの知識は、単なるコーディングスキルを超えて、システム全体を俯瞰できる能力を身に付けることができます。
コンピュータサイエンスの勉強は、基本・応用情報技術者試験の勉強で十分身に付けることができる!
この資格は就活でも有利になるので、余裕がある人は取っとくといいよ!
読書習慣を身に付ける
技術書を読むことは、最新の技術トレンドやベストプラクティスを学ぶ最良の方法です。
以下のジャンルを積極的に読むといいです。
- プログラミング言語に関する専門書
- システム設計に関する書籍
- ソフトウェアエンジニアリングの実践的なガイド
- テクノロジーの最新トレンドに関する書籍
勿論自分の好きなジャンルを読むことが一番です。
最も伝えたいのは、スキマ時間や通勤時間に本読む癖をつけてほしいということです。
この習慣があれば、社会人になっても継続的に学習する癖をつけられます。
1日15~30分でも積極的に読書することで、驚くほど知識は蓄積されます。
これは個人的な意見なんだけど、なるべく横文字の本を読むことをお勧めするよ!
技術書は横書きの本が多いんだけど、小説などの縦書きに慣れてしまうと、技術書を読むペースが遅く感じてしまうんだ。
だから訓練もかねて横書きの本もバランスよく読むといいよ!!
就活活動は妥協しない
エンジニアの仕事は単なる給料を得る手段ではなく、自己成長と技術への情熱を追求する場所です。
就職活動を妥協してしまうと、自分と合わない企業や職場の雰囲気があまりよくない企業に入ってしまう結果になります。
以下の点に注意して進めましょう。
- 企業の技術スタックや開発文化を徹底的に調査する
- 自分のキャリアビジョンと企業の方向性が合致しているか確認する
- 面接時に技術的な質問を積極的にする
- 企業の成長可能性と学習環境を重視する
お猿SEが就活時に注目していたポイント
- エンジニアとして最初の土台を築けるか
- 既存技術も最新技術もバランスよく使えているか
- コードレビューする文化があるか
- 企業自身が成長しようと高い志を持っているか
- 技術責任者の出身企業
もし、入社後に企業文化や仕事内容に不満を感じたら、潔く転職を検討することも重要です。
私がおすすめする就職エージェントはこちら。
多様な交友関係を築く
エンジニアリングの世界は、人とのつながりも重要です。
社会人になったら、その環境に合った仕事仲間が集まりますが、交友関係を築ける人はそこまで多くないでしょう。
だからこそ、大学時代の内に一生の友人と呼べるような人脈を築いておくこともお勧めします。
大学内以外では以下の方法がおすすめです。
- プログラミングコミュニティやハッカソンへの参加
- オンラインフォーラムやSNSでの技術交流
- 大学のIT関連サークルやイベントの参加
- インターンシップを通じたネットワーキング
長期的な趣味や経験に投資する
これまでの項目はエンジニア目線でそれにかかわることについて伝えてきました。
しかし、一番伝えたい項目はこれかもしれません。
エンジニアとして成長することも勿論大事ですが、それと同時に人間としての成長も大切です。
人間として成長するには、毎日同じ時間を過ごしたり、刺激的なことがないと難しいです。
従って、以下の活動に時間を投資してみてほしいです。
- 旅行による非日常の体験・異文化理解
- 音楽、スポーツ、芸術などの趣味
- ボランティア活動
- 個人プロジェクトの開発
社会人になるとまとまった時間を取ることが難しくなります。
しかし、大学時代には時間はたっぷりと残されています。
是非色んな体験をしてほしいです。
また、これらの経験は創造性、問題解決能力、そして人間性を豊かにしてくれます。
最後に
エンジニアとしてのキャリアはマラソンであり、スプリットではありません。
焦らずに、着実に、そして情熱をもって学び続けることが最も重要です。
今回紹介した項目を参考に、エンジニアとしての第一歩を大きく輝かしいものにしてみてください。