お久しぶりです。運営者のyossy7700です。GWであることに伴って、ブログの投稿が遅くなりました。申し訳ありません。
今回はエンジニアについての記事を作りました。興味がありましたら是非最後まで読んでみてください。
エンジニアって何するの?

エンジニアと一言で言っても様々な仕事内容があります。代表的なのは、
- 運用と保守でシステムを安定させる
- 設計と構築を行い、システムの基盤を作る
- システムの動作検証を行う
これら三つとなります。それぞれ詳しく解説していきます。
運用と保守でシステムを安定させる
我々が使用しているインターネット回線は、データセンターと呼ばれる施設に置かれているサーバーやネットワーク機器を使って動作しているのです。
これらの機器が不安定になったり、エラーが発生すると、特定のWebサイトやネットワークを使用したアプリケーションの挙動がおかしくなります。
そうならないために、システムの安定した運用と、トラブル解決のための保守が必須となるのです。
運用では主にネットワークやサーバーの監視と安定運用のための定型作業を行います。一方保守ではネットワーク機器やサーバー機器にエラーが発生した場合、運用側が保守チームに連絡をし、保守チームがデータセンターにかけつけて、トラブルを解消します。
設計と構築を行い、システムの基盤を作る
システムを導入する場合は、どういったシステムを作るのか、どういった機器構成で構築するのか、クライアントの要望はどのようなものなのか、といった要件定義を行います。
そこから設計書に落とし込み、機材の調達とその機材に投入するパラメーターをより詳細に設計していきます。
これらが完了したら、構築のための手順書の作成と、Config作成(機材に設定するコマンドのこと)を行い、段取りを決めていきます。準備が整ったら、既存のシステムを一時停止(退避とも呼びます。)させ、構築を完了させます。構築が完了したら、既存のシステムを再開、問題なければ運用チームに運用マニュアルを渡し、運用のルールなどを決めていきます。
システムの動作検証を行う
設計・構築から運用までの間に、システムの動作検証も行います。特に、クライアントに既存のシステムがある場合、新しいシステムとの連携がうまく取れないと、そのクライアント環境自体のネットワークが不安定になる可能性があります。
そうならないために、検証環境と呼ばれる、本番とは違う仮想環境でテストを行い、新しいシステムとの整合性の洗い出しを行っていくのです。
エンジニアに求められる事とは

ここまでエンジニアの主な仕事内容について解説していきました。ではその仕事を行う上でエンジニアに求められることは何かを、
- 技術は勿論必要だがコミュニケーション能力も必要
- 幅広い視野と段取りを立てて計画する能力
- 論理的な思考が得意であること
これら三つの観点から解説していきます。
技術は勿論必要だがコミュニケーション能力も必要
エンジニアは、技術があればどうにかなるだろうと思われることもありますが、技術だけではエンジニアとしてやっていけません。
エンジニアは基本的にさまざまなチームに分けられ、さらに別のチームとも連携しなければいけません。高いスピード感も求められるので、技術と高いコミュニケーション能力が必要になります。
論理的な思考が得意であること
システムは一般的に、様々なロジックを元に設計・構築されるのが基本です。なぜかというと、システム自体の仕組みが、論理的な構造で成り立っているからです。
そのため、システムがどのような構成なのかといった「根拠」を上手く把握できるかが重要と言えます。
システムの構築や運用をする際に、エンジニアが根拠を把握せず流されるまま業務を行っていると、ミスをしてしまう可能性が高くなっていまいます。そうならないよう、エンジニアとしてある適度論理的に考え、根拠を把握できる力を身に着ける必要があります。
幅広い視野と段取りを立てて計画する能力
システムの構築には論理的な思考が必要と説明しましたが、広い視野と計画性も求められます。しかもシステムはネットワークだけ、サーバーだけ、なのではなく、サーバーとネットワーク、アプリケーション、すべてが連携して、動作しています。その為、論理的な思考だけでなく、様々な可能性を把握できる広い視野が求められます。
さらにシステムを構築する際には、設計から運用まで数ヵ月かけて行っていくので、段取りを上手く行う能力も必要です。
エンジニアとして働いていくことの注意点

ここまでエンジニアとは、求められることとは、について解説していきました。ここではエンジニアとして働く際に注意するべき点について、
- トラブル対応などで早朝や夜間に出勤することも
- すべての工程でミスが許されない
- 勤務先によっては残業が多いこともある
上記三つが挙げられます。それぞれ詳しく解説していきます。
トラブル対応などで早朝や夜間に出勤することも
エンジニアとして、特に保守業務を中心に働く場合ですが、システムのトラブルにより、運用チームから電話やメールで、真夜中であったり早朝に電話がかかってくることもあります。
その場合、トラブル解決のため、すぐに現場に駆けつけてトラブルを修正しなければなりません。保守業務でなくても、勤務先が小規模の場合、設計や構築を担当している部署でもトラブル解決を行う必要性がでてきます。
勤務先によっては残業が多いこともある
勤務先のプロジェクトによっては、残業が多く、大変なこともあります。例えば大規模なシステムの開発や、新規基盤構築などのプロジェクトに携わると、後になっていくにつれて、プロジェクトの期日がギリギリになり、残業が多くなる傾向があります。
勿論そうでないプロジェクトもありますが、設計や構築メインに業務を行っていきたいと考えている場合は、その点について把握しておくべきと言えるでしょう。
すべての工程でミスが許されない
エンジニアとして働く場合は、ミスはほぼ許されないと言えます。ミスをすると、最悪の場合システムが停止します。また、プログラミングコードでミスに気付かずそのままシステムを運用すると、システムが安定して動作せず、クライアントからクレームが来る可能性が高いです。
そのため、作業のスピード感と、その作業における慎重さも重要と言えます。
エンジニアとして長期的に働いていくには

エンジニアとは、エンジニアについて求められること、その注意点について解説していきました。
ここでは、エンジニアとして長期的に働くための、
- 常にシステムの技術やテクノロジーを学ぶ
- チームワークであることを忘れない
- 慎重さ、柔軟さを心掛ける
これら三つを解説していきます。
常にシステムの技術やテクノロジーを学ぶ
IT業界は常に技術が進んでいます。そのため、エンジニアになれたとしても、業務をただこなしているだけだと、自身のエンジニアとしての市場価値が下がっていきます。
エンジニアとして市場価値が高いと呼ばれる人は、常に新しい技術を身に着ける努力をしている方です。
空いた時間に少しでもいいので、技術書やインターネットで新しい技術を学び、身に着けるよう心がけましょう。
チームワークであることを忘れない
エンジニアは基本的にチームワークです。自分一人だけで仕事をする訳ではないので、情報共有をしっかり行い、チーム内で認識の祖語がないよう心がけましょう。
また、仕事をしている上で気づいた点などは、すぐに現場のリーダーに報告するようにすると良いです。
慎重さ、柔軟さを心掛ける
エンジニアとして長期的に働くうえで心掛けたいのが、慎重さと柔軟さです。先ほどでも記載しましたが、ミスがあると直接的にシステムに不備がでてくるので、エンジニアにはミスが許されません。
その為、慎重であることがとても大事です。また、トラブルを解決するためには、色々な視点で考えられる柔軟さも必要です。
これらを心掛けるだけでも、エンジニアとして重宝される存在になります。
まとめ

エンジニアについて、求められること、注意点、長期的に働くには、について、ここまで解説していきました。
現在はエンジニアに、生成AIの技術も求められる為、以前よりさらに習得すべき技術が増えつつあります。しかし、全ての技術を把握しているエンジニアもそう多くはありません。
エンジニアとして働きたい方、現在エンジニアとして働いている方でも、常に最新の情報を得て、技術を学んでいくのが、エンジニアとして市場価値を高め、生き残れる手段と言えるでしょう。