Ten minutes after a deploy, 500 errors jump from 0.1% to 8% on the main API. Walk through how you handle the incident.
What the interviewer wants to hear
- Mitigate first: roll back or disable the feature flag
- Communicate status to the team and stakeholders
- Use metrics, logs and traces to find the failing path
- Compare the deploy diff, including config and migrations
- Confirm recovery with metrics before closing
- Run a blameless postmortem with follow-up actions
Model answer
My first goal is to stop the damage, not to find the root cause. Because the spike started right after a deploy, I roll back to the previous version or turn off the feature flag, and I post in the incident channel who is leading and what we are doing. One catch: if the deploy included a database migration, I check that the old code still works with the new schema before rolling back. Once error rates recover, I investigate using the dashboards, the error tracker’s grouped stack traces and distributed traces for failing requests, filtering by endpoint and region. I compare the diff, including environment variables, dependency upgrades and migrations, and reproduce the issue in staging. After the fix ships safely, I write a blameless postmortem covering the timeline, impact, root cause and actions, such as better tests, canary deploys or an alert that would have fired sooner.
Can you answer it under time pressure?
Take a timed hard round and get scored on every answer.
More hard Full Stack Developer questions
- You are building a multi-tenant B2B SaaS app. How would you design data isolation between tenants, and what are the trade-offs?
- Your app works well for 1,000 users. Traffic is expected to grow to 1 million users. How would you prepare the system, and in what order?
- An order flow touches your database, a payment provider and an email service. How do you keep the system consistent when any step can fail?
- You need to split a large users table column "name" into "first_name" and "last_name" on a table with 50 million rows, with no downtime. Walk through your plan.
- For a large e-commerce site in Next.js, how would you choose the rendering and caching strategy for the home page, product pages, cart and account pages?
- Design an e-commerce checkout end to end: cart, payment with a provider like Stripe, inventory and order confirmation. What can go wrong and how do you make it reliable?
- Your startup’s Next.js monolith is growing and some engineers want to split it into microservices. How do you decide, and what would you do?
- Customers need to import CSV files with up to two million rows into your app. Design the feature end to end.
- You are opening your product’s API to outside partners. How do you design authentication, authorization, rate limiting and change management for it?