代表的な面接トピック

プロダクトマネージャー面接:SaaSは設定可能なデータ保持期間を提供すべきか?

プロダクト難しい
Offer.cc 編集チーム公開日 更新日

質問

エンタープライズ顧客はSaaSデータの保持期間を自身で選択することを求めています。設定可能な保持期間を提供すべきかを判断し、安全なデフォルト値、対象範囲、削除動作、例外事項、価格設定、およびローンチ時の検証基準を定義してください。

プロンプトとスコープ

自社のB2B SaaSは、顧客コンテンツ、監査ログ、利用イベント、添付ファイル、バックアップを保存しています。エンタープライズのバイヤーから、各データクラスの利用可能期間を制御する設定が求められています。設定可能な保持期間を提供すべきかどうかを判断し、約束事項、制限、削除動作、リテールホールド、価格設定、および検証方法を定義してください。

これは単一の削除クエリの問題ではなく、プロダクトの意思決定です。欧州データ保護会議(EDPB)は保存制限を利用目的と削除手順に基づいて定義していますが、SaaSの実務ではレプリカ、エクスポート、バックアップ、サポートアクセス、リストア動作を考慮しなければなりません。有益な回答とは、顧客の制御権と、企業が実際に証明できる削除保証とを結びつけるものです。

面接官が見ているポイント

  • プライバシー設定を提案する前に、顧客の課題(ジョブ)を特定しているか。
  • データクラス、利用目的、保持期間、およびライフサイクル終了時のアクションを区別しているか。
  • UI上の設定とシステム横断的な削除契約を区別できているか。
  • リテールホールド、調査、バックアップ、ディザスタリカバリ要件を保護できているか。
  • 誤解を招くコンプライアンスの主張を販売することなく、運用負荷に見合った価格を設定できるか。
  • 測定可能なローンチ判定基準(ローンチゲート)とロールバックパスを定義しているか。

一般的なPM面接のガイダンスでは、優先順位付けをリーチ、インパクト、確信度、工数、リスクのトレードオフとして扱います。データ保持には厳格な境界が存在します。すなわち、削除が完全で、監査可能で、法的・契約的義務と両立する場合にのみ、より短い保持期間が価値を持ちます。

明確化のための質問

  • どの顧客課題が重要か:コンプライアンスの証跡、侵害時の影響範囲縮小、ストレージコスト、またはデータの最小化か? 優先順位によって機能と指標が変わります。
  • どのデータクラスが設定可能か? 顧客コンテンツ、監査ログ、バックアップ、請求レコードに同一のルールを適用することはできません。
  • 約束事項は完全削除、匿名化、アーカイブ、またはプライマリUIからの非表示のどれか? それぞれ異なる証明が必要です。
  • リテールホールド、不正利用調査、チャージバック、ディザスタリカバリに対してどのような例外が存在するか?
  • 誰が設定を変更でき、いつ有効になり、新しい期限をすでに過ぎているデータはどうなるか?

30秒での回答

ライフサイクルを棚卸し、適用し、検証できるデータクラスに限定して設定可能な保持期間を提供します。まずは少数の階層、目的に基づくデフォルト値、安全な最小下限値、影響を受けるデータのプレビュー、明示的なリテールホールドの動作から開始します。契約には、対象となるレプリカ、エクスポート、バックアップ、サポートツールを明記します。少数のエンタープライズテナントでパイロット運用を行い、削除完了率とサポート負荷を測定し、監査証跡が再現可能になるまで全体へのパッケージ化は見送ります。

ステップごとの解決策

ステップ 1: 要望を顧客の課題(ジョブ)に結びつける

セキュリティ、コンプライアンス、管理者に個別にヒアリングします。コンプライアンスチームは削除の証跡を必要とし、セキュリティチームは侵害時の影響範囲を縮小したいと考え、管理者はストレージコストを抑制したい場合があります。課題がコストのみであれば、削除よりもアーカイブの方が適している可能性があります。規制上のデータ最小化が目的の場合、長期のアーカイブは要件を満たさない可能性があります。

ステップ 2: データクラスのマトリクスを構築する

クラスごとに、目的、オーナー、ストレージの場所、保持下限値、ライフサイクル終了時のアクション、および証跡をリストアップします。顧客コンテンツ、生イベント、添付ファイル、監査ログ、バックアップ、請求レコードは分けて管理します。「30日後に削除」という設定は、検索インデックス、レプリカ、エクスポート、スナップショットに何が起こるかを明記するまで不完全です。

ステップ 3: 安全なプロダクト形態を選択する

任意の自由な日付入力ではなく、限定されたメニューから開始します。デフォルト値、承認済みのいくつかの保持期間、選択が文書化された義務と競合する場合の警告を提供します。ドライランによる対象件数と初回削除日を表示します。テナントが監査ログの保持期間をセキュリティベースライン未満に短縮したり、すでに有効な契約を暗黙のうちに変更したりできないようにします。

ステップ 4: 削除と例外を定義する

削除が完全削除(ハードデリート)、暗号学的消去、匿名化、アーカイブのいずれであるかを指定します。キューイング、リトライ、冪等性、完了記録を定義します。リテールホールドでは、対象レコードを凍結し、誰がホールドを適用したかを可視化する必要があります。バックアップには文書化された失効パスが必要です。「データベースから削除された」ことは、すべてのコピーが消去されたことの証明にはなりません。

ステップ 5: 運用負荷の価格を設定する

コントロールプレーンの作業、ストレージクラスの移行、削除ジョブ、監査証跡、サポート、リストアテスト、テナントごとのポリシー評価にかかる負荷を見積もります。顧客価値が明確な場合にのみ、高コストなクラスに対して課金します。法定義務を有料アップセルに変えてしまうような価格設定は避け、ベースラインの保護とプレミアムな柔軟性を分離します。

ステップ 6: 約束事項を観測可能にする

ポリシーバージョン、対象レコード数、削除済みレコード数、ホールドによってブロックされたレコード数、リトライの経過時間、監査によって発見された残留コピーを追跡します。管理者には、次のアクションと証跡ダウンロードを備えたステータス画面を提供します。プロダクト指標には、保存された設定数だけでなく、採用率、削除完了率、ポリシー違反、サポート問い合わせ、リストア失敗を含める必要があります。

ステップ 7: 停止条件を設けたパイロット運用

まずはポリシーをシャドー実行し、その後、元に戻せる保持期間を用いて小規模なコホートで運用します。削除が再現できない場合、リストアによって期限切れデータが復活した場合、リテールホールドがバイパスされた場合、またはサポートが結果を説明できない場合は停止します。また、顧客がより短い保持期間を選択しながら管理外のコピーをエクスポートし続けている場合も、プロダクトの約束が形骸化するため停止します。

ステップ 8: ローンチ後の変更ガバナンス

ポリシーのスキーマと顧客向け利用規約のバージョン管理を行います。新しいデータクラスの追加や下限値の短縮には、プロダクト、セキュリティ、法務、エンジニアリングの承認を必須とします。ストレージ、ベンダー、バックアップ、アナリティクスに変更があった場合は再テストを実施します。証跡が不完全な場合は、無制限な削除を主張するのではなく、対象範囲を絞り込みます。

模範回答

ライフサイクルがエンドツーエンドでマッピングされている領域に限り、設定可能なデータ保持をサポートします。コンテンツ、ログ、イベント、添付ファイル、バックアップ、請求レコードを分離し、承認された期間と安全な下限値を提供し、影響をプレビュー表示し、リテールホールドを明示化します。約束事項には、対象システム、削除または匿名化のアクション、バックアップの失効、顧客が受け取る証跡を明記します。エンタープライズ管理者とパイロット運用を行い、完了率と残留コピーの監査を測定し、リストア、ホールド、サポートによる説明要件をクリアするまで全体パッケージ化は見送ります。顧客のニーズが最小化ではなくストレージコストである場合は、アーカイブを削除と偽るのではなくアーカイブ機能を提供します。

よくある間違い

  • 1つの保持期間の数値を完全なポリシーとして扱う → コピーやデータクラスによって異なるため、スコープを定めたマトリクスを公開する。
  • 任意の日付入力を認める → 運用と証跡の範囲が無制限になるため、承認済みの期間を提供する。
  • プライマリデータベースからの削除を「完了」と呼ぶ → バックアップやエクスポートが残るため、削除の完全な境界を定義する。
  • リテールホールドを無視する → 調査用レコードが失われるため、対象データを凍結しホールドを監査可能にする。
  • 保存された設定数のみを測定する → 顧客の成果の証明にならないため、完了率、残留コピー、サポート負荷を測定する。
  • 柔軟性をコンプライアンスとして販売する → 顧客が法的保証と誤認するため、プロダクトの動作と法的な助言を明確に分離する。

フォローアップ質問

顧客がすべてのデータに対して1日という保持期間を希望した場合はどうしますか?

まずデータクラスと義務を切り分けます。対象となるコンテンツに対して最も短い承認済み期間を提供し、セキュリティおよび請求に関する下限値を維持した上で、その選択に従えないデータについて説明します。

バックアップからの削除をどのように証明しますか?

バックアップの保持期間と失効を文書化し、ポリシーのバージョンをタグ付けし、サンプリングによるリストアテストを実行して、指定された境界を過ぎた後に期限切れレコードが存在しないか、または暗号学的に読み取り不能であることを検証します。

削除開始後にリテールホールドが設定された場合はどうしますか?

破壊的なステップを実行する直前にホールドチェックを行い、ジョブを冪等にし、競合を記録します。すでに不可逆的に削除されたデータは復元できません。プロダクトはその境界を法務チームおよびサポートチームに明示する必要があります。

保持期間を短くすると料金を安くすべきですか?

実際の運用コストが下がる場合にのみ安くします。ベースラインの保護はサービスの一部として維持し、プレミアム料金はコンプライアンスを有料化していると誤解させない形で、ポリシーの柔軟性、証跡提供、または高コストなデータクラスに対して設定します。

顧客によるエクスポートはどのように扱いますか?

エクスポートは顧客が管理するコピーであることを明記し、可能な限りエクスポートイベントを表示し、SaaS側のコピーを削除しても顧客がダウンロードしたファイルが削除されるわけではないことを明示します。

どのようなローンチ指標が出たら中止しますか?

不整合な残留コピーの発見、ホールドのバイパス、リストアテストの失敗、または契約と矛盾するサポートの説明が発生した場合は中止します。利用率が高くても、検証不可能な約束を正当化することはできません。

どのような場合に代わりにアーカイブを選択しますか?

顧客が消去ではなく、より安価なアクセスや過去の分析を必要としている場合にアーカイブを選択します。そのアクセス権、セキュリティ、最終的な削除動作は、アクティブなデータ保持とは区別して定義します。

公開情報ソース

関連する質問