IT業界へ転職・就職を希望する方向け
コンピュータ業界の仕事 保守・運用・開発について


これから、コンピュータ関係の仕事を目指される方、新しくコンピュータ関連の部門へ移動される方へ、コンピュータ業務について、解説したいと思います。
コンピュータシステムに関する業務は、「保守」、「運用」、「開発」と大きく分けて、3種類あります。
後で記載しますが、3つの業務は基本分業されます。これは各々専門性があり、技術が違うためです。
ただ、小規模のコンピュータシステムの場合は、兼務する場合もあります。
これら、3つの業務の説明を下記に補足します。
保守業務(Maintenance)について

・稼働中のコンピュータシステムのトラブル(バグや障害)が発生した際の復旧や、環境の変化に伴う機能の改善・メンテナンスを行います。
目的
- コンピュータシステムの品質を維持します。
- ユーザーからの要望や法改正などの外的要因への対応を行います。
主な業務
- 業務系システムの障害対応(原因究明・バグ修正)、アップデート
- システムソフトウェア(Windows、Officeツール等)のアップデート
- ハードウェア(コンピュータ機器)故障対応、新規交換、機能追加・改修
- ネットワークの障害対応(原因究明・不具合対応)、
必要なスキル
- ITインフラ・ネットワークの基礎知識
- アプリケーションとプログラミングの知識
- トラブルシューティング能力(障害対応)
- セキュリティ知識
- ドキュメント作成知識
- コミュニケーション力

保守業務は、仕事量が一定しない傾向にあり、比較的バックログを抱えてしまうことがあります。
仕事の難易度は、低いもの高いものがあります。
- レベル1(定型作業・初級)
- マニュアルに沿った定型作業や、監視アラートの確認を行います。ベテランのフォローを受けながら案件をこなすレベルです。
- レベル2(非定型作業・中級)
- 突発的な障害発生時の一次対応やログ調査、マニュアル外の問い合わせ対応を一人称でこなせるレベルです。
- レベル3(運用改善・上級)
- スクリプトを活用した運用の自動化、クライアントとの折衝、工数削減の提案など、案件をリードできるレベルです。
- レベル4(運用設計・最上級)
- サービスの新規立ち上げ時における運用設計や、将来のトラブルを予測する「予防保守」の要件定義などを担当します。

保守業務は、緊急性のある仕事、ルーチンワーク等様々な仕事があり、メリハリをつけて仕事をするのが大事になると思います。
不具合等が少なく安定しているシステムでは、障害対応等の緊急性の仕事が少なく、仕事を計画的に作業ができます。





運用業務(Operation)について

・稼働中のコンピュータシステムを使用するユーザーが安全かつスムーズに利用出来るように管理・監視を行います。
目的
- システムの停止やトラブルを未然に防ぎ、常に安定した稼働状態を維持します。
主な業務:
- 業務系システム、ハードウェアやネットワークの稼働監視
- 定期的なデータバックアップ
- セキュリティ対策
- 定型作業(バッチ処理など)
必要なスキル
- ITインフラ・技術の基礎知識
- 監視・障害対応とセキュリティ
- ドキュメント作成知識
- コミュニケーション力
- 業務改善

運用業務は、通常業務時間外での作業が発生します。実施した作業を行うことにより通常業務へ影響を与えることもあるためです。
ただし、作業ミスが発生した場合には、通常業務への影響もあるため的確・慎重に実施する必要があります。
- レベル1(監視・定型作業 初級)
- マニュアルや手順書に従い、サーバーやネットワークの監視、バックアップの確認などを行います。指示を受けながらの作業が中心です。
- レベル2(非定型・障害対応 中級)
- マニュアルがないイレギュラーな対応や、トラブル発生時の一次対応、問い合わせ対応などを自立して行えるレベルです。
- レベル3(運用改善・自動化 上級)
- スクリプトやツールを用いて手動作業を自動化したり、業務効率化やコスト削減を主導したりするレベルです。
- レベル4(運用設計 最上級)
- 開発側と連携し、将来のシステムに向けた運用要件の定義や、運用フロー全体の設計を行うレベルです。

運用作業は、通常業務時間外でも作業がありますが、シフト勤務等で対応するため、計画的に対応することが可能です。
障害対応等の突発的な作業が発生する場合もありますが、運用稼働時には比較的すくないと思います。

開発業務(Development)について

・利用者の要望や課題をヒアリングし、新しいコンピュータシステムを企画・設計・プログラミング・テストを行います。
目的:
- 業務効率化や新たな価値提供のためのシステムをゼロから(または既存の改修として)作ります。
主な業務:
- 要件定義、基本設計、詳細設計、プログラミング(コーディング)、テスト、本番稼働
必要なスキル:
- ITの基礎知識
- アプリケーションとプログラミングの知識
- システム開発のプロセス(工程)
- プロジェクトマネジメント(管理)
- ビジネス知識
- ヒューマンスキル
- リーダーシップ(周囲を巻き込む力)ネゴシエーション能力(交渉力)コーチング能力(育成・動機付け)

開発業務は、規模が大きくなるとプロジェクトチームを立てて各スキルレベルをもとに役割分担し、開発を行います。
また、不足する要員に関してはパートナーの支援を受けます。
- ジュニアレベル(レベル1〜2)
- 役割: 上位者やリーダーの指示・支援のもとに、プログラミングやテスト業務を担当する段階です。
- 目安: 実務経験0.5年〜1年程度。基本構文を理解し、仕様書通りにコードを書くことができます。
- ミドルレベル(レベル3〜4)
- 役割: 自律的に単独で開発タスクを遂行し、問題が発生しても独力で解決策を導き出せるプロフェッショナルな段階です。
- 目安: 実務経験3年〜5年程度。実装だけでなく、詳細設計やコードのレビューなども行えるようになります。
- シニア・ハイレベル(レベル5以上)
- 役割: チームを牽引したり、システム全体のアーキテクチャ設計、あるいは新しい技術の導入やマネジメントを担う段階です。
- 目安: 実務経験5年〜10年以上。高い技術力とビジネス視点を持って価値を創出することが求められます。

開発規模が大きいプロジェクトを管理するリーダーがプロジェクトマネージャー(PM)ですが、プロジェクトマネジメントの役割を行う場合は、PMBOKが理解できているとよいと思います。
参考資料:プロジェクトマネジメント知識体系ガイド(PMBOKガイド)第7版+プロジェクトマネジメント標準


各業務の関連について

・開発、保守、運用業務は、個別のものではなく、関連しています。
各業務の関連
- コンピュータシステムは、顧客からの要望をもとに開発
- 開発用ドキュメント、保守・運用のためのドキュメントを作成
- 開発したコンピュータシステムの本稼働
- 保守・運用業務が開始
- 本稼働後
- 保守と運用では、コンピュータシステムを維持していくために並行して実施されていきます。
- 開発業務は発生することがあります。これは、稼働後のシステムを改善・拡張を行うことで実施します。
- 二次開発
- 本稼働後に要件が多発した場合や、企画時点から二次開発が予定されている場合

分業パターン
各業務が特質化されているので、中・大規模のシステムでは、分業されています。
会社間での分業、同一会社でも部門での分業もあります。(下記表は例です。いろいろな組み合わせがあります)
| 分業モデル | 役割の割り当て | 主な特徴・メリット |
|---|---|---|
| ① 開発 ✕ 運用・保守 | ベンダーA:開発 ベンダーB:運用・保守 | 開発と運用を完全に分離。ガバナンス(内部統制)の強化や、それぞれの専門性に特化した効率化が可能。 |
| ② 内製 ✕ 外部委託 | 自社:企画・開発 ベンダー:運用・保守 | 自社で要件やコアロジックを管理し、定型的な監視や保守作業を外部に切り出すことでコストを最適化。 |
| ③ 運用・保守 ✕ 開発 | ベンダーA:運用・保守 ベンダーB:開発 | 既存システムの安定稼働を別会社に任せ、新規機能の企画・開発を別のアジャイル型開発会社などに依頼する。 |

システムを、開発した後は、保守・運用が行われ、システムが利用されている間継続されます。
開発は、システムが完了するとプロジェクトは終了しますが、保守・運用は、システムの利用が続く限り必要となり業務期間が長くなります。
各々の仕事の仕方・特徴がありますので、希望する業務を明確にしておくと、仕事を探すときに企業・部門を絞れると思います。
また、利用ユーザーの業務の理解、利用ユーザーとの調整等含めたコミュニケーションが必要になります。



コメント