Disaster Recovery and Business Continuity Questions
Planning and executing recovery from large-scale outages and disasters. Covers recovery objectives (RTO/RPO), failover and backup strategy, DR runbook automation, and business-continuity planning that keeps critical operations running through major disruptions. The resilience-and-recovery planning discipline for worst-case events.
Design an exercise that tests whether your fallback routes for a critical third-party dependency, like a payment processor or an SMS provider, actually work when that dependency goes down during a simulated failover. What would success look like, and what's your rollback plan if the fallback itself misbehaves?
Sample Answer
Direct answer. Design it as a functional exercise, a partial, real execution of the actual failover rather than just a tabletop discussion, run against a simulated outage of the dependency in a scoped, non-production environment. Success means the fallback route delivered what the business actually needs (transactions completed or safely queued, no duplicates, customers not silently left in the dark) within criteria set before the exercise runs. The rollback plan is a predefined abort trigger that reverts to the primary path and treats anything the fallback processed as needing reconciliation, exactly like a real incident would.
1. Scope and objectives
Name the specific dependency and specific fallback route under test (a secondary SMS provider, or a manual and queued path for payment confirmation), and state the objective in business terms: can the organization keep this function operating, at what level of degradation, for how long, if this specific dependency is unavailable. Choose the exercise type deliberately: a tabletop validates whether people understand the plan; a functional exercise, actually triggering the fallback and running real transactions through it in a controlled setting, validates whether it technically and operationally works. For a fallback route you're specifically trying to prove works under failure, a functional exercise is the right depth; a tabletop alone would only tell you the plan sounds right.
2. Design the scenario
Simulate the outage realistically but under control: route the primary dependency's calls to a fault response (timeouts, errors, or an explicit "unavailable" condition) in a scoped test environment with synthetic transactions and test accounts, never live customer data or real charges. Run more than one failure shape if the plan is meant to handle more than one: a hard outage behaves differently from a slow degradation (rising latency, intermittent errors), and can expose different gaps, particularly around whether the system correctly detects "bad enough to fail over" instead of tolerating it too long. Include volume, not a single transaction: a batch of concurrent test transactions through the fallback route surfaces queuing, ordering, and duplicate-handling behavior that one transaction at a time won't.
3. Define success before running it, not after
Business-facing criteria: every transaction attempted during the exercise either completes successfully via the fallback or ends up in a clearly tracked pending state, with zero duplicates and zero silently lost transactions, confirmed by reconciling the exercise's own transaction log against what the fallback provider and the primary system each show afterward. Operational criteria: the team followed the documented runbook to trigger the fallback rather than an ad hoc workaround, within whatever time target the plan specifies for detecting and switching over. Communication criteria, where the plan calls for customer-facing messaging during a real event of this kind: confirm the message that would have gone out is accurate to the actual state of the exercise's transactions, not a generic template nobody checked against what happened.
4. Rollback plan if the fallback itself misbehaves
Define the abort trigger ahead of time, not improvised mid-exercise: a concrete condition (error rate above a set threshold, a data-integrity check failing, an evidently wrong amount) that stops the exercise and reverts test traffic to the primary path, rather than letting a misbehaving fallback keep running and generating more to clean up. Treat anything the fallback processed before the abort exactly like a real incident: reconcile it, don't discard it, since finding out whether reconciliation actually works is as much the point of the exercise as testing the happy path. Have a named exercise controller with the authority to call the abort, separate from whoever is executing the steps, so the decision to stop isn't made by someone invested in proving the fallback works.
5. Close the loop
Run a hotwash immediately after (a short structured debrief on what worked, what didn't, and why) and log findings the way a real incident's post-event review would, with owners and target dates, so a gap the exercise found gets fixed and is retested at the next exercise rather than only known about.
Worked example
An organization tests its fallback SMS provider for one-time passcode delivery. Objective: if the primary provider is unavailable, can the fallback deliver codes within the plan's 30-second target with no duplicate sends. Design: a functional exercise, with primary-provider calls routed to a fault-injection endpoint returning timeouts for a fixed 20-minute window, run against 50 synthetic test accounts requesting codes continuously through that window, in a test environment with a provider sandbox that never sends real messages to real numbers. Success criteria set beforehand: at least 49 of the 50 attempts (allowing one edge case at the exact failover boundary) each receive exactly one code via the fallback within 30 seconds, and zero receive two.
Result: 50 of 50 delivered exactly once, averaging 22 seconds. But the exercise log shows the system took 40 seconds to detect the simulated outage and switch to the fallback in the first place, which isn't a delivery failure but eats into the 30-second budget for any request arriving in that detection window, and is logged as a finding. Nothing crossed the predefined abort trigger (an error rate above 5%), so the exercise ran to completion without needing rollback; the detection-time finding is written up with an owner and a target date for the next exercise to confirm it's fixed.
Trade-offs & pitfalls. Testing only the happy path, one transaction, no volume, is the most common shortcut, and it's exactly what misses the ordering and duplicate-handling problems that show up under concurrent load. Setting the success bar as "the fallback works at all" instead of "the fallback meets the actual business requirement" lets a technically-functioning fallback pass an exercise while still being unacceptable in a real event. And skipping the predefined abort trigger on the assumption an exercise "shouldn't need it" is how a test turns into a real incident; the rollback plan is itself part of what's being tested, not a formality around it.
Design a communications plan for major incidents that affect availability. Cover who needs updates (executives, customers, engineering, legal), how often, what a status-page update should say, and when you escalate from an engineering update to an executive one. Sketch out what the first sixty minutes of communication would look like for a critical outage.
Sample Answer
Direct answer
I'd build the plan around three things: a stakeholder map that separates internal audiences (engineering, executives, legal) from external ones (customers, partners, press) since they need different content and tone, a RACI matrix (who is Responsible, Accountable, Consulted and Informed) so it's unambiguous who is allowed to say what to whom, and a defined escalation threshold for when a routine engineering update becomes an executive one. The first sixty minutes follow a fixed cadence: detect, declare, and get an initial acknowledgment out fast, even before the cause is known, then update on a regular clock rather than only when there's new information.
Structured elaboration
Stakeholder map: internal vs. external.
| Audience | Content | Tone |
|---|---|---|
| Engineering (internal) | Technical symptoms, current hypothesis, what's being tried, what's needed from them | Direct, technical, fast-moving |
| Executives (internal) | Business impact, decision points that need their authority, reputational or legal exposure | Concise, framed around impact and decisions, not implementation detail |
| Legal and compliance (internal) | Anything with regulatory or contractual exposure, review of external language before it ships | Precise, focused on obligations and risk |
| Customers and partners (external) | What's affected, current status, workaround if any, next update time | Plain language, no internal jargon, no speculation about root cause until confirmed |
| Press (external, if triggered) | A single approved statement, routed only through the designated spokesperson | Careful, legally reviewed, minimal |
RACI for the response.
| Role | RACI |
|---|---|
| Incident Commander | Responsible for coordinating the technical response and deciding when thresholds are crossed |
| Communications Lead | Responsible for drafting and publishing every external update; the single pen holding the message |
| Executive sponsor | Accountable for approving customer-facing language once the escalation threshold is crossed |
| Legal | Consulted before any public statement that touches liability, data exposure, or contractual terms |
| Customer support | Informed, and executes pre-approved response templates for inbound customer questions |
Escalation thresholds, engineering to executive. A routine update stays at the engineering level until it crosses a defined line, for example greater than 25% of customers affected, any customer-visible data integrity risk, a duration past 30 minutes with no root cause identified, or any event that spans multiple regions or products at once. Crossing that line triggers the executive sponsor and legal into the loop immediately, not at the next scheduled update.
Cross-timezone coordination for multi-region events. When an incident spans regions, assign a single Communications Lead of record per shift with a documented, timestamped handoff (what's been said publicly, what's pending, what's the next scheduled update time) so a shift change never produces two conflicting messages. All approved language lives in one shared document that both shifts write to, not in separate regional threads.
Status page content. Header with incident ID and affected services, a plain-language impact summary, current status (investigating, identified, mitigating, resolved), a short list of actions taken, and a concrete next-update time rather than a vague "soon."
Escalation flow.
flowchart TD
A[Incident detected] --> B{Meets major-incident threshold?}
B -- No --> C[Engineering tracks it, no exec notify]
B -- Yes --> D[Incident Commander declares major incident]
D --> E[Internal update: scope, IC, ETA]
D --> F[Status page: Investigating]
E --> G{Unresolved at 30 min or revenue-affecting?}
G -- No --> H[Engineering-led updates every 30 min]
G -- Yes --> I[Escalate to executives and legal]
I --> J[Exec liaison approves customer-facing language]
J --> K[Status page and customer comms updated]
H --> L[Resolution and postmortem scheduled]
K --> L
Worked example
First sixty minutes of a critical, multi-region outage at a mid-size payments company:
- Minute 0: Incident Commander declares the major incident based on the on-call alert.
- Minute 5: Communications Lead publishes an initial status page entry: "We're investigating reports of failed transactions. Next update in 15 minutes." No cause is stated yet.
- Minute 15: Internal update to the executive sponsor and legal: current hypothesis, estimated affected percentage, and whether the threshold has been crossed. In this case it has, since more than 25% of customers in two regions are affected.
- Minute 20: Status page updated with the confirmed impact scope, still no cause speculation externally.
- Minute 40: A mitigation is applied; the Communications Lead updates internally and externally with early signs of recovery, careful to say "error rates are declining" rather than "resolved," since a partial rollback can regress.
- Minute 60: If recovery is confirmed, a resolution update is published with a commitment to a postmortem within 72 hours; if not, the next update time is restated and the executive sponsor is briefed on the extended timeline.
Trade-offs and pitfalls
Too frequent updates without new information create alarm fatigue and can look like the team doesn't have control; too infrequent updates erode customer trust faster than the outage itself does. Publishing a root cause before it's confirmed is a common and expensive mistake, since retracting it externally is more damaging than staying vague a little longer. A single point of failure in the plan itself is common: if the Communications Lead is unreachable, there must be a named backup, otherwise the whole cadence stalls. Finally, this is a crisis-communications discipline, not an incident-tooling configuration exercise: the plan should specify who says what to whom and when, not which paging tool routes the alert.
After a full-scale DR drill, you've found several gaps. Design a post-exercise review process: how findings get classified as people, process, or technology gaps, how remediation gets prioritized and assigned an owner and a timeline, and how you'd verify a fix actually closes the gap instead of just getting marked done.
Sample Answer
Direct answer
After a drill I run a structured post-exercise review that classifies every finding as people, process, or technology, scores it for severity, assigns a single named owner and a due date scaled to that severity, and requires an independent verification test before the finding can be closed, not just the owner's word that it's fixed. Individual findings then roll up into a small set of trend metrics that a recurring governance review looks at, so leadership can tell whether the continuity program is actually improving over time rather than just accumulating a backlog of open tickets.
Structured elaboration
Classification. People (training, staffing, or awareness gaps, like nobody being reachable at the right time), process (a missing, wrong, or unclear runbook step), or technology (a system or tooling failure). Many findings are genuinely two categories at once, for example an automated failover script that failed is a technology issue, but nobody catching the error before the drill is a process issue in the review or testing procedure itself; classify the root cause that, if fixed, prevents recurrence, not just the surface symptom.
Severity and ownership. Score each finding by business impact: does it threaten a documented recovery time objective (RTO, the target time to get a function working again) or recovery point objective (RPO, how much recent data the function can afford to lose, measured in time), or does it block declaration authority (who has the standing to formally declare and activate the plan) entirely? Assign one accountable owner per finding, with a sponsor who can escalate if it stalls. Critical findings get the shortest fuse and the most visible tracking.
Verification before closure. The distinction that matters most: "marked done" is not the same as "closed." A finding should only close once there's an independent verification test, ideally at the next scheduled exercise from the tabletop-to-full-scale ladder, confirming the fix actually works, not a self-report from the person who made the change.
Governance cadence and trend metrics. Individual findings feed a recurring review, for example a quarterly continuity steering meeting, that tracks two things at the aggregate level: how quickly findings are actually closing (with verification, not just ticket status), and whether the same root cause is recurring across drills, which indicates the underlying plan or system was never really fixed the first time. This is what turns a series of one-off reviews into evidence the program is maturing, and it's also the artifact regulators and auditors typically want (see the regulatory-obligations answer on this topic for what a compliance program expects to see documented).
Tooling. Track findings in a central, auditable system (a ticketing tool with status, owner, and due date, not a slide deck that gets archived and forgotten), since the whole point of the review is a defensible trail from finding to verified fix.
Worked example
A team ran four quarterly drills and tracked how many days it took to close each Critical finding, from the day it was logged to the day its verification test passed. In Q3, five Critical findings closed with these lead times in days: 12, 18, 21, 25, and 29.
Average close time=512+18+21+25+29=5105=21 daysThat 21-day average, tracked quarter over quarter alongside a second metric (the percentage of findings that recur in a later drill), is what the quarterly steering review actually looks at. A shrinking average close time with a low recurrence rate is real evidence the program is improving; a shrinking close time with a high recurrence rate usually means findings are being marked closed to hit the metric without the underlying gap actually being fixed, which is exactly why the verification-test requirement exists.
Trade-offs and pitfalls
Measuring only closure speed creates a perverse incentive to close findings before they're actually fixed, which is why speed has to be paired with a recurrence-rate metric, not tracked alone. Remediation work reliably stalls when the team is busy with feature delivery unless a named executive sponsor has the standing to protect capacity for it; without that sponsor, "we'll get to it" quietly becomes never. It's also worth being explicit about what this process is not: it's a review of the continuity plan and program itself, not a technical incident post-mortem of a system failure, so the findings and remediation often land on documentation, staffing, and ownership as often as they land on a system fix.
Ransomware has encrypted parts of production, and you're not yet sure whether your backups are clean. Walk through how your continuity plan plays out here: who makes the call to formally declare this a business continuity event, what you communicate to stakeholders while the extent of the damage is still unknown, and how you decide the recovery sequencing (restore vs. rebuild vs. wait for forensics to clear).
Sample Answer
Direct answer
Ransomware forces continuity decisions before anyone has full information, so the plan has to give explicit authority to declare and communicate under uncertainty rather than waiting for forensics to finish. Declaration happens as soon as the trigger conditions are met, not once damage is fully understood; early communication says clearly what's known, what isn't, and when the next update comes, without speculating on cause or scope; and recovery sequencing is decided service by service against the criticality tiers, weighing restore speed against the real risk of reintroducing a still-compromised backup.
Who declares, and when
This follows the same declaration-authority structure as any other event: a named succession with pre-defined trigger conditions. Declaring is a formal, logged governance act, distinct from an engineer opening a SEV1 page: paging on-call gets people looking at the problem, while declaring activates the continuity plan itself, mobilizing the response team, authorizing emergency spend, and starting the plan's communication sequencing. The wrinkle specific to ransomware is that the trigger condition can't require knowing the full scope first, because that knowledge can take days. A workable trigger is "any Tier 1 or Tier 2 service confirmed encrypted or inaccessible due to suspected malicious activity," declared immediately and explicitly scoped as provisional, pending forensic confirmation, rather than held back until certainty arrives.
Communicating under genuine uncertainty
The discipline is separating what's confirmed from what's suspected, and saying so explicitly rather than overstating confidence or going silent until everything is known.
- Internally: which systems are confirmed affected, what's under investigation, and an honest ETA for the next update, not a resolution time nobody can promise.
- Externally and to regulators or legal, where applicable: factual, reviewed statements limited to what's actually known, because a premature claim about scope or root cause can create exposure that outlives the incident itself.
This is a communications-cadence problem before it's a technical one; it uses the same discipline as any crisis communication plan, just under a harder information constraint.
Recovery sequencing: restore, rebuild, or wait
This is a decision made per service, not once for the whole estate, driven by three inputs: the service's criticality tier (how much delay is tolerable), whether a backup for that service can be verified clean before it goes back into production, and whether forensics needs the current state preserved before anything is touched.
- Tier 1 services with a verified-clean backup restore first.
- Anything where backup integrity can't yet be confirmed waits, even if that extends the outage on an important service, because reintroducing compromised data or a re-infection vector turns one event into a second one.
- Rebuilding from a known-good baseline, rather than restoring a possibly-tainted image, is the fallback where clean-backup confidence can't be established in an acceptable window.
This sequencing decision belongs to the same governance structure that owns declaration and tiering, not to whichever team finishes their piece first, because it's a risk trade-off between speed and re-infection, not a technical task order.
Safeguards that need to already exist
None of the sequencing decision above is possible unless backups have integrity that ransomware itself can't reach. In practice that means an offline or logically isolated (air-gapped) copy that an attacker with production access can't also encrypt or delete, immutability or write-once retention on at least one recent backup generation so it can't be silently altered, and a routine of actually testing restores, not just confirming a backup job completed, so "verified clean" is a real, exercised capability during the event rather than a hope. Without these in place beforehand, the restore-versus-rebuild-versus-wait decision collapses to "wait," because there's no way to trust any backup's integrity.
Worked example
A mid-size logistics company detects encrypted files on its warehouse-management and billing systems overnight. The on-call commander declares a provisional continuity event within the hour, under the "confirmed encryption of a Tier 1 service" trigger, without waiting to know if data was exfiltrated. Internal communication at hour one reads: "Warehouse-management and billing confirmed encrypted; scope of other systems still under investigation; next update in 2 hours." Because the backup program maintains an air-gapped nightly copy that predates the infection and its integrity has been tested in prior quarterly exercises, billing (Tier 1, clean backup available) is prioritized for restore first. Warehouse-management's most recent backup can't yet be confirmed clean, so that system is rebuilt from a hardened baseline image instead of restored, extending its outage but avoiding the risk of reintroducing the compromise, a trade-off the commander makes explicitly and logs, rather than leaving it to whichever team is ready first.
Trade-offs and pitfalls
- Waiting for full forensic certainty before declaring or communicating anything feels safer but usually makes things worse: silence gets filled with speculation internally and, if it leaks, externally.
- Restoring quickly from an unverified backup to hit a recovery-time target can cause a second, worse event than the original outage. Speed has to be weighed against verified integrity, not assumed.
- Treating "wait for forensics" as the default for every system ignores the tiering work entirely; some services genuinely can't wait, which is exactly why the criticality tiers exist, to force that trade-off deliberately rather than applying one rule everywhere.
- Backup safeguards, air-gapping, immutability, tested restores, are cheap relative to discovering during a live event that every backup is also encrypted. This is a case where the pre-event investment directly determines whether the sequencing decision has good options at all.
You've just opened a war room for a high-severity disaster recovery event involving network, database, application, and customer-support teams. How do you structure it? Cover the physical or virtual setup, communication channels, what you'd want visible on shared dashboards, and how decisions get documented in real time.
Sample Answer
Direct answer
A continuity command center needs a small decision-making core insulated from a larger information-sharing periphery: one room, physical or virtual, for the people actually making calls; a mirrored read-only stream for everyone who needs situational awareness without adding noise; and a single written record that becomes the account of what happened and why. Getting this wrong, everyone crammed into one unstructured call, turns a recoverable event into a communication failure layered on top of the original disruption.
Physical or virtual setup
- Primary decision room: in person or a video bridge, limited to the commander, function leads, and the scribe.
- Broadcast bridge or channel: a larger listen-only stream for stakeholders who need visibility (support, other business units) without talking over the working group.
- Private channel: reserved for anything sensitive, legal exposure or workforce safety, that shouldn't go into the general information stream.
Communication channels, matched to purpose
| Channel | Purpose |
|---|---|
| Working channel | The decision group's live coordination line |
| Broadcast channel | One-way status pushed to the wider organization at the agreed cadence |
| Escalation channel | A dedicated path to reach executives or backup decision-makers |
Who's in the room
Beyond the technical responders, for anything above a minor severity the room includes a legal representative (contractual and regulatory exposure), a finance representative (cost-of-mitigation trade-offs, insurance notification triggers), and a PR/communications representative (external messaging, media exposure), present from early activation rather than read in after a decision has already been made.
A formal escalation-level structure decides who's paged and required present, rather than leaving it to a judgment call live. For example:
| Level | Meaning | Who's required present |
|---|---|---|
| 1 | Contained, business-as-usual response | Function lead only |
| 2 | Material customer or functional impact | Commander, function leads, comms lead |
| 3 | Enterprise-wide impact | Above, plus legal, finance, PR, and executive sponsor |
What belongs on shared dashboards
The room needs what the business uses to decide, not raw technical telemetry: which business services or functions are impacted and to what degree, estimated time to the next update, current escalation level, open decisions and their owners, and a running list of customer or stakeholder commitments made so far, so nobody promises something twice or contradicts an earlier statement. Deep technical monitoring stays with the technical responders in their own tooling; the war room's shared view is the business-impact layer above it.
Real-time decision documentation
A single scribe, not the commander, not a function lead, maintains one shared, timestamped log for the whole event: each decision, who made it, the reasoning, and what was communicated as a result. This becomes the record for the post-event review and, when legal or regulatory exposure exists, the evidentiary record of due diligence.
Worked example
A regional retailer's order-management platform fails during a holiday sale. The event is declared Level 2, which automatically pages the legal liaison (payment processing is affected) and the finance lead (evaluating emergency vendor spend). The shared dashboard reads "Order Management: severely degraded, roughly 40% of order volume affected, next update in 20 minutes, escalation Level 2," not a stream of raw error-rate graphs, which stay with engineering's own monitoring. The scribe logs the decision to pause promotional email sends at 14:05 with the reasoning ("avoid driving more traffic into a degraded checkout"), so that decision doesn't have to be re-explained in the post-event review.
Trade-offs and pitfalls
- Putting everyone who might need information into the same working channel as the decision-makers drowns the room in cross-talk; the broadcast stream exists specifically to prevent this.
- Bringing legal, finance, or PR in only after a decision is made, rather than having them present from early activation, is the most common failure mode this structure guards against; by the time they're read in, commitments may already be hard to walk back.
- A dashboard full of technical detail feels informative but slows business decision-making by forcing non-technical stakeholders to interpret raw signals. Keep the shared view at the business-impact layer.
- A decision log reconstructed afterward from memory, instead of maintained live, loses the accuracy that makes it useful for both the postmortem and any external accountability.
Unlock Full Question Bank
Get access to all 20 Disaster Recovery and Business Continuity interview questions and detailed answers.
Sign in to ContinueJoin thousands of developers preparing for their dream job.