システムエンジニアは主にアプリケーションを担当するアプリケーションエンジニアとインフラを担当するインフラエンジニアに分かれます。
またインフラエンジニアは担当領域によってサーバエンジニア、ネットワークエンジニア、データベースエンジニア、セキュリティエンジニアに大別できます。インフラエンジニアと言っても業務領域は幅広く、キャリアアップをしていくためには特定領域で専門性を身につけていく必要があります。今回はサーバエンジニアの仕事と市場で求められるスキルについて紹介していきます。また当たり前のように利用されるクラウドについても触れていきたいと思います。
サーバエンジニアの仕事は特定のアプリケーションやパッケージソフトウェアが稼動するサーバを選定し、環境を構築することです。また稼動後のサーバの管理やメンテナンスも担当します。
まずは要件定義・設計フェーズでアプリケーションやパッケージに必要なOSやミドルウェアの選定、サーバ性能の検討などの設計を行います。冗長化構成などが必要な場合もこのタイミングで検討します。クライアント向けシステムであれば、ここで見積書の作成なども行います。
ファイルサーバやディレクトリ・サービスの場合にはアプリケーション担当者が不在でサーバエンジニアのみでプロジェクトを遂行する場合もあります。
環境構築では各種OSやミドルウェアの知識を駆使しながら、環境を作ります。また一部スクリプトの作成なども行います。
サービスイン後はログの管理やレポートの作成、トラブル対応などが発生します。
求められるスキル:製品知識・経験
サーバエンジニアが取り扱う製品は多岐に渡ります。浅く広く、深く狭くどちらのタイプのエンジニアにも活躍の場があります。Linux、Windows Serverの知識・経験、ApacheやIISなどのミドルウェアの知識・経験、基本的なネットワークの知識が必要です。
特にポイントとなるのは各種サーバOSやミドルウェアの設定の実作業(コマンドラインの使用やhttpd.confの書き換えなど)ができることです。Windows系の場合にはサーバエンジニアがActive Directoryの管理等を任される場合もありますので、OSが提供するサーバ機能は押さえておくと良いですね。
また各種ベンダー資格を取得していれば客観的に知識を証明できるため効果的です。
求められるスキル:シェルプログラミング
各種作業で利用するシェルスクリプトを作成(シェルプログラミング)できると良いでしょう。またWindowsであればPowerShellが主流ですが、Linux系の場合PerlやPythonなど使えるスクリプト言語も自由度が高いため、複数の言語が使えるとより良いでしょう。特に前任者が作ったスクリプトを保守する場合に力を発揮します。
求められるスキル:クラウド利用経験
昨今、オンプレミスではなく、パブリッククラウドで環境構築することも一般的になってきました。考え方、用語、技術にはこれまでの知識・経験が生かせる面と新規で習得が必要な面があります。サーバOSはOSさえ起動してしまえば、あまり差はありませんが、ネットワークには差があります。また冗長化やスケールアウトは行いやすい反面、そのための構築テクニックがあります。
ポイントの一つ目としてはクラウドが提供するほとんどの機能はコマンドラインインターフェースやAPIから操作可能であるため、それらの知識を身につける必要があります。コマンドラインを使えば仮想サーバの起動やネットワークの設定変更等が容易に行えます。
ポイントの二つ目としてクラウドの特性を活用する為に環境構築を自動化するケースが多いため、自動化ツール(ChefやCloudFormationなど)について経験を積むと良いでしょう。
もしクラウドの実務経験がない場合には無料利用枠を活用してクラウドを触ってみると良いでしょう。
以上、サーバエンジニアについてご紹介しました。最後にインフラエンジニアを積極採用中の求人企業をご紹介します。興味がある企業は、コネクテッドの採用情報をご確認ください。
インフラエンジニアを積極採用中の求人企業
ランサーズ株式会社
日本最大のクラウドソーシングサービス「ランサーズ」のシステムインフラを担当するエンジニアを募集中!
株式会社アクトビラ
ビデオオンデマンドサービス「acTVila(アクトビラ)」を担当するサーバエンジニアを募集しています。
株式会社Blue Star
上流工程にこだわるシステム会社でサーバエンジニアを募集中。残業は月平均10時間以内、年間休日120日以上で長く働ける環境です。
株式会社アルテニカ
充実の研修制度に強みを持つネットワーク・インフラ専門会社でインフラエンジニア募集中。研修や資格手当などスキルアップをバックアップ。