エンジニアになる前に学んでおけば良かったこと5選!!
ここでいうエンジニアはWebアプリケーション開発におけるエンジニアを指しています。
エンジニアとしてキャリアを積む中で、もし過去に戻れるなら学んでおきたかったことがいくつかあります。これからエンジニアを目指す方々や、キャリアをスタートしたばかりの方々に参考になればと思い、この記事を書きました。
1. CSの知識や基本情報、応用情報
CSの基礎知識
コンピュータサイエンス(CS)の基礎知識は、エンジニアとしての土台を築くために非常に重要です。アルゴリズムとデータ構造、オペレーティングシステム、ネットワークなどの基本概念を理解することで、問題解決能力が向上します。これらの知識は日々の開発業務でも役立ちます。
スポーツでもそうですが基礎・土台がしっかりしているとその後の伸び代にもつながって来ると思います。
基本情報技術者試験・応用情報技術者試験
これらの資格試験は、日本におけるITの基本的な知識を網羅しています。基本情報技術者試験は、IT業界のエントリーレベルの知識をカバーし、応用情報技術者試験は、さらに高度な内容を扱います。これらの試験の勉強を通じて、システム開発の基本的な考え方やプロジェクト管理、セキュリティなどの重要な知識を身につけることができます。
特に私は情報系の学習を高校や大学で行なっていなかったので、汎用的に理解するっていう観点でよかったです。
資格取得はしなくても良いですが、一通り書籍を眺めてどのような内容が記載されているのか確認するのでもいいと思います。
2. AWSやクラウドの知見
クラウドコンピューティングは現代のITインフラの中心です。AWS(Amazon Web Services)はその代表格であり、AWSの基本的なサービス(EC2、S3、RDSなど)についての知識を持っておくことは非常に有益です。クラウドの利用方法やコスト管理、セキュリティのベストプラクティスを理解することで、インフラ構築や運用がスムーズになります。
かなりクラウドサービスが活用されているので、実際に現場に入る前に汎用的な理解や実際にサービスを触れているといいなと思います。
3. サービス作成、運用
サービスの作成
実際に自分でサービスを作成する経験は非常に価値があります。企画から設計、開発、テスト、デプロイまでの一連の流れを経験することで、プロジェクト全体を見渡す力が養われます。また、ユーザーのフィードバックを受けて改善を繰り返すことで、実践的なスキルが身につきます。
サービスの運用
運用フェーズでは、サービスを安定して提供するための様々な技術や知識が必要になります。モニタリング、ロギング、アラート設定、スケーラビリティの確保、バックアップなど、運用に関するスキルは長期的なサービス提供には欠かせません。
一通り開発から運用まで一貫するっていう経験があるといいなと思います。
4. インターン
インターンシップは、実際の現場での経験を積む絶好の機会です。企業の文化を学び、現場のエンジニアから直接指導を受けることができます。また、インターンを通じて業界のネットワークを築くことができ、将来の就職活動に役立つことも多いです。
私はIT系のインターンをしたことがないですが、周りのエンジニアが推しているのもあり、私がもし戻ったら確実にインターンの参加を行います。
5. アウトプット
qiitaやGithubなどアウトプットとして、何かあるといいと思います。
他者へのアピールもそうですが、自分自身のアウトプットや学習の習慣などを身につけておけると尚いいのかと思います。
まとめ
エンジニアになる前に学んでおけば良かったことは多岐にわたりますが、基礎的な知識や実践的な経験、そしてソフトスキルの向上が重要です。これからエンジニアを目指す方々にとって、この情報が少しでも役に立てば幸いです。これからも常に学び続け、成長していきましょう。