Domain Interview Questions 2026
149 Domain interview questions from Accenture, Infosys, TCS, Razorpay, Stripe, Oracle, Adobe, Apple, Amazon, Google, Microsoft, Flipkart, Swiggy, Meta, Netflix, Uber, Airbnb, PhonePe, Paytm, Zomato, Salesforce, LinkedIn, Atlassian, Capgemini, PayU, General, Anthropic, OpenAI, TikTok, Deloitte, Capital One, Canva, JPMorgan, Walmart, Cognizant, Siemens, Spotify, DoorDash, Grab, Shopify, Revolut, SAP, Wipro and more. Real questions from Technical, System Design, and HR rounds.
All Domain Questions
Design a data pipeline to ingest CDC (Change Data Capture) events from a MySQL database into a Snowflake data warehouse in near real-time.
Design a serverless ETL pipeline on AWS that processes files uploaded to S3 and loads them into Redshift.
Design an AI content moderation system for a social platform with 10 million daily posts. How do you balance accuracy, cost, and latency?
Your React app initial load time is 8 seconds. Users complain it is too slow. Walk me through your optimization strategy.
You need to run a DAG that processes 10,000 files daily — one task per file. How do you design this in Airflow without creating 10,000 static tasks?
How would you reduce the latency of a RAG pipeline from 4 seconds to under 1 second in production?
Your RDS MySQL database is becoming a bottleneck. Read queries are slow. How do you scale it on AWS without re-architecting the entire application?
Your PySpark job has data skew on a join key (user_id) where 1% of users account for 60% of the data. How do you handle it?
A React dashboard with 20 charts re-renders every time any filter changes, causing a 3-second lag. How do you optimize it?
You have a 10TB Snowflake table queried daily by 50 analysts with very different filter patterns. How do you optimize it?
Our RAG pipeline responses are accurate in staging but hallucinate in production on long user queries. Walk me through how you debug and fix this.
A list of 50,000 items renders in a React component. Users scroll and experience jank. How do you fix it without pagination?
You have a Spark job that ingests 500GB of clickstream data daily. It is failing with OOM errors on the executor. How do you debug and fix it?
Your Snowflake query is slow even with a large warehouse. How do you investigate and optimize it?
What is the difference between useMemo and useCallback? Give concrete examples of when each actually helps vs. when it hurts.
Your application on EC2 experiences a spike to 10x normal traffic every Friday at 6 PM. How do you architect for this predictable load?
Predict the output of this code: console.log(1); setTimeout(() => console.log(2), 0); Promise.resolve().then(() => console.log(3)); console.log(4); Explain the event loop mechanism that determines this order.
Your fine-tuned LLM performs well on your eval set but users report degraded responses 2 weeks after deployment. What is happening and what do you do?
How do you prioritize a backlog when you have 50 features requested by 10 different stakeholders?
Your team discovers that 20% of user_id values in the orders table do not match any record in the users table. How do you handle this as a data engineer?
You have a streaming PySpark job reading from Kafka that processes IoT sensor events. Events can arrive up to 10 minutes late. How do you handle late data correctly?
Your Airflow DAG that runs at midnight has been running for 6 hours and is still not complete. SLA breached. What do you do and how do you prevent it next time?
Customer support tickets increased by 40% after a recent product release. How do you approach root cause analysis as a BA?
What is the difference between String, StringBuilder, and StringBuffer in Java? When would you use each? Explain immutability, thread safety, performance implications, and give an example where using String in a loop causes excessive object creation.
You are building an AI agent that books travel. It has access to 6 tools. How do you prevent it from calling tools in the wrong order or entering infinite loops?
What is React 19 use() hook and how does it change async data fetching compared to useEffect?
Implement Promise.allSettled from scratch without using the native method. Then explain the difference between Promise.all, Promise.allSettled, Promise.any, and Promise.race — give a concrete payment flow example for when you would use each.
Your development team says a feature will take 6 sprints. Your stakeholder wants it in 2 sprints. How do you handle this?
Explain the reconciliation algorithm in React. How does React decide which DOM nodes to update when state changes? What is the role of the key prop and what happens when you use an array index as a key versus a stable unique ID?
Your pipeline SLA requires data to be available in the warehouse by 6 AM. Yesterday it missed at 7:30 AM. Walk me through your incident response.
How does Airflow handle backfilling? Design a DAG that safely backfills 90 days of missing data without overloading the database.
Explain Snowflake multi-cluster architecture. How does it handle concurrency, and what is the difference between a Virtual Warehouse and the Cloud Services layer?
You are a BA on a project where stakeholders from Finance, Operations, and IT all have conflicting requirements. How do you resolve this?
What are the SOLID principles? Explain each with a real-world Java example. Then describe a scenario where rigidly following SOLID leads to over-engineering, and how you balance pragmatism with good design.
You launch a feature and metrics show only 8% adoption in the first month. How do you diagnose and respond?
You need to join a 500GB transaction table with a 5MB lookup table (country codes). The join is taking 20 minutes. How do you fix it?
Explain how ARC (Automatic Reference Counting) works in Swift/Objective-C. What is a retain cycle and how do you break one? Give an example using a delegate pattern and explain when to use weak vs unowned references.
What will the following code output and why? const obj = { x: 10 }; const fn = () => console.log(this.x); obj.fn = fn; obj.fn(); Now rewrite fn as a regular function. How does the output change and what is the reason?
A query that previously completed in 2 minutes now takes 20 minutes. Describe your systematic approach to troubleshooting and optimizing performance in Snowflake.
Explain the Java Memory Model. What are heap and stack? How does garbage collection work? Describe generational GC (Young, Old, Metaspace), GC roots, mark-and-sweep, and how to diagnose memory leaks with tools like VisualVM or jmap.
What is the difference between RANK(), DENSE_RANK(), and ROW_NUMBER()? Give a real use case for each.
Explain Oracle's MVCC (Multi-Version Concurrency Control) and how it enables consistent reads without blocking writers. How does it differ from SQL Server's locking approach? What are the downsides of MVCC (undo log growth, long-running transactions)?
Implement a debounce function from scratch in JavaScript. Then explain where you would use debounce vs throttle in a payment checkout flow — for example on a search input, a "Pay Now" button, and a scroll event handler.
A payment API call must retry up to 3 times on network failure, with exponential backoff (1s, 2s, 4s delays) between attempts. Implement a retryWithBackoff(fn, maxRetries) utility using Promises. Handle the case where all retries fail.
What is Zero-Copy Cloning in Snowflake and when would you use it in a data pipeline?
Midway through a sprint, a high-priority bug from a key enterprise client comes in. The sprint is fully committed. What do you do?
Design an end-to-end data pipeline using Python, PySpark, Snowflake, Airflow, and AWS S3. Explain data flow, orchestration, monitoring, and failure handling.
Explain the difference between zero-shot, few-shot, and chain-of-thought prompting. When would you choose each in production?
What is the difference between an S3 bucket policy, IAM policy, and S3 ACL? Which takes precedence?
You are building a multi-step payment flow: Cart → Address → Payment Method → OTP → Confirmation. Each step has its own data, validation, and API calls. How would you architect state management for this flow in React without Redux? Discuss trade-offs.
What is the difference between narrow and wide transformations in Spark? Why does it matter for performance?
Snowpipe is ingesting duplicate records from cloud storage. How would you detect, prevent, and remediate duplicate data in Snowflake?
What is the difference between Airflow TaskFlow API (@task decorator) and traditional PythonOperator? When would you prefer each?
Build a custom useFetch hook in React that accepts a URL, returns { data, loading, error }, handles component unmount (cleanup), and prevents state updates on an unmounted component. Show the complete implementation.
How do you distinguish between a business requirement, a functional requirement, and a technical requirement? Give an example for an e-commerce checkout.
Design the frontend architecture for a PayU checkout SDK that can be embedded in any merchant website as a script tag. It must render a payment form in an iframe, handle cross-origin communication, support multiple payment methods (card, UPI, netbanking), and work across React, Vue, and plain HTML merchant sites.
What is Time Travel in Snowflake and how does it differ from Fail-Safe?
You need to implement optimistic UI for a "Add to Cart" button in a React e-commerce app. When the user clicks, the UI should update immediately, but revert if the API call fails. How would you implement this pattern without any state management library?
A merchant reports that their checkout page built with your SDK scores 38 on Google Lighthouse. Walk through your systematic debugging process: which Core Web Vitals are likely failing, what tools you would use, and give five concrete optimisations specific to a payment checkout flow.
A production table was accidentally deleted 2 hours ago. How would you recover the data using Snowflake Time Travel?
How do you write a good user story? Walk through an example for a payments feature.
What causes unnecessary re-renders in React, and how can React.memo, useMemo, and useCallback help improve performance?
What are Airflow Sensors and when would you use a FileSensor vs an HttpSensor vs an ExternalTaskSensor?
Compare Streams and Tasks in Snowflake. How do they work together to support Change Data Capture (CDC) workflows?
What is the difference between fail-fast and fail-safe iterators in Java Collections? Give examples of collections that use each, explain the ConcurrentModificationException, and show how to safely remove elements during iteration.
Design and implement a recursive category tree component in React for a merchant product catalogue. The tree can be N levels deep, each node can be expanded/collapsed independently, and the selected path must be highlighted. Clicking a leaf node should emit the full path (e.g. "Electronics > Phones > Android"). Optimise to avoid re-rendering siblings when one node is toggled.
What is the difference between cache() and persist() in Spark? When should you use StorageLevel.MEMORY_AND_DISK?
A client says "the system should be user-friendly." How do you handle this as a BA?
How do you implement custom validation in Spring Boot? Explain the approach using @Constraint and ConstraintValidator, where to place the annotation, and how to return meaningful error messages through BindingResult.
Implement a reusable PaymentForm component in React with fields for card number, expiry, and CVV. Add real-time validation using controlled components: card number must be 16 digits, expiry must be a future month, CVV 3–4 digits. No external libraries.
Your team needs a test environment containing production data without duplicating storage costs. How would you use Zero Copy Cloning and what are its benefits and limitations?
What strategies would you use to improve Core Web Vitals (LCP, FID/INP, CLS) in a React application?
PayU wants to run A/B tests on the checkout button colour and payment method ordering to improve conversion rates. As the frontend engineer, how would you design the experimentation infrastructure: flag evaluation, consistent user bucketing, avoiding layout shift between variants, and measuring the right success metrics?
Compare Temporary, Transient, and Permanent tables in Snowflake. When would each table type be appropriate?
A stakeholder shows you conflicting requirements from two different business units. How do you resolve this?
Explain the difference between a use case diagram and a user story. When would you use each?
What is a gap analysis and how would you conduct one for a company migrating from an old CRM to Salesforce?
Compare Snowpipe and COPY INTO. When would you choose one over the other?
What is the difference between a use case and a user story? When do you use each?
You're gathering requirements for a new feature. The client says 'I want something like Amazon's recommendation system.' How do you handle this vague requirement?
Explain how Stripe handles exactly-once payment processing. A customer clicks "Pay" twice in quick succession. How does Stripe prevent double-charging? Walk through idempotency keys in the API, database-level constraints, and how the client should handle the case where the first request times out.
Implement a LRU (Least Recently Used) cache with O(1) get and put operations. Explain the HashMap + doubly linked list approach and why a simple array or single HashMap is insufficient.
A React application has a slow initial page load. What steps would you take to identify and fix the performance bottlenecks?
A file lands in AWS S3 and must be ingested into Snowflake automatically in near real-time. How would you design the solution? Explain the role of Snowpipe, event notifications, and the ingestion workflow.
Explain the difference between functional and non-functional requirements. Give 5 examples of each for a banking application.
What is multithreading in Java? Explain synchronised keyword, wait/notify, and the difference between Thread and Runnable. Write a simple producer-consumer implementation using BlockingQueue.
Compare Time Travel and Fail-safe in Snowflake. What are the key differences and use cases for each?
Write a SQL query to find the Nth highest salary from an Employee table without using LIMIT/TOP. Then solve it with a window function (DENSE_RANK) and explain which is more portable across Oracle, PostgreSQL, and MySQL.
A component renders hundreds of items and users experience UI lag. How would you investigate and optimize the rendering performance?
Explain iOS memory management: ARC, strong/weak/unowned references, retain cycles. How does the system handle memory pressure? Walk through what happens when an app receives a memory warning and is then terminated.
What are design patterns? Explain Singleton, Factory, and Observer patterns with Java code examples. In which Spring Boot components are these patterns used internally?
Explain Spring Boot auto-configuration. How does @SpringBootApplication work under the hood? What is the difference between @Component, @Service, @Repository, and @Controller in Spring?
A critical table was dropped 10 days ago and the Time Travel retention period has expired. What recovery options are available? Explain how Fail-safe works and its limitations.
Explain REST API best practices. What makes an API RESTful? Cover: proper use of HTTP verbs, status codes, versioning strategies (/v1/users vs Accept header), pagination (cursor vs offset), and HATEOAS.
Explain how a browser renders a web page from the moment the user presses Enter. Cover: DNS resolution, TCP handshake, HTTP request, HTML parsing, CSSOM, render tree, layout, paint, and compositing. Where would you optimise for Core Web Vitals?
Explain Netflix's Chaos Engineering philosophy and the Simian Army. How do you design a system to be resilient to random instance failures, network partitions, and zone outages? Give a concrete example.
Explain the difference between synchronous and asynchronous API design using Stripe as an example. When does a charge complete immediately vs require a webhook? How do you handle the intermediate "pending" state in your database?
Design a coupon/discount system for Flipkart Big Billion Days. The system must validate, apply, and prevent double-use of millions of coupons with high concurrency. Cover idempotency and distributed locking.
Explain how React's virtual DOM diffing algorithm (reconciliation) works. Why is it O(n) instead of O(n3)? What are the assumptions it makes and when do those break down (causing performance issues)?
How do you implement a distributed ledger for financial transactions? Explain double-entry bookkeeping in code, why you never update a balance directly, and how you use event sourcing to reconstruct the current balance from a transaction log.
LinkedIn uses Kafka extensively. Explain how you would design the Kafka topic structure for LinkedIn's activity events (profile view, connection request, message sent). Cover: topic naming, partitioning strategy, consumer group design, and exactly-once semantics.
Write a SQL query to find the second highest salary from an Employee table. Show at least two approaches: using LIMIT/OFFSET, using a subquery with MAX, and using DENSE_RANK(). Discuss which is most efficient and why.
What is the circuit breaker pattern? Explain the three states (Closed, Open, Half-Open), when to trip and reset the breaker, and how Netflix's Hystrix library implements it. When would you NOT use a circuit breaker?
Explain how PhonePe handles transaction deduplication. A user taps "Pay" twice due to network lag. The same debit must not happen twice. Walk through idempotency at the API level, database level, and bank integration level.
Explain the difference between ArrayList and LinkedList in Java. For a TCS banking project, you need to insert records at the front of a list frequently. Which would you choose and why?
What is the difference between checked and unchecked exceptions in Java? When should you use each? Explain the exception hierarchy and best practices for custom exceptions in a Spring Boot REST API.
Uber uses H3 hexagonal geospatial indexing. Explain why hexagons are better than squares or lat/lng grids for proximity searches. How do you find all drivers within 2km of a rider using H3 resolution levels?
Explain the difference between raster and vector image formats. How does Adobe Photoshop store a PSD file differently from Illustrator's AI format? Discuss lossy vs lossless compression and when you would choose PNG vs JPEG vs WebP.
Explain PCI-DSS compliance requirements for handling card data. What is tokenisation? How does Stripe use it to ensure raw card numbers never touch customer servers? What are the implications for your API design?
What techniques can be used to optimize images in React or Next.js applications for better performance?
Explain the difference between HashMap and ConcurrentHashMap in Java. When would you use each? Describe segment locking in Java 7 vs the CAS-based approach in Java 8+, and why you should never use HashMap in a multi-threaded context.
How does Airbnb's dynamic pricing work? Given historical booking data, seasonality, local events, and competitor prices, how do you recommend a nightly rate that maximises host revenue? Discuss the ML pipeline.
Explain the UPI payment flow end-to-end: from user entering a VPA to money credited. What is NPCI's role? What happens when the beneficiary bank is down? How does Razorpay handle UPI collect vs UPI intent flows?
Explain Oracle's redo log and undo log. How do they work together to provide crash recovery and read consistency? Walk through what happens when a transaction commits, then the server crashes, then restarts.
Explain async/await in JavaScript. How does it differ from Promise chaining? Write a function that fetches data from three APIs in parallel (Promise.all) and one after another (sequential await). When would you choose each?
How does LinkedIn's "Who viewed your profile" feature work? What data is stored, how long is it retained, and how do you provide the feature to free users (last 5 viewers) vs Premium (full list) without exposing premium-only data?
Implement a rate limiter for Swiggy's API gateway using the token bucket algorithm. Handle 1000 requests/second per user. Code the solution and explain how you'd deploy it across multiple API servers with Redis.
Implement a basic version of Adobe Lightroom's non-destructive editing model. All edits (brightness, contrast, crop) are stored as a list of operations, not applied to the original image. Explain the data structure and how you apply/undo operations.
How would you optimize the loading of third-party scripts such as analytics, chat widgets, or advertising libraries?
Explain the difference between process and thread in Windows. What is a fiber? Describe how the .NET thread pool works and when you would use async/await vs raw Thread vs ThreadPool.
Design the data model for Swiggy's menu system. A restaurant has categories, items, add-ons, variants, and availability windows (breakfast/lunch/dinner). How do you model this in PostgreSQL and handle real-time menu updates?
What is Salesforce's SOQL and how does it differ from SQL? Explain relationship queries (parent-to-child and child-to-parent), the 100-SOQL governor limit, and how you optimise queries to avoid hitting it.
Explain Amazon's DynamoDB single-table design pattern. Why do you put multiple entity types in one table? Walk through a real example with access patterns, partition key / sort key design, and GSI usage.
Explain Paytm's mini-app platform architecture. Third-party developers build apps that run inside the Paytm super-app. How do you sandbox them (security), manage their lifecycle, share user identity safely (OAuth), and handle payments on their behalf?
Explain Salesforce's metadata-driven architecture. Why does storing field definitions as data (instead of schema changes) enable the multi-tenant model? What are the trade-offs in query performance?
What are resource hints such as preload, prefetch, and dns-prefetch? Explain when you would use each of them.
How does Paytm's QR code payment work technically? Explain the difference between static QR (merchant VPA encoded) and dynamic QR (amount pre-filled). What are the security implications of each?
Explain Zomato's restaurant onboarding data pipeline. A new restaurant submits menus, photos, and operating hours. How do you validate, normalise, and make this data searchable within minutes of submission?
Explain Oracle RAC (Real Application Clusters). How do multiple nodes access the same database storage? What is the Cache Fusion protocol? When would you choose RAC over a primary-replica setup?
Explain how Jira's JQL (Jira Query Language) parser works. Walk through lexing, parsing, and AST generation. How do you translate a JQL query like "assignee = currentUser() AND status = Done" into an efficient SQL query?
Explain the difference between JDK, JRE, and JVM. How are they related? Describe the JVM internals: class loader, bytecode verifier, interpreter, JIT compiler, garbage collector, and how they work together to run a Java program.
How does Core Data work in iOS? Explain the managed object context, persistent store coordinator, and the fetch request pipeline. When would you use Core Data vs Realm vs SQLite directly?
What is eventual consistency and why is it acceptable for some PhonePe features but not others? Give examples: where strong consistency is mandatory (debit/credit) vs where eventual consistency is fine (notification delivery, analytics).
How does Zomato calculate a restaurant's "delivery fee"? The fee depends on distance, demand, time of day, and partner availability. Implement a pricing function given these inputs and discuss fairness trade-offs.
How do you handle transactions in Spring Boot? Explain the @Transactional annotation, propagation levels (REQUIRED, REQUIRES_NEW, NESTED), isolation levels, and how Spring proxies intercept methods — including why self-invocation bypasses the proxy.
What is the difference between async and defer attributes in JavaScript? When would you use each one?
Explain the difference between a payment gateway, payment processor, and acquiring bank. How does money actually move when a customer pays with a credit card on a Razorpay-powered checkout? Walk through each hop end to end.
Explain how font rendering works at the operating system level. How does Adobe handle vector-to-raster conversion (hinting, anti-aliasing) for different DPI screens? Why do fonts look different on Windows vs macOS?
What is Critical CSS, and how does it improve page load performance in React applications?
Design a multi-tenant database architecture for a CRM SaaS product with 100,000 customers, where each customer's data must be strictly isolated but the schema is largely shared. Compare separate databases per tenant vs. shared schema with a tenant_id column.
How would you optimize video delivery in a web application to reduce load times and improve user experience?
How does adding + "" help convert a char value into a String in Java? Explain Java's string concatenation rules, why char + "" produces a String while char + char produces an int, and alternative approaches like String.valueOf(char) or Character.toString(char).
What is the purpose of the indexOf() method and how can it be used when removing duplicate characters from a string in Java? Walk through an O(n) solution using a LinkedHashSet or boolean array.
A retail client's logistics costs have grown 22% year-over-year while revenue grew only 8%. Walk through how you would structure your analysis to identify the drivers and recommend where to cut cost first.
Design the data model for a Kanban board (like Trello/Jira) supporting boards, columns, and cards, where cards can be reordered within and across columns efficiently without renumbering every card on each move.
A consumer electronics client is considering entering the Southeast Asian market. What are the first three questions you would ask before building any financial model?
How would you design a feature that needs user location data for a core function, while minimizing what leaves the device and remains fully functional if the user denies location permission?
In C#, what is the difference between Task.Wait() and await? Why does calling .Wait() on the UI thread risk a deadlock in a way that await does not?
In Swift, what is the difference between DispatchQueue.main.async and DispatchQueue.main.sync, and why can calling .sync from the main thread deadlock your app?
Practice these questions with AI feedback
Get instant grading on your answers, identify your weak areas, and generate a personalised 14-day study plan — all free.
Build my study plan →