Cloud Migration Strategy and Execution Questions
Planning and executing a move to the cloud: the migration strategies (rehost, replatform, refactor, repurchase, retire, retain), legacy assessment, dependency mapping, cutover planning, and rollback. Covers phased migration roadmaps, workload modernization, risk management during cutover, and validating success post-migration. The end-to-end migration lifecycle, not steady-state operations.
You are planning a lift-and-shift migration of 1,000 on-premises VMs to a public cloud. Provide a high-level end-to-end migration plan that covers discovery and dependency mapping, wave planning (pilot, bulk waves), migration tools selection, network connectivity and address planning, cutover/validation steps for a single wave, rollback criteria, and an initial timeline estimate.
Sample Answer
Direct answer: For a 1,000-VM lift-and-shift, the end-to-end plan centers on wave-based execution: thorough discovery and dependency mapping upfront, then migrating in waves (starting with a small, low-risk pilot), with per-wave cutover/validation and an explicit rollback criterion, rather than attempting the full 1,000 VMs as one event.
Structured elaboration. Discovery and dependency mapping: given the scale, this needs to be largely automated (agentless network-flow discovery across all 1,000 VMs, since agent-based discovery at this scale is a heavier lift), producing a dependency graph that drives wave grouping. Wave planning (pilot, bulk waves): pilot wave of a small number of well-understood, low-risk VMs (proving the tooling and runbook), followed by progressively larger bulk waves grouped by dependency cluster, moving the most self-contained VMs (few discovered dependencies) earliest and the most interconnected VMs later once the process is proven. Migration tools selection: at 1,000-VM scale, a purpose-built migration tool (offering automated image conversion, replication, and orchestration across many VMs in parallel) is worth the investment over a manual per-VM process, which wouldn't scale operationally. Network connectivity and address planning: plan the target network's IP addressing and connectivity (VPN/Direct Connect-class link for the migration period) before the first wave, since retrofitting network design mid-migration is disruptive; decide whether migrated VMs keep their original IPs (simpler application compatibility, harder network planning) or get re-addressed (cleaner target network design, requires updating any hardcoded IP references, which discovery should have surfaced). Cutover/validation for a single wave: for each wave, a defined cutover window (replicate VM images/data to the target, cut traffic/DNS over, validate application health), with smoke tests specific to that wave's VMs. Rollback criteria: defined per wave before it starts (e.g., "if more than X% of the wave's VMs fail post-cutover health checks, roll the wave back"), since a rollback criterion that's decided in the moment, under a 1,000-VM-scale program's time pressure, tends to be inconsistently applied. Initial timeline estimate: a realistic pace is a function of wave size and validation rigor, not a fixed "VMs per day" number; a reasonable planning assumption is that later, larger waves move faster per VM than the pilot (since the runbook and tooling are proven), but the FIRST few waves should be planned conservatively.
Worked example. Pilot wave: 10-20 well-understood, low-dependency VMs, migrated and validated over roughly a week including a full validation and bake cycle. Subsequent waves scale up (50, then 100, then 200+ VMs per wave) as the runbook proves reliable, with the full 1,000-VM program realistically spanning several months once dependency clusters and validation rigor are accounted for, not compressed into a few weeks regardless of team size.
Trade-offs & pitfalls. Sizing the pilot wave too large (to "make faster progress") defeats its actual purpose, which is cheaply surfacing problems with the TOOLING and RUNBOOK before they're applied at scale; a pilot that's already large enough to be operationally painful if something goes wrong isn't really a pilot.
Create a set of KPIs and success metrics for a migration program (program-level and per-application). Include at least eight metrics covering timeline, quality, cost, performance, and operational readiness, and explain how you'd collect and present them to executives weekly.
Sample Answer
Direct answer: A migration program's KPI set needs to cover timeline, quality, cost, performance, and operational readiness at both the program level and the per-application level, with each metric collected automatically where possible (not manually compiled under time pressure each week) and presented to executives as a trend, not just a snapshot.
Structured elaboration (at least eight metrics). Timeline: (1) percentage of applications migrated against the planned schedule (waves completed vs. planned), (2) average time-per-wave trend (is the team getting faster or slower as the program progresses, a useful leading indicator). Quality: (3) rollback rate (percentage of cutovers requiring rollback, a direct signal of process quality), (4) post-migration incident count/severity within a defined stabilization window per application. Cost: (5) actual vs. estimated migration cost (per application and cumulative program-wide, since cost overrun patterns often show up gradually and are easy to miss without an explicit running comparison), (6) post-migration steady-state infrastructure cost vs. pre-migration cost (validating the migration is actually delivering the cost benefit it was justified on). Performance: (7) latency/error-rate delta versus pre-migration baseline per migrated application (aggregated into a program-level "percentage of applications meeting or beating baseline performance" metric). Operational readiness: (8) percentage of migrated applications with a validated, current runbook and a trained on-call team, since this is the metric most likely to be silently skipped under program time pressure and most likely to cause pain later if it is. How to collect and present them weekly to executives: automate collection wherever the underlying data already exists in monitoring/ticketing systems (rollback events, incident counts, cost data from billing APIs) rather than relying on manual weekly compilation, which both wastes engineering time and is prone to becoming stale or inconsistent; present as TRENDS over the program's timeline (a chart showing rollback rate over the last 10 waves, for instance) rather than a single current-week snapshot, since executives evaluating a multi-wave program need to see whether things are improving or degrading, not just where things stand this week.
Worked example. A weekly executive dashboard: a timeline burn-down chart (waves completed vs. planned), a cost-variance trend line (actual vs. estimated, cumulative), a quality scorecard (rollback rate and incident count trend over the last 8 weeks), and an operational-readiness gauge (percentage of migrated apps with current runbooks and trained on-call), each pulling from an automated data source (the migration tracking system, the incident-management system, the cloud billing API) rather than a manually-updated spreadsheet that someone has to remember to refresh every Friday.
Trade-offs & pitfalls. Reporting only timeline and cost metrics (the two executives most reflexively ask about) while omitting quality and operational-readiness metrics is a common gap that lets a program LOOK successful (on schedule, on budget) while quietly accumulating technical and operational debt (rushed cutovers, under-trained on-call teams) that surfaces as a wave of incidents well after the program is declared complete.
For a transactional relational database with strict referential integrity and compliance requirements, compare migration approaches: homogeneous replication, dual-write with reconciliation, change-data-capture (CDC) with cutover, and offline migration with an application freeze. Recommend a detailed approach and justify how you will preserve integrity, handle foreign keys, minimize downtime, and provide auditability.
Sample Answer
Direct answer: For a database with strict referential integrity and compliance requirements, change-data-capture (CDC) with a controlled cutover is generally the strongest default: it minimizes downtime while preserving transactional order, and unlike dual-write, it doesn't require the application itself to coordinate two simultaneous writers.
Structured elaboration
Homogeneous replication (native database replication, e.g., MySQL replication or PostgreSQL streaming replication to a cloud target): strongest integrity guarantees since it's the database engine's own replication mechanism, but only works when source and target are the same engine, and typically requires network connectivity and version compatibility between on-prem and cloud that can be operationally awkward to set up securely.
Dual-write with reconciliation (application writes to both old and new databases simultaneously during a transition period): gives the most control over cutover timing (no replication lag to drain since both are being written in real time), but is the riskiest for referential integrity: if one write succeeds and the other fails, the two databases diverge, and reconciling that divergence for a system with strict FK constraints and compliance requirements (where an inconsistency isn't just a data-quality issue but a potential audit finding) is genuinely hard to get right; this approach should generally be avoided for exactly this workload profile unless there's no alternative.
Change-data-capture (CDC) with cutover: reads the source database's transaction log and replays changes to the target, preserving transaction order (critical for maintaining referential integrity across related tables) without requiring the application to write twice; the cutover is a short window to drain the final replication lag, stop writes to the source, verify parity, and repoint the application. This is the strongest option for this workload: it preserves ordering and integrity guarantees close to the database's own consistency model, without dual-write's coordination risk.
Offline migration with an application freeze: simplest and safest for integrity (nothing is changing during the migration, so there's no divergence risk at all), but the downtime is the migration duration itself, which is often unacceptable for a system with real-time compliance obligations (audit logging, transaction processing) that can't simply pause.
Justifying the recommendation. CDC with cutover: preserves integrity via ordered replay (foreign-key-related changes replay in the same order they were committed, so referential integrity is never violated mid-replication); handles FKs correctly because it's replaying actual committed transactions, not independently-computed writes that could race; minimizes downtime to the final lag-drain window (typically seconds to low minutes for a well-tuned CDC pipeline); provides auditability by design, since the CDC pipeline itself is a log of exactly what changed and when, which compliance teams can review as evidence the migration didn't silently alter data.
Worked example. A payments database migration: enable CDC (e.g., log-based replication reading the database's write-ahead log), let it run for days while validating parity via periodic checksum comparison on a sample of tables, then during the cutover window: pause new writes to the source (typically via an application-level flag or a brief maintenance mode), wait for replication lag to hit zero (confirmed via the CDC tool's lag metric), do a final full-table checksum comparison, then repoint the application's connection string. Total application-facing downtime: the pause-to-repoint window, typically single-digit minutes even for a large database, versus hours for an offline freeze-and-migrate approach.
Trade-offs & pitfalls. Dual-write's appeal (no CDC infrastructure needed, feels simpler to reason about) is a trap for exactly this workload profile: the coordination failure mode (one write succeeds, the other doesn't) is precisely what strict referential integrity and compliance requirements can't tolerate, and "reconcile it after the fact" isn't a real answer when the reconciliation itself has to be auditable.
Describe a practical, repeatable framework you would use to prioritize workloads for migration across an enterprise portfolio. Include technical and business criteria, how you'd score or weight them, how to include dependency and risk, and an example of how that prioritization changes across pilot, early waves, and later waves.
Sample Answer
Direct answer: A repeatable prioritization framework scores each workload on two independent axes, business value and migration complexity/risk, then sequences waves to front-load low-complexity/high-learning applications before tackling high-value, high-risk ones once the process is proven.
Structured elaboration. Technical criteria: dependency count and coupling tightness (more dependencies = harder to isolate for a wave), data volume and sensitivity, current infrastructure age/support risk (an unsupported OS is a forcing function), and technical migration effort (does an obvious managed-service or lift-and-shift path exist, or does it need bespoke work). Business criteria: revenue/criticality impact if something goes wrong, compliance exposure, and stakeholder appetite for near-term change (some business units are more risk-tolerant than others). Scoring: a simple 1-5 scale per criterion, weighted (business criticality often weighted higher than raw technical effort, since the cost of a botched migration on a critical app dwarfs the engineering time saved on an easy one), summed into two composite scores: business value and migration risk. Dependency and risk inclusion: any application with high fan-in/fan-out dependency count (fan-in = how many other systems depend on it; fan-out = how many other systems it depends on) gets an automatic risk bump regardless of its own technical simplicity, since its blast radius on failure is larger than its own footprint suggests.
Worked example. Plot every application on a 2x2 of business value vs. risk. Pilot wave: low-risk, low-to-medium value apps (proves the migration process cheaply). Early waves: low-risk, high-value apps (captures value fast while the process is still being refined) plus a few medium-risk apps to stress-test the process before the hardest work. Later waves: high-risk applications regardless of value, since by then the team has the most operational experience, and high-risk/low-value apps are re-examined for Retire instead of migrating them at all.
Trade-offs & pitfalls. The common mistake is sequencing purely by technical ease, which defers the highest-business-value applications indefinitely and never proves the process against real complexity until the deadline is close; the framework above deliberately forces some medium-risk exposure into the early waves specifically to avoid that trap.
Tell me about a cloud migration you led or participated in. Specify the public cloud provider(s) used (AWS/Azure/GCP), the concrete services and patterns you chose for compute, storage, networking and managed databases, your role in architecture and deployment, and measurable results (for example: latency reduction, cost delta, availability improvement, deployment frequency). Include any follow-up training or certifications that supported your work.
Sample Answer
Direct answer: The strongest version of this story names the specific cloud provider and concrete services/patterns chosen (not a vague "we moved to the cloud"), explains the candidate's actual role in architecture and execution decisions, and closes with measurable, specific results rather than a general "it went well."
Structured elaboration. Public cloud provider(s) used: name it specifically (AWS/Azure/GCP), since a vague answer here is often an early signal to an interviewer that the rest of the story may also lack specificity. Concrete services and patterns for compute, storage, networking, and managed databases: name actual services for all four, not just the ones that come to mind first (networking in particular is easy to skip since it's less visible than compute or storage) (e.g., "we moved a fleet of on-prem VMs to EC2 behind an Application Load Balancer, provisioned a new VPC with public/private subnet segmentation mirroring our existing security zones and per-tier security groups, ran a temporary Site-to-Site VPN back to the on-prem data center specifically to carry replication traffic during the migration window, migrated the database to RDS PostgreSQL via DMS (Database Migration Service) with change-data-capture (CDC)-based replication for a near-zero-downtime cutover, and moved file storage to S3") rather than generic category names, since specificity here is what lets an interviewer probe deeper and distinguish real hands-on experience from a surface-level description. Role in architecture and deployment: be honest and specific about scope (did the candidate design the migration strategy, execute a specific piece of it, lead the team, or contribute as an individual engineer on a defined workstream); overstating scope tends to unravel under a good interviewer's follow-up questions about decisions the candidate claims to have made. Measurable results: latency reduction (with actual before/after numbers if remembered, even approximate), cost delta (a concrete percentage or dollar figure, understanding this may be approximate from memory but should still be a real number, not "it was cheaper"), availability improvement (a specific uptime or incident-rate change), deployment frequency (if relevant, how release cadence changed post-migration due to new CI/CD capability). Follow-up training or certifications: mentioning relevant certifications or continued learning shows the migration wasn't a one-off task but built lasting capability, which is a positive signal beyond the migration itself.
Worked example. A strong answer: "I was the lead engineer on migrating our order-processing service from on-prem VMware to AWS. We used EC2 with an ALB for the application tier, a new VPC with private subnets for the application and database tiers and a temporary Site-to-Site VPN back to our on-prem datacenter to carry DMS replication traffic securely during the migration window, RDS PostgreSQL with DMS-based CDC replication for the database (targeting near-zero downtime), and moved file storage to S3 with a dual-write period during transition. I owned the database migration and cutover plan specifically, while a colleague led the application-tier work. Post-migration, we measured a 30% reduction in p99 latency (mostly from moving off aging on-prem hardware to modern instance types), a roughly 20% reduction in infrastructure cost after right-sizing, and we went from monthly to weekly deploys once we had the new CI/CD pipeline in place. I got my AWS Solutions Architect Associate certification during the project, partly to make sure I understood the platform deeply enough to make good calls during cutover."
Preparing one story for several framings. The same underlying migration experience gets probed from several different angles across a real interview loop, and it is worth preparing one well-detailed story that can flex to answer each: sometimes the ask is this general "walk me through a migration" framing; sometimes it is narrower, "tell me about a time you had to convince skeptical stakeholders to adopt a particular migration approach," which wants the persuasion and technical-evaluation angle foregrounded instead of the end-to-end summary; and sometimes it is "tell me about a time priorities shifted mid-migration," which wants the adaptability and communication angle foregrounded. Rehearsing the same real project along all three angles, rather than having only one fixed narration of it, means a candidate isn't caught flat-footed when the interviewer's specific phrasing doesn't match the version they rehearsed.
Trade-offs & pitfalls. A common weak version of this answer stays at the category level ("we moved to managed services and it was faster and cheaper") without naming specific services, specific numbers, or a specific role; interviewers use exactly this kind of question to distinguish candidates who did hands-on migration work from those who were adjacent to a project without deep involvement, and specificity is the main signal that separates the two.
Unlock Full Question Bank
Get access to hundreds of Cloud Migration Strategy and Execution interview questions and detailed answers.
Sign in to ContinueJoin thousands of developers preparing for their dream job.