はじめに
私は普段、受託開発を多く行っております。
ヒアリング・設計から行う開発が基本になりますが、中には**「サーバ保守のみを行って欲しい」**という依頼も少なくありません。
「保守のみの依頼」というのは下記のような内容が含まれております。
- トラブル・障害の対応
- 軽微なシステム修正
- サーバの死活監視・リソース監視
- SSL証明書の更新
- ドメインの更新
- 発注者からの問い合わせ対応
またこういった依頼が来る際、発注者側では以下のどれかに該当するパターンが多いです。
- エンジニアが急に辞めてしまった
- 保守をお願いしていたエンジニアと揉めた(もう連絡を取りたくない)
- サービスを納品されたが保守をする人間が必要になった
- サービスを納品されたが複雑すぎて保守できない
- サービスをもうすぐリリースするのだが保守担当がいない
- サービスのランニングコストが高すぎてすぐにでもコスト削減したい
- サービスの売上がなくなりエンジニアが不要となったが細々と運用だけしたい
だいたいどれかです... 要するにお助けマンでありヒーローなになるチャンスです(笑
ヒアリングの大切さ
さて、ここからが本題になりますが「Webシステムの保守業務」のみを請け負う際、お見積もりを行う必要があります。その上で重要になるのがヒアリングです。メールやチャット等による文字ベースのヒアリングも不可能ではないですが、私としては直接、顔が見れるWebミーティングをお勧めします。なぜかというと
- 発注者さんの「急ぎ度・炎上」指数が把握しやすい
- 弊社(自分)の顔・声を見せる事でどんな人間が対応しているのかを感覚的に捉えてもらいやすい
- 保守業務以外の情報収集が行いやすい
保守業務というのは、発注者さんと長い付き合いになるためこういったある種の人間味を伝えて安心感を与えるというのは重要だと思います。実際に弊社でも、Webミーティングによるヒアリングをしっかり行った方が、その後の見積もりからの成約にも至りやすいという結果がでています。
また、ヒアリングした結果「保守業務を行わない方が良い」という判断になりえる可能性もあるため、できる限り爽やかにさまざまな質問をするように心がけております。
またもちろん後述するお見積もりをするためにもヒアリングはものすごく重要です
お見積もり
見積もりを行う上では以下の質問を毎度行います。エンジニアの方なら当たり前のような情報だとは思いますが、その当たり前な質問が重要なのです。
お見積もり用の質問集
では早速重要な項目から先に列挙していきます。
質問1) サーバはどこにありますか?
サーバはどこにありますでしょうか?「AWS・Xサーバー・さくらインターネット」などですが、どうでしょうか。
一番重要な質問です。レンタルサーバーだった場合は大抵の保守内容が不要になります。
「AWS」で管理されているとぐっと楽になるのですがね、たま〜に聞いたことないサーバ会社とかがでてくるんですよね。
質問2) そのサービスはどうやって構築されていますでしょうか?
そのサービスはどうやって構築されていますでしょうか?。WordPress とかでしょうか?
インターネットは WordPress でできているのかってくらい WordPress 多いですよね。
この質問で発注者さんがどの程度システム面を把握しているのかが分かってきます。
質問3) そのサービスのテスト(開発)環境は存在しますか?
そのサービスのテスト(開発)環境は存在しますでしょうか?。直接本番環境を触る必要がある場合はかなり注意しながら作業する必要があるため、事前に把握しておきたいと思いまして。
テスト環境が存在しないという事ももちろん少なくありません。
質問4) データのバックアップなどはありますでしょうか?
データのバックアップなどはありますでしょうか?。「データベースのデータを週1回バックアップを取得している」など行っていますでしょうか?
バックアップは取っていても、サーバー上にSQLのダンプファイルを生成しているだけのパターンが多いです。注意。
質問5) そのサーバに同居しているサービスは存在しますか?
そのサーバに同居しているサービスは存在しますでしょうか?。他にも動作しているサービスがある場合、作業を行う前に影響するサービスを全て把握しておく必要がありまして、
後から「実は○○のサービスもそこで動いていたんですけど、今なんか見れないです」って言われないように。
質問6) ソースコードはバージョン管理されていますか?
プログラムのファイルは「Git・GitHub」などで管理されていますでしょうか?。もし弊社で管理する場合は Github に登録させていただく可能性があります。
index.html
index.html_20050810
index.html_20190801
index.html_20190810
index.html_20190810_new
index.html_20190810_new_new
質問7) デイリーのユーザ数・アクセス数はどれくらいでしょうか?
デイリーのユーザ数・アクセス数はどれくらいでしょうか?。サーバの負荷状況にも影響しますので事前に把握しておきたいと思います。
アクセス数がけっこう多い場合かつテスト環境がない場合は、作業がシビアになるためできる限りテスト環境を事前に構築することになります。
質問8) サーバにログインしてみてもいいでしょうか?
もし可能であれば現在状況を把握するためにサーバにログインしてみてもいいでしょうか? SSHのログイン情報を後ほど教えてくださいませ。
ログインさえすれば、細かい部分はある程度把握できますね。
質問9) 本番化(デプロイ)する方法はどのような手法でしょうか?
本番化(デプロイ)する方法はどのような手法でしょうか?。 git pull で最新ソースを取得しているなどでしょうか?
デプロイ方法が確立されている場合はかなり心強いです。
質問10) SSL証明書はどこで管理してますでしょうか?
SSL証明書はどこで管理してますでしょうか?。 今は年一回の証明書更新はどなたが行っておりますでしょうか?
SSL証明書の手動更新対応がけっこうシンドイ作業なんですよね。ACM最高。
質問11) その他、現在抱えている問題・困ったポイントなどはありますでしょうか?
その他、現在抱えている問題・困ったポイントなどはありますでしょうか?。エラー修正や機能追加を行いたい箇所などあるようでしたら教えてください。
保守に並行して、機能追加や長い間抱えていたエラー(問題)改修の依頼も時折あります。ヒアリング時に心の扉を開いてあげましょう。
質問12) 逆に弊社側へ何か質問などありますか?
色々と質問させていただきありがとうございました。最後になんですが逆に御社から弊社へ何か質問などありますでしょうか?どんな事でもかまいませんのでぜひ質問してください!正直に答えます(笑)
最後にこの質問で締めです。お疲れ様でした。
最後に
以上になります。各回答によっては分岐しながらもっと細かい質問が必要になってきますが、毎回初手では上記の質問を行っておけば、ある程度の状況把握が行えるかと思います。スムーズにいけば Zoom 無課金の40分以内には終了できるはずです。
ヒアリング後、サーバにログインする瞬間!ワクワクしますよね。(恐さ含む)